84 ++m_nb_loop_parallel_for;
85 m_nb_chunk_parallel_for += s.
nbChunk();
91 Int64 nbLoopParallelFor()
const {
return m_nb_loop_parallel_for.load(); }
92 Int64 nbChunkParallelFor()
const {
return m_nb_chunk_parallel_for.load(); }
93 Int64 totalTime()
const {
return m_total_time.load(); }
97 std::atomic<Int64> m_nb_loop_parallel_for = 0;
98 std::atomic<Int64> m_nb_chunk_parallel_for = 0;
99 std::atomic<Int64> m_total_time = 0;
122 m_nb_byte += mem_info.m_nb_byte;
123 m_nb_call += mem_info.m_nb_call;
139 m_nb_fault += mem_info.m_nb_fault;
140 m_nb_call += mem_info.m_nb_call;
145 Int64 m_nb_fault = 0;
149 enum class eMemoryTransferType
154 enum class eMemoryPageFaultType
162 void addMemoryTransfer(eMemoryTransferType type,
Int64 nb_byte)
164 MemoryTransferInfo mem_info{ nb_byte, 1 };
165 m_managed_memory_transfer_list[(int)type].merge(mem_info);
167 const MemoryTransferInfo& memoryTransfer(eMemoryTransferType type)
const
169 return m_managed_memory_transfer_list[(int)type];
171 void addMemoryPageFault(eMemoryPageFaultType type, Int64 nb_byte)
173 MemoryPageFaultInfo mem_info{ nb_byte, 1 };
174 m_managed_memory_page_fault_list[(int)type].merge(mem_info);
176 const MemoryPageFaultInfo& memoryPageFault(eMemoryPageFaultType type)
const
178 return m_managed_memory_page_fault_list[(int)type];
183 void print(std::ostream& ostr)
const;
188 FixedArray<MemoryTransferInfo, 2> m_managed_memory_transfer_list;
191 FixedArray<MemoryPageFaultInfo, 2> m_managed_memory_page_fault_list;
Information on page faults on CPU or GPU.