Skip to content
Snippets Groups Projects
Commit a14ac6f1 authored by Jean-Matthieu Etancelin's avatar Jean-Matthieu Etancelin Committed by Franck Pérignon
Browse files

Multi-GPU profiling output

parent b4de8ba8
No related branches found
No related tags found
No related merge requests found
......@@ -248,7 +248,11 @@ class MultiGPUParticleAdvection(GPUParticleAdvection):
self._v_n_blocks = self._v_l_buff.nbytes / self._v_block_size
self._s_elem_block = np.prod(self._s_l_buff.shape) / self._s_n_blocks
self._v_elem_block = np.prod(self._v_l_buff.shape) / self._v_n_blocks
print self._v_l_buff.nbytes, self._v_n_blocks, self._v_elem_block
print "MULTI-GPU Communications of size {0}MB, by {1} blocs of {2}MB ({3} width)".format(
self._s_l_buff.nbytes / (1024. * 1024.),
self._s_n_blocks,
self._s_block_size / (1024. * 1024.),
str((self._s_buff_width, self.resol_dir[1], self.resol_dir[2])))
self._evt_get_l = [None, ] * self._s_n_blocks
self._evt_get_r = [None, ] * self._s_n_blocks
self._l_send = [None, ] * self._s_n_blocks
......@@ -842,15 +846,15 @@ class MultiGPUParticleAdvection(GPUParticleAdvection):
self._v_l_buff.base.release(self.cl_env.queue)
def get_profiling_info(self):
for k in [self.copy, self.transpose_xy, self.transpose_xy_r,
self.transpose_xz, self.transpose_xz_r,
self.num_advec,
self.num_remesh,
self.num_advec_and_remesh,
self.num_remesh_comm_l,
self.num_remesh_comm_r,
self.num_advec_and_remesh_comm_l,
self.num_advec_and_remesh_comm_r]:
if k is not None:
super(MultiGPUParticleAdvection, self).get_profiling_info()
if self._is2kernel:
for k in (self.num_remesh_comm_l,
self.num_remesh_comm_r):
for p in k.profile:
self.profiler += p
else:
for k in (self.num_advec_and_remesh_comm_l,
self.num_advec_and_remesh_comm_r):
for p in k.profile:
self.profiler += p
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment