REDGUY: Jak ktery. Ale vetsinou mas instrukci ktera ti nastavi masky podle nejaky podminky a pak instrukci co je resetne do nejakyho stavu.
v SIMD by to bylo cca takhle (kdyby se tohle odehravalo v jedny lane, takze de facto SIMT prave ala CUDA).
const __m128 treshold = _mm_set_ss(RND_MAX/2);
__m128 acc = _mm_set_ss(0);
for(int i=0; i < ASIZE; i++)
{
// hezky
__m128 datai = _mm_set_ss(data[i]);
__m128 mask = _mm_cmp_ge(datai, treshold);
datai = _mm_and_ps(datai, mask);
acc = _mm_add_ps(acc, datai);
}