KGPU - GPU computing keretrendszer a Linux kernelhez

Címkék

Érdekes projekt a KGPU, amelynek célja, hogy a modern video hardverek processzorait, a GPU-kat afféle társprocesszorként fogja be, hasznosítsa az operációs rendszer számára, levéve egyes számítási feladatok terheit a CPU-ról. A jelenlegi KGPU kiadás azt mutatja be, hogy hogyan lehet a GPU-t segítségül hívni olyan AES titkosításhoz, amelyből az eCryptfs titkosított fájlrendszer profitál. A projekt arról számol be, hogy a KGPU gyorsítást alkalmazó eCryptfs verziójuk sebességben 3-4-szer ver rá a kizárólag CPU-val dolgozó verzióra.

A részletek itt.

Hozzászólások

vajon olyan CPUval mertek, ami tudott AES-t nativan? :)

Szerintem korrekt ötlet csak azt tudnám miért nem OpenCL-t használnak?
Ja, akkor máson is működne mint nVidia kártán? Esetleg mehetne open-source driverrel? ARM-on?

"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee." -- Ted Ts'o

Azért nem OpenCL -t használnak mert erre a célra az nem alkalmas, az nVidia kártyákban meg ott van a CUDA ami erre van, lett sok évvel ez előtt kitalálva. Sajnos a világ még csak most eszmél. Illetve ha nem AES -t natívan támogató procival hasonlították volna össze akkor szerintem nagyobb lenne a különbség (szerintem legalább 2x ekkora)

----
올드보이
http://molnaristvan.eu/

Valószínű azért, mert NVIDIA kártyájuk van. Ebből kifolyólag pedig a CUDA a nyerő választás.
És szintén valószínűleg azért van NVIDIA kártyájuk, mert a projekt egyik résztvevője részt vehet az NVIDIA Graduate Fellowship Programban; azaz valamilyen szinten érdeklődik a cég iránt.

--
The Elder Scrolls V: Skyrim

Akarkit hallottam OpenCL vs CUDA temakorben, mindenki azzal jott, hogy az OpenCL nagyon kiforratlan meg a CUDA-hoz kepest.

Szerk: viszont az OpenCL-nek ketsegtelen elonye lenne, hogy nem lenne az nVidiahoz kotve. Persze, az sem veletlen, hogy igy erolteti a CUDA-t az nVidia, nagyjabol ennyi maradt neki, ami miatt meg nem kezdtek teljesen beszogelni a koporsojat az Intel es az AMD mellett.

----------------
Lvl86 Troll

"nagyjabol ennyi maradt neki, ami miatt meg nem kezdtek teljesen beszogelni a koporsojat az Intel es az AMD mellett."

Erről már csak az Nvidia nem tud az elképesztően sikeres hordozható eszközökbe (smartphone, tablet stb.) szánt system on chip megoldás, azaz a Tegra, a grafikus munkaállomásokban használt Quadro, a dedikált GPGPU-hoz használt Tesla, az integrált alaplapokban használt nForce chipset és a Geforce mellett.

Tájékoztatsd őket kérlek: http://www.nvidia.com/page/contact_information.html

"a grafikus munkaállomásokban használt Quadro, a dedikált GPGPU-hoz használt Tesla,"

Koszonom, hogy megerositettel, hogy a CUDA az, amivel most meg akar maradni a - idezem: az Intel es az AMD mellett - az nVidia...

"az integrált alaplapokban használt nForce chipset és a Geforce mellett."

nForcevel azert voltak olyan "aprocska" problemak, hogy igen erosen probaljak kiturni a chipset piacrol (ld. mikor az Intel nem akarta meghosszabbitani a licencet). A GeForce meg viszonylag lenyegtelen piaci szereplo lesz onnantol kezdve, hogyha beernak a GPU-CPU integracios tervek. Es amint lathato, mindket masik gyarto szorgoskodik ezen serenyen (nah, vajon miert is vette meg az AMD az ATI-t?)

Ha a CUDA-val nem asna be magat most egyre aggresszivebben mindenhova es mind az Intel, mind az AMD kiturja az nVidiat a chipset piacrol, onnan kezdve maximum a diszkret VGA piac marad (akar noti, akar asztali). Alulrol haladva onnan is turjak ki a CPU-ba integralt megoldasokkal. Vegeredmenyben x86-n marad a gamer piac, abbol is a hc resz, mert a konzolok is szorongatjak szepen a diszkret GPU-k teren az nVidia tokeit. Kifejezetten csucs-VGA kartyakat gyartani consumer piacra meg nagyon draga.

