title: cuda threadfence
body: <p>I'm writing a code that must perform an inter-block synchronization (the sum of N dimensions and other memory transfer operations). When I increment the dimension of the problem the result is wrong.</p>
  
  <p>I am making the synchronization with <code>__threadfence()</code> and the first dimensions(N&lt;192) that's ok, but if I insert other <code>__threadfence()</code> in the piece of code, the result is correct for more dimensions. </p>
  
  <p>One <code>threadfence()</code> is not sufficient to synchronize? Aditional, the data result is used in the same block.</p>
  
  <p>In the Programming guide the information indicate that<code>threadfence</code> wait for all memory spaces are ready (shared and global)</p>