CUDA and the rise of NVIDIA - editorial illustration

Jensen Huang, CUDA, na Kuinuka kwa NVIDIA

Utangulizi

Jensen Huang alipoanza NVIDIA kwa ushirikiano mwaka 1993, lengo lake lilikuwa kuleta picha za 3D kwenye michezo ya kompyuta na multimedia. Leo hii, processor za kampuni hiyo hiyo hutumika kufundisha na kuendesha mifano ya akili bandia. Kuelewa mabadiliko hayo, ni vyema kuanza na msingi wa uhandisi wa Huang na jukwaa la programu ambalo NVIDIA lilijenga, CUDA. [1] [1]

1. Kazi ya uhandisi ya Huang

Aliezaliwa Taiwan, Huang alipata shahada ya kwanza ya uhandisi wa umeme kutoka Chuo Kikuu cha Jimbo la Oregon mwaka 1984. Alifanya kazi kama mbunifu wa microprocessor katika AMD kutoka 1984 hadi 1985, kisha akashikilia nafasi kadhaa katika LSI Logic kutoka 1985 hadi 1993. Akawa mkurugenzi wa Coreware, idara iliyokuwa na jukumu la mkakati wa kampuni wa kuunganisha vipengele vingi vya mfumo wa kompyuta kwenye chip moja. Katika kipindi hicho, pia alipata shahada ya uzamili ya uhandisi wa umeme kutoka Chuo Kikuu cha Stanford mwaka 1992. [2] [1]

Tarehe 5 Aprili 1993, Huang alianzisha NVIDIA pamoja na Chris Malachowsky na Curtis Priem. Amekuwa rais, afisa mtendaji mkuu na mjumbe wa bodi tangu kampuni ilipoanza. Mwaka 1999, NVIDIA ilifanya uuzaji wake wa kwanza wa hisa kwa umma. Mwaka huo huo, ilitangaza GeForce 256, hatua muhimu katika historia ya vitengo vya usindikaji wa picha (GPU) vya kampuni. [1] [1]

2. CUDA ni nini?

NVIDIA ilitangaza CUDA mwaka 2006 kama jukwaa la programu na mtindo wa upangaji programu wa kufanya mahesabu mengi kwa sambamba kwenye GPU zake. GPU ndio maunzi yanayofanya mahesabu. CUDA hutoa zana za upangaji programu ambazo watengenezaji hutumia kuendesha mahesabu yao kwenye maunzi hayo. Hii ilifungua GPU zilizojengwa kwa ajili ya picha kwa matumizi ya utafiti wa kisayansi, kompyuta za utendaji wa hali ya juu na akili bandia. [1] [1]

Fikiria kuangaza picha yenye pikseli milioni moja. Hesabu ya pikseli moja inaweza kuendelea bila kutegemea nyingine. Programu ya CUDA inaweza kugawanya kazi hiyo katika hesabu ndogo ndogo na kuziendesha kwenye GPU. Chaguo linaloendesha kwenye GPU huitwa kernel. Threads nyingi huilitekeleza kwa sambamba, kila moja ikifanya kazi kwenye sehemu yake iliyokabidhiwa ya data. Kanuni hiyo hiyo ya kugawanya kazi katika sehemu zinazoweza kuendeshwa kwa sambamba inatumika kwa hesabu za AI kama vile kuzidisha matriki kubwa. [3] [1]

3. Jinsi CUDA ilivyosaidia sekta ya AI

Wakati wa kufundisha neural network, mfano kwanza hufanya utabiri. Mchakato wa mafunzo hupima kosa na kusasisha vigezo vya mfano. Unarudia mchakato huu mara nyingi. GPU huharakisha shughuli kama kuzidisha matriki, zikiwapa watafiti muda wa kufanya majaribio zaidi na kufanya iwezekanavyo kufundisha mifano mikubwa zaidi. GPU pia hutumika baada ya mafunzo, wakati wa inference, wakati mfano kama mfano wa lugha unatengeneza jibu kwa mtumiaji. [4] [1]