Szoval ez az egesz CUDA dolog az nVidianak azert kell, hogy x86-n eletben tudjon maradni, raadasul ezt megprobalja nagyon aljas modon csinalni (ld. azt, mikor letiltja a CUDA-t, ha pl. GPGPU-ra akarod hasznalni mondjuk egy Radeon VGA mellett). Ha az OpenCL nem lenne ilyen kiforratlan, szimplan nem lenne szukseg nVidia cuccra ott, ahol jelenleg nem tudod megkerulni (ok, Teslara nincs hasonlo jo alternativa), es akkor innen kezdve a PC piacon az nVidiara nagyon nem lenne szukseg, mert tudsz 100% inteles es kozel 100% AMD-s gepet epiteni.

Persze, az nVidia eltunese hosszu tavon az ATI vasarloknak is karos lenne, lattuk mar nem egyszer, milyen az, ha nincs konkurrencia.

----------------
Lvl86 Troll

Nagylelkűen kihagytad a Tegra-t, meg nem megnevezett okokból hozzávetted a Quadro-t a GPGPU-ra szánt termékvonalhoz, jelentéktelennek minősítetted a Geforce-ot, sőt a dedikált videókártyák piacát a processzorba integrált GPU-k miatt és végül eltemetted az Nvidia-t.

"ok, Teslara nincs hasonlo jo alternativa"

Dehogynem, az AMD FireStream, az Intel meg hamarosan előjön a Larrabee-vel.

Mellesleg az Nvidia a CUDA mellett az OpenCL-t is támogatja, nem szólván a DirectCompute-ról és akkor még mindig ott van az AMD Stream ha konkurens megoldásra van szükség.

A választás szabadsága a tied és a szoftverfejlesztőké, az Nvidia nem erőlteti kevésbé vagy még inkább a CUDA-t, mint az AMD a Stream-et, ugyanakkor mind az Nvidia, mint az AMD egyenértékű megoldásként kezelik az OpenCL-t.

Mégis milyen piaci magatartást vársz az Nvidia-tól a CUDA kapcsán?

"innen kezdve a PC piacon az nVidiara nagyon nem lenne szukseg, mert tudsz 100% inteles es kozel 100% AMD-s gepet epiteni."

Miért, most nem tudsz? Leszámítva, hogy a szoftverfejlesztők előszeretettel választják a CUDA-t, közel sem ok nélkül. És attól mert ez lehetséges, mégis mi köze ennek a piaci realitásokhoz, amik azt mutatják, hogy az Nvidia továbbra is keresett. Az általad említett személyi számítógépek piacán a 2010-ben grafikus chipek 32%-át adták el, az AMD mindössze 24%-át, az Intel a 44%-át. A Steam felmérése szerint a játékosok közel 60%-a Nvidia videókártyát használ.

Az Nvidia bevételeit most éppen a Tegra 2 platform fogja jelentősen növelni, az elkövetkezendő években az eddiginél nagyságrendekkel több Tegra-val ellátott smartphone-t és tabletet fognak eladni.

Az Nvidia mostanában az ARM processzorok szerepét igyekszik átformálni a számításigényes alkalmazások elosztott futtatása terén.
http://arstechnica.com/business/news/2011/02/nvidia-30-and-the-riscific…

Én azt látom, hogy valamiért nagyon elkötelezted magad az Nvidia ellenében (márpedig ez nem vallás, hanem technológia, nem érdemes elfogultnak lenni), ugyanakkor eközben teljesen fogalom nélkül vagy, ami végsősoron nem probléma, mindig tanulhat az ember új dolgokat.

Amit még látok, hogy az AMD és az Nvidia, valamint az Intel széleskörben használt integrált megoldásai egy olyan versenyhelyzetet teremtettek ami mindannyiunknak előnyös és vannak olyan platformok is, ahol egyik vagy másik gyártó nincs jelen (az AMD és az Intel x86-os processzorokat gyártanak, eközben az Nvidia ARM chipseteket stb.).

"Én azt látom, hogy valamiért nagyon elkötelezted magad az Nvidia ellenében"

Leginkabb azert, mert eddig akarmilyen nVidia termek jart a kezeim kozott, csak a szopas volt vele elobb-utobb. Persze, nyilvan masnak meg az X meg az Y cegnek a termekeivel volt ezer+1 problemaja, de egy ideje mar megfogadtam, hogy ha van alternativa, akkor lehetoleg minel kevesebb kulso gyartotol szallitott komponenst kell belekeverni a levesbe. Kulonosen olyat, aminek barmi koze van az nVidiahoz es chipset.

"Dehogynem, az AMD FireStream, az Intel meg hamarosan előjön a Larrabee-vel."

