Chcę napisać program dla GPU (najlepiej OpenCL), a duża część obliczeń polega na zliczaniu liczby 1 w tablicy bitowej (zapakowane jako long lub int).OpenCL: 32-bitowa i 64-bitowa instrukcja popcnt na GPU?
Tak więc, na nowoczesnych procesorach oczywiście używałbym natywnej instrukcji __popcnt. Czytałem w kilku miejscach w Internecie, że nowoczesne GPU, ta instrukcja jest również obecna w sprzęcie, co byłoby dla mnie ogromnym przyspieszeniem. (przynajmniej dla 32-bitów, nie wiem o 64)
Jednak nigdzie nie wiem, jak nam to polecenie. A więc:
1) w jaki sposób powinienem się dowiedzieć, które GPU mają tę instrukcję? (Nadal muszę kupić mój GPU, więc będzie to nowoczesny high-endowy ... prawdopodobnie Radeon HD7000 lub nVidia Kepler)
2) jak nazwać tę instrukcję z OpenCL (lub podobnego języka GPU) ?