Chagua Lugha

Uchambuzi wa Uhesabuji Sambamba wa GPU Kulingana na Matlab

Uchambuzi wa utendakazi wa uhesabuji sambamba wa GPU kwa kutumia Matlab, ukilinganisha ufanisi wa kihesabu na CPU kwa shughuli mbalimbali ikiwemo FFT, kuzidisha matriki, na maagizo ya kimantiki.
aipowercoin.org | PDF Size: 0.2 MB
Ukadiriaji: 4.5/5
Ukadiriaji Wako
Umekadiria waraka huu tayari
Kifuniko cha Waraka PDF - Uchambuzi wa Uhesabuji Sambamba wa GPU Kulingana na Matlab

Yaliyomo

1. Utangulizi

Matlab inatumika sana katika uhesabuji wa kisayansi lakini inakabiliwa na ufanisi mdogo wa kihesabu ikilinganishwa na lugha ya C. Karatasi hii inachungulia kuongeza kasi kwa GPU kupitia Kifurushi cha Uhesabuji Sambamba cha Matlab ili kuboresha utendakazi bila kuhitaji usasishaji wa vifaa au kuandika upya kodi.

2. Muundo wa GPU

Muundo wa GPU umeundwa kwa usindikaji sambamba, ukiwa na vitengo vingi vya utekelezaji vilivyoboreshwa kwa kazi zenye data sambamba.

2.1 Ulinganisho wa GPU na CPU

GPU hutumia transistor zaidi kwa vitengo vya utekelezaji badala ya mantiki ya udhibiti, hivyo kuwezesha usambamba mkubwa lakini kupunguza ufanisi kwa kazi zinazofuatana.

2.2 Faida za GPU

Faida kuu ni pamoja na utendakazi bora wa nambari za desimali na upana wa ukubwa wa kumbukumbu. GPU za sasa hufikia upana wa ukubwa wa kumbukumbu wa 40-142 GB/s ikilinganishwa na 32 GB/s ya kumbukumbu ya DDR3.

2.3 Programu Zinazofaa kwa Uhesabuji wa GPU

Matumizi bora ya GPU ni yale yanayohitaji uhesabuji mkubwa, yenye usambawa mwingi, yanayohusisha shughuli rahisi, na kusindika seti kubwa za data.

3. Mbinu ya Majaribio

Majaribio yaliyofanywa ni pamoja na FFT, kuzidisha matriki, upangaji wa haraka, na uigizaji wa kodi ya Hamming kwenye kituo cha BSC. Utendakazi ulipimwa kwa kutumia uwiano wa kuongeza kasi: $Kasi = rac{T_{CPU}}{T_{GPU}}$

4. Matokeo na Uchambuzi

GPU ilionyesha kuongeza kasi kubwa kwa shughuli sambamba: mara 15 kwa kuzidisha matriki kubwa ($2048 imes 2048$), mara 8 kwa FFT. Hata hivyo, shughuli za kimantiki zilikuwa mara 2-3 polepole zaidi kwenye GPU.

Muhtasari wa Utendakazi

Kuzidisha Matriki: Kuongeza kasi mara 15
FFT: Kuongeza kasi mara 8
Shughuli za Kimantiki: Kuongeza kasi mara 0.5

5. Mfumo wa Kiufundi

Ufahamu Msingi: Utafiti huu unaonyesha usawazishaji msingi katika uhesabuji wa GPU - nguvu halisi ya usambawa dhidi ya mipaka ya mantiki inayofuatana. Waandika wamebainisha kwa usahihi kwamba kuongeza kasi kwa GPU sio suluhisho la ulimwengu wote bali ni chombo maalum.

Mtiririko wa Kimantiki: Karatasi hii inafuata mbinu wazi ya majaribio: kubaini aina za uhesabuji → kutekeleza ulinganisho wa CPU/GPU → kuchambua mifumo ya utendakazi. Mbinu hii inaonyesha kwa ufanisi mahali uwekezaji wa GPU unalipa.

