diff --git a/Primitives/primitives.md b/Primitives/primitives.md index 6fa593b..66484f4 100644 --- a/Primitives/primitives.md +++ b/Primitives/primitives.md @@ -134,4 +134,28 @@ IF pred[ID] == 1 THEN data[0] = VALUE ELSE data[prefSum[ID]] = VALUE -``` \ No newline at end of file +``` + +## 5. Időmérés + +Megoldás során a feladatkiírásban megadott kódot használtam. A host kód mérésére szolgáló Timer osztály a Common.cpp állományba került, az OpenCL device kód futási idejének mérésére szolgáló segédfüggvény pedig az OpenCLHandler osztály egyik függvénye lett. A mérés során az alábbi kerneleket, illetve a hozzájuk tartozó host kódot futtattam; + + * Square - 4096 elemű vektor + * Hisztogram 1 - globális, 4096 elemű vektor, 32 elemű értékkészlet + * Hisztogram 2 - lokális, 4096 elemű vektor, 32 elemű értékkészlet + * Redukció - 1024 elemű vektor + * Exkluzív scan - 1024 elemű vektor + * Compact - 1024 elemű vektor + +Az alábbi táblázat a mérési eredményeket szemlélteti; + +| kernel | CPU (ms) | GPU (ms) | +| ----------- | ------ | ------ | +| Square | 1.2394 | 0.006304 | +| Hisztogram 1 | 0.23674 | 0.006432 | +| Hisztogram 2 | 0.2357 | 0.004096 | +| Redukció | 0.01558 | 0.00784 | +| Exkluzív scan | 8.0889 | 0.013184 | +| Compact | 0.17338 | 0.00432 | + +Az eredményekből is látszik, hogy valóban nagy méretű sebességnövekedés érhető el masszív párhuzamosítással. \ No newline at end of file