1 / 15

Skaičiavimų spartinimas panaudojus grafinį procesorių DirectCompute technologijos pagalba

Skaičiavimų spartinimas panaudojus grafinį procesorių DirectCompute technologijos pagalba. Atlik o PSI IFM-9/2 gr . magistrantai : Serg ejus Topolovas Algis Pavasaris. Tikslai.

elma
Download Presentation

Skaičiavimų spartinimas panaudojus grafinį procesorių DirectCompute technologijos pagalba

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Skaičiavimų spartinimas panaudojus grafinį procesorių DirectCompute technologijos pagalba Atliko PSI IFM-9/2 gr. magistrantai: SergejusTopolovas Algis Pavasaris

  2. Tikslai • Paspartinti su centriniu procesoriumi (toliau – CPU) atliekamus skaičiavimus atlikus juos grafinio procesoriaus (toliau – GPU) pagalba. • Skaičiavimų spartinimui panaudoti DirectCompute technologiją. • Ištirti GPU pagalba vykdomų skaičiavimų dėsningumus bei nustatyti faktorius, įtakojančius jų našumą. S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  3. Terminologija • GPGPU (General-PurposecomputingonGraphicsProcessingUnits) • DirectCompute • DirectX11 S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  4. Metodai • A* kelio paieška (pathfinding) [1] • Hierarchinis uždengtos geometrijos atmetimas (occlusionculling) [2] • MD5 maišos kodo nulaužimas grubios jėgos metodu (brute-forceattack) [3] S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  5. Tyrimo metu naudota įranga • CPU: Intel Core2 Duo E8400 @3.2 GHz. • RAM: KingstonHyperX DDR2 4 GB @854 MHz. • GPU: Gigabyte 450 GTS OC2. • OS: Microsoft Windows 7 x64. S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  6. Metodai: A* kelio paieška • Tyrimo metodologija: • Paieška 64x64 viršūnių dydžio grafe ieškant kelio iš (0;0) į (63;63) viršūnę. • 4 algoritmo variantai: • CPU • GPU, taupant atminį („GPU v1“) • GPU, dalinai taupant atminį („GPU v2“) • GPU, netaupant atminties („GPU v3“) S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  7. Metodai: A* kelio paieška (rezultatai) A* kelio paieškos algoritmo versijų vykdymo laikų palyginimas S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  8. Metodai: Hierarchinis uždengtos geometrijos atmetimas • Tyrimo metodologija: • Aplinka su dideliais uždengiančiais objektais. • Yra objektų tiek nepapuolančių į vartotojui matomą zoną, tiek uždengtų dengiančiais objektais, tiek matomų vartotojui. • 3 algoritmo variantai: • CPU • GPU vykdo papuolimo į vartotojui matomą zoną tikrinimožingsnį (1) ir dengiamumo sąlygos patikrinimo žingsnį (2) („GPU v1“) • CPU atlieka (1), o GPU (2) žingsnį („GPU v2“) S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  9. Metodai: Hierarchinis uždengtos geometrijos atmetimas (rezultatai) Hierarchinio uždengtos geometrijos atmetimo algoritmo versijų vykdymo laikų palyginimas S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  10. Metodai: MD5 maišos kodo nulaužimas • Tyrimo metodologija: • Vertinamas tiek pilno perrinkimo, tiek rezultato radimo laikas. • Paieška vykdoma [a; z], [A; Z], [0; 9] aibėse • 5 algoritmo variantai: • CPU, su rekursija („CPU v1“) • CPU, be rekursijos („CPU v2“) • GPU („GPU v1“) • CPU (simbolių komb. generavimas) + GPU („GPU v2“) • Optimizuotas „GPU v2“ („GPU v3“) S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  11. Metodai: MD5 maišos kodo nulaužimas (rezultatai) Simbolių radimo iš maišos funkcijos vykdymo laikų palyginimas S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  12. Metodai: MD5 maišos kodo nulaužimas (rezultatai) Pilno simbolių perrinkimo vykdymo laikų palyginimas S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  13. Rezultatų apibendrinimas • [1] (4096 užklausos): • „GPUv3“ algoritmas 3.52x greitesnis už CPU • CPU->GPU: 0.002% („GPUv1“ir„GPUv2“), 0.005% („GPUv3“) • CPU<-GPU: 7.52% („GPUv1“), 8.51%(„GPU v2“), 31.38% („GPUv3“) • Gijų grupės dydis yra labai svarbus! • [2]: • Jei vykdoma mažai skaičiavimų – juos geriau vykdyti su CPU, nebent užklausų kiekis labai didelis • [3] (pilnas perrinkimas, 5 simboliai): • „GPU v3“ algoritmas 7.81x greitesnis už „CPU v2“ S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  14. Išvados • Mažai skaičiavimų atliekančių algoritmų vykdymas GPU pagalba naudingas tik vykdant didelį skaičiavimo užklausų kiekį. • Didelis GPU pagalba vykdomų algoritmų ciklomatinis sudėtingumas neigiamai įtakoja jų našumą. • Siekiant panaudoti GPU skaičiavimams atlikti, reikia įvertinti informacijos perkėlimo tarp CPU bei GPU atminties laikus. Būtent dėl to mažai skaičiavimų reikalaujantys veiksmai yra greičiau vykdomi CPU pagalba. • Gijų grupių dydis turi didelę įtaką GPU vykdomų algoritmų našumui. • Protingas GPU resursų panaudojimas kartu su CPU suteikia nemažą našumo prieaugį skaičiavimui imliose užduotyse. S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

  15. Ačiū už dėmesį S. Topolovas ir A. Pavasaris Skaičiavimų spartinimas panaudojus grafinį procesorių

More Related