Nguvu na Mapungufu: Nguvu iko katika uthibitishaji wa vitendo katika shughuli mbalimbali. Hata hivyo, utafiti hauna kina katika uchambuzi wa ngazi ya kumbukumbu na haushughulikii miundo mipya ya GPU kama vile Tensor Cores ya NVIDIA ambayo inaweza kubadilisha hali ya utendakazi.

Ufahamu Unaoweza Kutekelezwa: Watafiti wanapaswa kuchambua programu kwa maudhui ya usambawa kabla ya utekelezaji wa GPU. Kwa mizigo mchanganyiko, mbinu mchanganyiko za CPU-GPU (kama inavyoonekana katika mfumo wa programu wa CUDA wa NVIDIA) mara nyingi hutoa matokeo bora.

Uchambuzi wa Asili

Utafiti huu hutoa ushahidi wa kimajaribio wa thamani kwa uwanja unaokua wa uhesabuji wa kisayansi ulioongezwa kasi na GPU. Matokeo yanalingana na kanuni zilizoanzishwa katika usanifu wa uhesabuji sambamba, hasa Sheria ya Amdahl ambayo inasema kuwa kasi ya juu inapunguzwa na sehemu inayofuatana ya programu. Kuongeza kasi kwa mara 15 kwa shughuli za matriki kunaonyesha uwezo wa uhesabuji wa GPU kwa mizigo ya kazi ya aljebra ya mstari, sawa na faida za utendakazi zilizoripotiwa katika nyaraka za maktaba ya cuBLAS ya NVIDIA. Hata hivyo, utendakazi duni kwenye shughuli za kimantiki unaonyesha kikomo cha msingi cha usanifu - GPU hushinda katika kazi za data sambamba lakini hukabiliana na shughuli zenye udhibiti mwingi. Mgawanyiko huu umerekodiwa vizuri katika kazi muhimu "Kufichua Muundo Ndogo wa GPU Kupitia Udogo-vipimo" na Wong et al. (IEEE Micro 2010). Utafiti ungefaidika kwa kulinganisha na maendeleo ya hivi karibuni kama vile ROCm ya AMD na mpango wa oneAPI wa Intel ambao hutoa suluhisho la uhesabuji wa GPU kwenye majukwaa tofauti. Kazi ya baadaye inapaswa kuchunguza uhesabuji wa usahihi mchanganyiko na shughuli za tensor ambazo hutawala mizigo ya kazi ya AI ya kisasa, kujenga juu ya miundo kama vile dlarray ya MATLAB kwa matumizi ya kujifunza kina.

Mfano wa Mfumo wa Uchambuzi

Kesi: Mfereji wa Usindikaji wa Picha
Kwa programu ya usindikaji wa picha za matibabu inayosindika vipande 1000 vya MRI:
• Shughuli sambamba (uchujaji wa FFT): Kupendekezwa kuongeza kasi kwa GPU
• Shughuli za kimantiki (ugunduzi wa sifa): Kupendekezwa usindikaji wa CPU
• Mbinu mchanganyiko: Usambazaji bora wa 70% GPU + 30% CPU

6. Matumizi ya Baadaye

Matumizi yanayokua ni pamoja na usindikaji wa ishara wa wakati halisi, mafunzo ya miundo ya AI, na uigizaji wa kiwango kikubwa. Ushirikiano na huduma za GPU wingu na uwekaji ndani wa vyombo vitawazuza upatikanaji wa rasilimali za uhesabuji zenye utendakazi wa hali ya juu.

7. Marejeo

  1. NVIDIA CUDA Programming Guide, 2022
  2. Wong, H. et al. "Demystifying GPU Microarchitecture Through Microbenchmarking" IEEE Micro, 2010
  3. MathWorks Parallel Computing Toolbox Documentation
  4. AMD ROCm Open Computing Platform
  5. Intel oneAPI Cross-Architecture Development