From e6416f6c03f085fb5055f86e6e196ed47d238244 Mon Sep 17 00:00:00 2001 From: Cristian C Lalescu <Cristian.Lalescu@mpcdf.mpg.de> Date: Wed, 16 Dec 2020 11:54:26 +0100 Subject: [PATCH] fixes usage of thread local p2p computer --- cpp/particles/p2p/p2p_distr_mpi.hpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cpp/particles/p2p/p2p_distr_mpi.hpp b/cpp/particles/p2p/p2p_distr_mpi.hpp index 34281d61..694cae9a 100644 --- a/cpp/particles/p2p/p2p_distr_mpi.hpp +++ b/cpp/particles/p2p/p2p_distr_mpi.hpp @@ -652,6 +652,7 @@ public: #pragma omp task default(shared) firstprivate(idxPart, nb_parts_in_cell, current_cell_idx) { + computer_class& computer_thread_task = (omp_get_thread_num() == 0 ? in_computer : *computer_for_all_threads[omp_get_thread_num()-1]); const std::vector<std::pair<partsize_t,partsize_t>>* neighbors[27]; long int neighbors_indexes[27]; std::array<real_number,3> shift[27]; @@ -684,7 +685,7 @@ public: diff_y, diff_z); if(dist_r2 < cutoff_radius_compute*cutoff_radius_compute){ - computer_thread.template compute_interaction<size_particle_positions, size_particle_rhs>( + computer_thread_task.template compute_interaction<size_particle_positions, size_particle_rhs>( descriptor.indexes[(idxPart+idx_p1)], &descriptor.toCompute[(idxPart+idx_p1)*size_particle_positions], &descriptor.results[(idxPart+idx_p1)*size_particle_rhs], -- GitLab