Tere, Habr! Andmekogud Big Data ja masinõppe jaoks kasvavad eksponentsiaalselt ning neid tuleb töödelda õigel ajal. Meie postitus räägib veel ühest uuenduslikust tehnoloogiast kõrgjõudlusega arvutuse (HPC, High Performance Computing) valdkonnas, mida esitati Kingston'i stendil . See on Hi-End andmesalvestussüsteemide (SXS) rakendamine graafikaprotsessoritega (GPU) serverites, kasutades GPUDirect Storage tehnoloogiat. Otse andmevahetuse abil SXS ja GPU vahel, mööda CPU'd, kiireneb andmete laadimine GPU kiirenditesse oluliselt, mistõttu Big Data rakendused toimivad suurima jõudlusega, mida GPU-d suudavad pakkuda. Samas on HPC-süsteemide arendajatele huvi pakkuda andmesalvestussüsteemide saavutused maksimaalse sisendi/väljundi kiiruseni — selliseid, mida pakub Kingston.

GPU jõudlus ületab andmete laadimist
Alates CUDA loomist 2007. aastal — GPU-põhine paralleelarvutuse tark- ja riistvaraarhitektuur, mille eesmärk on arendada üldotstarbelisi rakendusi — on GPU riistvaralised võimalused tohutult kasvanud. Täna leiavad GPU-d üha enam kasutust HPC-rakendustes, nagu suurandmed (Big Data), masinõpe (ML, machine learning) ja süvaõpe (DL, deep learning).
Tuleb märkida, et hoolimata terminite sarnasusest on kaks viimane algoritmiliselt erinevad ülesanded. Masinõpe (ML) õpetab arvutit struktureeritud andmete põhjal, samas kui süvaõpe (DL) tugineb neuronivõrgu tagasisidele. Näide, mis aitab erinevusi mõista, on üsna lihtne. Oletame, et arvuti peab eristama fotosid kassidest ja koertest, mis on laaditud salvestusseadmest. ML jaoks tuleb esitada piltide kogum paljude siltidega, millest igaühes on määratletud üks loomade omadus. DL korral piisab, kui laadida palju rohkem pilte, kuid ainult ühe sildiga, nagu "see on kass" või "see on koer". DL sarnaneb väga sellega, kuidas väikesi lapsi õpetatakse — neile näidatakse lihtsalt koerte ja kasside pilte raamatutes ja elus (tihti ka mitte selgitades detailselt erinevusi), ning lapse aju hakkab iseseisvalt määrama looma tüüpi pärast teatud kriitilist arvu võrdluspilte (arvutuste kohaselt räägime vaid sajast kuni kahest sajast esitlusest kogu varajase lapsepõlve jooksul). DL algoritmid ei ole veel piisavalt täiustatud: et neuronivõrk saaks sama edukalt pilte tuvastada, tuleb esitada ja töödelda GPU-s miljoneid pilte.
Eessentsi kokkuvõte: GPU-põhiste HPC rakenduste loomine Big Data, ML ja DL valdkondades on võimalik, kuid esineb probleem — andmekogud on nii suured, et andmete laadimise aeg salvestussüsteemist GPU-sse hakkab vähendama rakenduse üldist jõudlust. Teisiti öeldes jääb kiirete graafikakaartide koormus alumiseks, kuna andmete sissetuleku aeglustab teiste alamsüsteemide andmete edastamist. GPU ja CPU/SSD vahelise andmete sissetuleku aegluse erinevus võib olla suur.
Kuidas GPUDirect Storage tehnoloogia töötab?
Sissetuleku ja väljundprotsessi kontrollib CPU, samuti nagu ka andmete laadimisprotsessi salvestussüsteemist graafikakaartidesse edasi töötlemiseks. Seetõttu tekkis vajadus tehnoloogia järele, mis võimaldaks GPU ja NVMe ketaste vahelist otsest juurdepääsu kiireks omavaheliseks suhtlemiseks. Esimese sellise tehnoloogia pakkus NVIDIA ja nimetas selle GPUDirect Storage'iks. Sisuliselt on see varasema NVIDIA arendatud GPUDirect RDMA (Remote Direct Memory Address) tehnoloogia variant.