AlexNet ilitoa onyesho la vitendo mwaka 2012. Likifundishwa kwenye GPU za NVIDIA, lilishinda mashindano ya uainishaji wa picha ya ImageNet. Utendaji wake ulionyesha jinsi processor za picha zilizotumika kwa michezo ya kompyuta zinavyoweza pia kufundisha mifano kutambua picha. [1] [1]

4. Jinsi CUDA ilivyompa NVIDIA faida ya kudumu

NVIDIA ilijenga maktaba na zana zilizoboreshwa kwa hesabu ambazo watengenezaji huhitaji mara kwa mara. cuBLAS huharakisha shughuli za matriki, cuDNN inasaidia shughuli za kawaida za neural network, NCCL inashughulikia mawasiliano kati ya GPU, na TensorRT inasaidia mifano iliyofundishwa kuendesha haraka zaidi. Mifumo kama PyTorch inasaidia CUDA, hivyo watengenezaji wanaweza kutumia uwezo huu bila kuandika kila shughuli ya GPU kuanzia mwanzo. [5] [1]

Hitimisho

Ikolojia hiyo ya programu iliimarisha biashara ya maunzi ya NVIDIA. Timu inaweza kuhamia kutoka jaribio dogo hadi mfumo unaoendesha kwenye GPU nyingi huku ikiendelea kutumia programu na zana zinazojulikana. Kubadilisha maunzi kunaweza kuhitaji timu kukagua utegemezi wake wa CUDA, kurekebisha sehemu za programu yake na kupima utendaji tena. Kwa kuwekeza katika programu pamoja na maunzi kwa miaka, NVIDIA ilikuwa na zana tayari kwa watengenezaji ambao tayari walijua jinsi ya kuzitumia wakati mahitaji ya kompyuta za AI yalipoongezeka. [1] [1]

Marejeo

  1. https://www.nvidia.com/en-us/about-nvidia/corporate-timeline/
  2. https://s201.q4cdn.com/141608511/files/doc_financials/annual/2013/NVDA_2013AR_Proxy_10K-FINAL.pdf
  3. https://docs.nvidia.com/cuda/cuda-programming-guide/02-basics/writing-cuda-kernels.html
  4. https://docs.nvidia.com/cuda/cuda-programming-guide/index.html
  5. https://developer.nvidia.com/machine-learning

Maswali kuhusu Jensen Huang, CUDA na kuinuka kwa NVIDIA

CUDA ni nini na kwa nini NVIDIA ilijenga?

CUDA ni jukwaa la programu na mtindo wa upangaji programu ambao NVIDIA ulitangaza mwaka 2006 kwa kuendesha hesabu nyingi kwa sambamba kwenye GPU zake. GPU ndio maunzi; CUDA hutoa zana za upangaji programu, ambazo zilifungua maunzi ya picha kwa utafiti wa kisayansi, kompyuta za utendaji wa hali ya juu na AI.

CUDA ilisaidiaje sekta ya AI?

Kufundisha neural network kunamaanisha kurudia utabiri, kupima kosa na kusasisha vigezo mara nyingi. GPU huharakisha shughuli kama kuzidisha matriki, zikiwaruhusu watafiti kufanya majaribio zaidi na kufundisha mifano mikubwa zaidi. AlexNet, iliyofundishwa kwenye GPU za NVIDIA, ilithibitisha hili kwa kushinda mashindano ya ImageNet ya 2012.

Kwa nini CUDA inampa NVIDIA faida ya kudumu?

NVIDIA ilijenga maktaba zilizoboreshwa ambazo watengenezaji huhitaji mara kwa mara – cuBLAS kwa shughuli za matriki, cuDNN kwa shughuli za neural network, NCCL kwa mawasiliano ya GPU nyingi na TensorRT kwa inference ya haraka – na mifumo kama PyTorch inasaidia CUDA, hivyo timu zinaweza kupanua kutoka jaribio dogo hadi GPU nyingi bila kuandika upya programu zao.

Powered By K7