A feladathoz tartozó host kód a `primitives/Histogram.cpp` fájlban található.
@ -87,13 +87,13 @@ hisztogram számtást!**
A futási időkből látszik, hogy a lokális memóriát használó kernel minden értékkészletre gyorsabb, viszont a lokális és globális kernelek is gyorsabban futnak, ha ez az értékkészlet nagyobb.
## Összegzés redukcióval
## 2. Összegzés redukcióval
A feladathoz tartozó host kód a `primitives/ReduceAdd.cpp` fájlban található. Az implementáció során a programs.cl forrásfájl pszeudokódja alapján dolgoztam, és feltételeztem, hogy a tömb mérete legfeljebb a workgroup megengedett maximális mérete.
## Exkluzív prefix összeg scan operátorral
## 3. Exkluzív prefix összeg scan operátorral
A feladathoz tartozó host kód a `primitives/ExclusiveScan.cpp` fájlban található.
A feladathoz tartozó host kód a `primitives/ExclusiveScan.cpp` fájlban található. Az implementáció során a programs.cl forrásfájl pszeudokódja alapján dolgoztam, kicsit módosítva azt egy plusz barrier hozzáadásával a FOR ciklusban;
```
ID := get_global_id(0)
@ -105,9 +105,12 @@ data[ID] = VAL
FOR s = 1; s <get_global_size(0);s*=2DO:
tmp := data[ID]
BARRIER
IF ( ID + s <get_global_size(0)THEN
data[ID + s] += tmp;
BARRIER
IF(ID = 0) THEN data[ID] = 0;
```
```
A 2. feladathoz hasonlóan itt is feltételeztem, hogy a tömb mérete legfeljebb a workgroup megengedett maximális mérete.