Jensen Huang, NVIDIA tegevjuht, esitleb GPUDirect Storage'i kui GPUDirect RDMA varianti näitusel SC-19. Allikas: NVIDIA
GPUDirect RDMA ja GPUDirect Storage erinevus seisneb seadmetes, mille vahel toimub adresseerimine. GPUDirect RDMA tehnoloogia on mõeldud andmete edastamiseks otse võrguadapteri (NIC) sisendi ja GPU mälestiku vahel, samas kui GPUDirect Storage tagab otseülekande andmete vahel lokaalsest või kaugstorest, nagu NVMe või NVMe kaudu Fabric (NVMe-oF) GPU mälestikku.
Mõlemad valikud, GPUDirect RDMA ja GPUDirect Storage, väldivad andmete liigset liikumist CPU mälupuhvris ja võimaldavad otsekuulamise (DMA) mehhanismil edastada andmeid otse võrguadapterilt või storelt GPU mälestikku või sealt välja — kõik see ilma keskprotsessorile koormuseta. GPUDirect Storage puhul ei oma salvestuskoht tähtsust: see võib olla NVMe-disk GPU-seadmestikus, serveris või ühendatud võrgu kaudu nagu NVMe-oF.

GPUDirect Storage tööpõhimõte. Allikas: NVIDIA
Hi-End NVMe storage on nõudlik HPC rakenduste turul
Mõistes, et GPUDirect Storage'i tulekuga tõuseb suurte klientide huvi selliste salvestussüsteemide vastu, mille sisend/väljund kiirus vastab GPU läbilaskevõimele, esitles Kingston messil SC-19 demot, mis koosnes NVMe ketastel põhinevast salvestussüsteemist ja GPU moodulist, kus analüüsiti tuhandeid satelliidipilte sekundis. Sellest NVMe salvestussüsteemist, mille aluseks on 10 DC1000M U.2 NVMe ketast, oleme juba kirjutanud. .

10 DC1000M U.2 NVMe ketastele põhinev salvestussüsteem täiendab väärikalt graafikakiirenditega serverit. Allikas: Kingston
Selline salvestussüsteem on 1U või suurema rack-mooduli kujul ja seda saab skaleerida sõltuvalt DC1000M U.2 NVMe ketaste arvust, kus igaühe salvestusmaht on 3.84-7.68 TB. DC1000M on esimene NVMe SSD mudel U.2 formaadis Kingston'i andmekeskuste ketaste seerias. Sellel on vastupidavuse hinnang (DWPD, Drive writes per day), mis võimaldab andmete kirjutamist täielikul mahul ühe korra päevas kogu garantiiaja jooksul.
Fio v3.13 testis Ubuntu 18.04.3 LTS operatsioonisüsteemil, Linux kernel 5.0.0-31-generic, näitas näidistas CЭD lugemist (Sustained Read) 5,8 miljoni IOPS kiirusel ja stabiilset läbilaskevõimet (Sustained Bandwidth) 23,8 Gbit/s.
Ariël Pérez, Kingstonis SSD ärianalüütik, iseloomustas uusi CЭD-sid: «Oleme valmis varustama järgmise põlvkonna servereid SSD lahendustega U.2 NVMe, et kõrvaldada paljusid andmeedastus kitsaskohti, mis on traditsiooniliselt seotud salvestussüsteemidega. NVMe SSD-de ja meie esmaklassilise Server Premier DRAM mälu kombinatsioon teeb Kingstonist ühe kõige täielikuma andmete töötlemise lahenduste pakkuja tööstuses.»

Gfio v3.13 test näitas 23,8 Gbit/s läbilaskevõimet näidis-CЭD-l DC1000M U.2 NVMe kettadel. Allikas: Kingston
Milline näeks välja tüüpiline süsteem HPC rakenduste jaoks, kus on rakendatud GPUDirect Storage tehnoloogia või sellele sarnane? See on arhitektuur, mis jagab füüsiliselt funktsionaalsed plokid üksuses: üks-kaks üksust mälule, veel mõned GPU ja CPU arvutusüksustele ning üks või mitu üksust CЭD jaoks.
GPUDirect Storage'i ja teiste GPU tootjate sarnaste tehnoloogiate võimaliku tulekuga kasvab Kingstonil nõudlus kõrgetasemeliste arvutuste jaoks mõeldud salvestusseadmete järele. Oluliseks kriteeriumiks on andmete lugemise kiirus salvestusseadmest, mis peab olema võrdne 40- või 100-Gbit/s võrgukaartide läbilaskvusega GPU arvutustehnika sisendisse. Seega muutuvad ülikiired salvestusseadmed, sealhulgas välist NVMe läbi Fabric, eksootikast peavooluks HPC rakendustes. Lisaks teadusele ja finantsarvutustele leiduvad need kasutust paljudes muudes praktilistes valdkondades, nagu megapoliside turvasüsteemid Safe City või transpordi jälgimiskeskused, kus on vajalik tuvastamise ja identifitseerimise kiirus miljonites HD-piltides sekundis,” märkis tipptasemel salvestusseadmete turgu.
Lisa teavet Kingston'i toodete kohta leiate ettevõttest.
Allikas: habr.com