Igen, ameddig gepbe pakolhato kartyakban gondolkodunk (bar bevallom, nem ismerem annyira reszletesen az AMD megoldasait). nVidianal azert tobb a lehetoseg.

"Leszámítva, hogy a szoftverfejlesztők előszeretettel választják a CUDA-t, közel sem ok nélkül."

Ennyi pont eleg, hogy ne lehessen szabadulni tole. OpenCL meg tamogatott mind3 gyarto reszerol, de mint irtad is, nem ok nelkul nem OpenCL-eznek.

"Tegra"

Nah, akkor megegyszer es utoljara: nem az egesz nVidiat temetem, hanem azt mondom, hogy CUDA nelkul lenyegeben temetni lehetne x86 platformon az nVidiat hosszu tavon.

(Borzaszto vicces, hogy pont a nagy szoftver szabadsagharcos portalon kell magyarazni annak jelentoseget, hogy mennyire gaz egy zart, gyartofuggo technologiat igy hagyni elburjanzani, hogy aztan beegye magat mindenhova, hogy ha egyszer muszaj, az eletbe ne lehessen megszabadulni tole...)

----------------
Lvl86 Troll

"hogy CUDA nelkul lenyegeben temetni lehetne x86 platformon az nVidiat hosszu tavon."

Ezzel továbbra sem értek egyet.

"pont a nagy szoftver szabadsagharcos portalon kell magyarazni annak jelentoseget, hogy mennyire gaz egy zart, gyartofuggo technologiat igy hagyni elburjanzani"

Pedig részben éppen ezért fejlesztenek CUDA-ra, szemben az OpenCL-el, ami ugyanakkor többféle GPU-n és akár többmagos CPU-kon is futhat. Az OpenCL mindössze egy protokol, egy API (a programozását tekintve afféle standartizált CUDA), a többi az eszközmeghajtókon múlik.

Nem mellesleg a KGPU-t az Nvidia támogatja és csak a zárt eszközmeghajtóikkal fog menni, egyben az open source driverek nem kifejezetten állnak készen az OpenCL és ahhoz hasonló GPGPU interfészek támogatására, ami megint csak Nvidia vagy az AMD zárt eszközmeghajtóit jelenti.

"Leginkabb azert, mert eddig akarmilyen nVidia termek jart a kezeim kozott, csak a szopas volt vele elobb-utobb."

Nekem meg valahogy úgy jött ki, hogy amikor ATI-m volt, szívtam mint a torkos borz, nvidia -s cuccok meg mindig úgy muzsikáltak, ahogy kell.
És most nem kell a Linuxra gondolni, ne is emlegesse senki. És akkor mi van? Szerintem semmi. :)

--
fantázisdús aláírás v1.09

Tán van egy két feature ami CUDA-ban van, OpenCL-ben nincs, de nem számottevő, OpenCL-t sem hülyék tervezték. Leginkább driver problémák lehetnek, az nVidia érthető módon nem erőlteti magát túlzottan, de arra is ügyel, hogy ne maradjon le.
A jövő egyértelműen OpenCL irányba megy, így ez a project is vagy elhal, vagy megcsinálják arra.

"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee." -- Ted Ts'o

"Az Nvidia támogatja az OpenCL-t a CUDA architektúrán keresztül, én inkább azt látom, hogy ezek egymást kiegészítő technológiák."

Erre mondtam, hogy az nVidia nem erőlteti meg magát, de nem is akar lemaradni.

"Valamint ha a KGPU támogatná is az OpenCL-t jelenleg akkor sem használhatnád csak az Nvidia vagy az AMD zárt eszközmeghajtóival."

Az máris eggyel több lehetőség mint most. De az intel is jön az OpenCL támogatással, és a különböző ARM procik mellé integrált GPU-k is.
Plusz OpenCL-ből CPU-ra is lehet fordítani, ami jobban vektorizálható/párhuzamosítható kódot jelent általában...

"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee." -- Ted Ts'o

"így ez a project is vagy elhal, vagy megcsinálják arra."

Szerintem meg valoszinubb a tipikus opensource sikersztori, hogy elkezdenek majd tervezni vmit a levaltasara, aztan felbemarad, amir kezdenek 2 masikat, majd egyiket forkoljak, masik megszunik, a maradek ketto ujra egyesul, de addigra elavul es kezdenek egy n+1-t, ami kivetelesen nem lenne olyan rossz, csak pocs a fejleszto/nem ugy indental, ahogy linus/van rajta sapka/de az is lehet, hogy nincs/es kulonben is, merne lehetne forkolni egyet mar megint?

----------------
Lvl86 Troll