82 ++m_nb_loop_parallel_for;
83 m_nb_chunk_parallel_for += s.
nbChunk();
89 Int64 nbLoopParallelFor()
const {
return m_nb_loop_parallel_for.load(); }
90 Int64 nbChunkParallelFor()
const {
return m_nb_chunk_parallel_for.load(); }
91 Int64 totalTime()
const {
return m_total_time.load(); }
95 std::atomic<Int64> m_nb_loop_parallel_for = 0;
96 std::atomic<Int64> m_nb_chunk_parallel_for = 0;
97 std::atomic<Int64> m_total_time = 0;
119 m_nb_byte += mem_info.m_nb_byte;
120 m_nb_call += mem_info.m_nb_call;
136 m_nb_fault += mem_info.m_nb_fault;
137 m_nb_call += mem_info.m_nb_call;
142 Int64 m_nb_fault = 0;
146 enum class eMemoryTransferType
151 enum class eMemoryPageFaultType
159 void addMemoryTransfer(eMemoryTransferType type,
Int64 nb_byte)
161 MemoryTransferInfo mem_info{ nb_byte, 1 };
162 m_managed_memory_transfer_list[(int)type].merge(mem_info);
164 const MemoryTransferInfo& memoryTransfer(eMemoryTransferType type)
const
166 return m_managed_memory_transfer_list[(int)type];
168 void addMemoryPageFault(eMemoryPageFaultType type, Int64 nb_byte)
170 MemoryPageFaultInfo mem_info{ nb_byte, 1 };
171 m_managed_memory_page_fault_list[(int)type].merge(mem_info);
173 const MemoryPageFaultInfo& memoryPageFault(eMemoryPageFaultType type)
const
175 return m_managed_memory_page_fault_list[(int)type];
180 void print(std::ostream& ostr)
const;
185 FixedArray<MemoryTransferInfo, 2> m_managed_memory_transfer_list;
188 FixedArray<MemoryPageFaultInfo, 2> m_managed_memory_page_fault_list;
Informations sur les défauts de page sur CPU ou GPU.