32 #include <thrust/device_vector.h>
71 void signal(
const uint32 d = 1) { __threadfence(); atomicAdd( m_cond, d ); }
76 void set(
const uint32 i) { __threadfence(); *(
volatile uint32*)m_cond = i; __threadfence(); }
119 m_conds.resize( count );
120 thrust::fill( m_conds.begin(), m_conds.end(), 0 );
127 uint32* conds = thrust::raw_pointer_cast( &m_conds.front() );
133 void set(
const uint32 value) { thrust::fill( m_conds.begin(), m_conds.end(), value ); }
136 thrust::device_vector<uint32> m_conds;