tAdded more syncthreads() to contactsearch - sphere - GPU-based 3D discrete ele… | |
git clone git://src.adamsgaard.dk/sphere | |
Log | |
Files | |
Refs | |
LICENSE | |
--- | |
commit 4bd862bc4ff2de3e91848eada8ce04ef62fa2888 | |
parent e2202b0f5f11217657a8a2ee95d01fc5fd562114 | |
Author: Anders Damsgaard <[email protected]> | |
Date: Sun, 30 Sep 2012 21:42:44 +0200 | |
Added more syncthreads() to contactsearch | |
Diffstat: | |
M src/contactsearch.cuh | 5 ++++- | |
1 file changed, 4 insertions(+), 1 deletion(-) | |
--- | |
diff --git a/src/contactsearch.cuh b/src/contactsearch.cuh | |
t@@ -196,6 +196,7 @@ __device__ void findContactsInCell(int3 targetCell, | |
if (findDistMod(&targetCell, &distmod) == -1) | |
return; // Target cell lies outside the grid | |
+ __syncthreads(); | |
//// Check and process particle-particle collisions | |
t@@ -209,6 +210,8 @@ __device__ void findContactsInCell(int3 targetCell, | |
// Make sure cell is not empty | |
if (startIdx != 0xffffffff) { | |
+ __syncthreads(); | |
+ | |
// Highest particle index in cell + 1 | |
unsigned int endIdx = dev_cellEnd[cellID]; | |
t@@ -226,7 +229,7 @@ __device__ void findContactsInCell(int3 targetCell, | |
// Read the original index of particle B | |
unsigned int idx_b_orig = dev_gridParticleIndex[idx_b]; | |
- __syncthreads(); | |
+ //__syncthreads(); | |
// Distance between particle centers (Float4 -> Float3) | |
Float3 x_ab = MAKE_FLOAT3(x_a.x - x_b.x, |