Citiraj:
Autor syss
a šta je to što cuda ili opencl nemre napraviti, a intel cpu može (i to drastično sporije)?
|
Ako smo svjesni da pricamo o paralelizaciji, nemoj zaboraviti da OpenCL odnosno Cuda nose jako velike overheadove i latencije (primarno zbog nacina spajanja, odnosno samog PCI-E).
Takodjer, konkretno ti mogu reci za OpenCL kako zahtijeva vrlo specifican nacin programiranja s poznavanjem hardvera na kojem radis inace mozes fasovati velike penale. Uz to, nemoj zaboraviti da bas zbog overheada i latencije, OpenCL (odnosno GPU) radi losije nego CPU. To ti se najbolje vidi u AVX(2) optimiziranim kompajlerima ili jos bolje, cistom assemblyju, gdje s novim generacijama procesora radis strasne stvari...
OpenCL/CUDA su super price, ali nemoj zaboraviti da je GPU poprilicno gluplji i konceptualno nazadniji nego bilo koji danasnji CPU. Recimo, cak i danas, FPU na nVidia chipovima je inferiorniji nego 8087 FPU, ponajprije jer mu nedostaje prosirena preciznost. Jos su se ovi noviji GPU-ovi u zadnjih par godina donekle i uskladili s IEEE 754, ali sve je to uz 20 stranica disklejmera, upozorenja i preporuka.
Mogao bih ti navesti jos sijaset primjera gdje su OpenCL/CUDA big no-no, ali poanta price je samo ta da imas vrlo odredjenu primjenu tih tehnologija. No tamo gdje imas - rade sjajno!