Amazon rugalmas számítási felhő (Amazon EC2) G5 példányok ezek az első és egyetlen példányok a felhőben, amelyek NVIDIA A10G Tensor Core GPU-kat tartalmaznak, amelyeket számos grafikaigényes és gépi tanulási (ML) felhasználási esethez használhat. A G5-példányokkal az ML-ügyfelek nagy teljesítményt és költséghatékony infrastruktúrát kapnak nagyobb és kifinomultabb modellek betanításához és üzembe helyezéséhez a természetes nyelvi feldolgozáshoz (NLP), a számítógépes látásmódhoz (CV) és az ajánlómotor-használati esetekhez.
Ennek a bejegyzésnek az a célja, hogy bemutassa a G5-példányok teljesítménybeli előnyeit nagyszabású ML következtetési munkaterhelésekhez. Ezt úgy tesszük, hogy összehasonlítjuk az NLP és CV modellek ár-teljesítményét (a millió dollárra vetítve) a G4dn példányokkal. Kezdjük azzal, hogy leírjuk a benchmarking megközelítésünket, majd bemutatjuk az átviteli sebesség és a késleltetés közötti görbéket a kötegméretekre és az adattípusok pontosságára vonatkozóan. A G4dn-példányokkal összehasonlítva azt találtuk, hogy a G5-példányok következetesen alacsonyabb milliónkénti költséget eredményeznek mind a teljes pontosságú, mind a vegyes precíziós módok esetében az NLP és CV modelleknél, miközben nagyobb átviteli sebességet és alacsonyabb késleltetést érnek el.
Benchmarking megközelítés
A G5 és a G4dn közötti ár-teljesítmény tanulmány kidolgozásához meg kell mérnünk az áteresztőképességet, a késleltetést és a milliónkénti költséget a köteg méretének függvényében. Tanulmányozzuk a teljes pontosság és a vegyes pontosság hatását is. A modell gráfja és a bemenetek is betöltődnek a CUDA-ba a következtetés levonása előtt.
Amint az a következő architektúra diagramon látható, először létrehozzuk a megfelelő alaptároló-képeket a CUDA-val az alapul szolgáló EC2-példányhoz (G4dn, G5). Az alapkonténerképek elkészítéséhez kezdjük a következővel AWS Deep Learning Containers, amelyek előre csomagolt Docker-képeket használnak a mély tanulási környezetek percek alatti telepítéséhez. A képek tartalmazzák a szükséges mélytanulási PyTorch könyvtárakat és eszközöket. Felveheti saját könyvtárait és eszközeit ezekre a képekre, hogy nagyobb fokú ellenőrzést biztosítson a felügyelet, a megfelelőség és az adatfeldolgozás felett.
Ezután létrehozunk egy modellspecifikus tárolóképet, amely magában foglalja a modell konfigurációját, a modellkövetést és a kapcsolódó kódot az előrehaladási lépések futtatásához. Az összes tárolókép betöltődik ide Amazon ECR lehetővé teszi ezeknek a modelleknek a vízszintes skálázását a különböző modellkonfigurációkhoz. Mi használjuk Amazon egyszerű tárolási szolgáltatás (Amazon S3) általános adattárként a konfiguráció letöltéséhez és a benchmark eredmények feltöltéséhez az összegzés céljából. Ezzel az architektúrával újra létrehozhatja és reprodukálhatja a benchmark eredményeket, és újra felhasználhatja a különböző modelltípusok (például Hugging Face modellek, PyTorch modellek, egyéb egyéni modellek) összehasonlítását az EC2 példánytípusok (CPU, GPU, Inf1) között.
Ezzel a kísérlettel az a célunk, hogy tanulmányozzuk a késleltetést az átviteli sebesség függvényében. Ez a görbe fontos az alkalmazástervezés szempontjából, hogy a célalkalmazás költségoptimális infrastruktúráját érje el. Ennek elérése érdekében különböző terheléseket szimulálunk úgy, hogy több szálból származó lekérdezéseket sorba állítunk, majd minden teljesített kérésnél mérjük az oda-vissza út idejét. Az áteresztőképesség mérése az egységnyi idő alatt teljesített kérések száma alapján történik. Ezenkívül változtathatja a kötegméreteket és más változókat, például a sorozathosszt és a teljes pontosságot, illetve a fél pontosságot, hogy átfogóan átjárja a tervezési teret az indikatív teljesítménymutatók eléréséhez. Tanulmányunkban a kötegméret és a többszálú kliensek lekérdezései paraméteres söpörésével határozzuk meg az átviteli sebesség és a késleltetés közötti görbét. Minden kérés kötegelhető a gyorsító teljes kihasználásának biztosítása érdekében, különösen az olyan kis kérések esetében, amelyek esetleg nem használják ki teljesen a számítási csomópontot. Ezt a beállítást az optimális teljesítmény érdekében az ügyféloldali kötegméret meghatározásához is alkalmazhatja.
Összefoglalva, ezt a problémát matematikailag a következőképpen ábrázolhatjuk: (áteresztőképesség, késleltetés) = (kötegméret, szálak száma, pontosság) függvénye.
Ez azt jelenti, hogy a kimerítő tér ismeretében a kísérletek száma nagy lehet. Szerencsére minden kísérlet önállóan is futtatható. Javasoljuk a használatát AWS köteg hogy ezt a horizontálisan skálázott benchmarkingot tömörített idő alatt végezze el anélkül, hogy a benchmarking költsége növekedne a tesztelés lineáris megközelítéséhez képest. Az eredmények replikálására szolgáló kód megtalálható a GitHub tárház Az AWS Re:Invent 2021-hez készült. Az adattár átfogóan alkalmas a különböző gyorsítók teljesítményértékelésére. A tároló felépítéséhez hivatkozhat a kód GPU-aspektusára (Dockerfile-gpu
), majd tekintse meg a benne lévő kódot Container-Root
konkrét példákért a BERT és a ResNet50 esetében.
Az előző megközelítést alkalmaztuk teljesítményvizsgálatok kidolgozásához két modelltípuson: Bert-base-uncased (110 millió paraméter, NLP) és ResNet50 (25.6 millió paraméter, CV). Az alábbi táblázat összefoglalja a modell részleteit.
Modelltípus | Modell | Részletek |
NLP | twmkn9/bert-base-uncased-squad2 | 110 millió paraméter Sorozat hossza = 128 |
CV | ResNet50 | 25.6 millió paraméter |
Ezenkívül az adattípusok (teljes, fél pontosságú) összehasonlításához használjuk torch.cuda.amp
, amely kényelmes módszereket biztosít a vegyes pontosság kezelésére, ahol egyes műveletek a torch.float32
(lebegő) adattípus és egyéb műveletek használata torch.float16
(fél). Például az olyan operátorok, mint a lineáris rétegek és a konvolúciók, sokkal gyorsabbak a float16-tal, míg mások, mint a redukciók, gyakran a float32 dinamikus tartományát igénylik. Az automatikus vegyes precizitás megpróbálja az egyes operátorokat a megfelelő adattípushoz illeszteni, hogy optimalizálja a hálózat futási idejét és memóriahasználatát.
Benchmarking eredmények
A korrekt összehasonlítás érdekében kiválasztottuk G4dn.4xlarge és a G5.4xlarge hasonló attribútumokkal rendelkező példányok, a következő táblázatban felsoroltak szerint.
Példa | GPU | GPU memória (GiB) | vCPU-k | Memória (GiB) | Példánytárhely (GB) | Hálózati teljesítmény (Gbps) | EBS sávszélesség (Gbps) | Linux on-Demand árképzés (us-east-1) |
G5.4xlarge | 1 | 24 | 16 | 64 | 1x 600 NVMe SSD | akár 25 | 8 | $ 1.204 / óra |
G4dn.4xlarge | 1 | 16 | 16 | 64 | 1x 225 NVMe SSD | akár 25 | 4.75 | $ 1.624 / óra |
A következő szakaszokban összehasonlítjuk a BERT és RESNET50 modellek ML következtetési teljesítményét a rácssöprés-megközelítéssel meghatározott kötegméretekre (32, 16, 8, 4, 1) és az adattípus pontosságára (teljes és fél pontosság), hogy elérjük az átviteli sebességet. vs. késleltetési görbe. Ezenkívül megvizsgáljuk az áteresztőképesség és a sarzsméret közötti hatást teljes és fél pontosság esetén is. Végül mérjük a millió következtetésre jutó költséget a köteg méretének függvényében. A kísérletek összesített eredményeit a bejegyzés későbbi részében foglaljuk össze.
Átbocsátóképesség vs. késleltetés
A következő ábrák összehasonlítják a G4dn és G5 példányokat az NLP és CV munkaterhelésekhez teljes és fél pontossággal. A G4dn-példányokhoz képest a G5-példány körülbelül ötször nagyobb (teljes pontosságú) és körülbelül 2.5-szer nagyobb (félpontosságú) átviteli sebességet biztosít egy BERT alapmodell esetében, és körülbelül 2–2.5-szer nagyobb a ResNet50 modell esetében. Összességében a G5 az előnyben részesített választás, mindkét modellnél növekvő tételmérettel, mind a teljes, mind a vegyes pontosság érdekében teljesítmény szempontjából.
A következő grafikonok összehasonlítják az átviteli sebességet és a P95 késleltetést teljes és fél pontossággal a BERT esetében.
A következő grafikonok összehasonlítják az átviteli sebességet és a P95 késleltetést teljes és fél pontossággal a ResNet50 esetében.
Átbocsátóképesség és késleltetés a kötegmérethez képest
A következő grafikonok az áteresztőképességet mutatják a kötegméret függvényében. Alacsony kötegméreteknél a gyorsító nem működik maximálisan, és a köteg méretének növekedésével az átviteli sebesség a késleltetés árán nő. Az átviteli görbe aszimptota egy maximális értékre, amely a gyorsító teljesítményének függvénye. A görbének két különböző jellemzője van: egy emelkedő szakasz és egy lapos aszimptotikus szakasz. Egy adott modell esetében a teljesítménygyorsító (G5) képes a felfutó szakaszt nagyobb tételméretekre nyújtani, mint a G4dn, és nagyobb átviteli teljesítménnyel aszimptotálni. Ezenkívül lineáris kompromisszum van a várakozási idő és a köteg mérete között. Ezért, ha az alkalmazás késleltetéshez kötött, használhatjuk a P95 várakozási időt a kötegmérethez képest az optimális kötegméret meghatározásához. Ha azonban a cél az átviteli sebesség maximalizálása a legalacsonyabb késleltetés mellett, akkor jobb, ha az emelkedő és az aszimptotikus szakaszok közötti „térdnek” megfelelő kötegméretet választjuk, mivel a köteg méretének további növelése ugyanazt az átviteli sebességet eredményezi rosszabb késleltetés. A legjobb ár-teljesítmény arány elérése érdekében, nagyobb átviteli sebességet célozva meg a legalacsonyabb késleltetés mellett, jobban jár, ha ezt az optimumot vízszintesen skálázza több következtetési szerveren keresztül, ahelyett, hogy csak a kötegméretet növelné.
Költség vs. tételnagyság
Ebben a részben a következtetési költségek ($ per millió következtetés) összehasonlító eredményeit mutatjuk be a kötegméret függvényében. A következő ábrán jól látható, hogy a költség ($ millió következtetésenként mérve) következetesen alacsonyabb G5 és G4dn esetén (teljes és fél pontosság).
Az alábbi táblázat összefoglalja a BERT és a RESNET50 modellek átviteli sebességét, késleltetését és költségét ($ per millió következtetés) mindkét precíziós módban meghatározott kötegméretek esetén. A magasabb példányonkénti költség ellenére a G5 következetesen felülmúlja a G4dn-t a következtetési késleltetés, átviteli sebesség és költség (millió dolláronkénti következtetés) tekintetében minden kötegméret esetén. A különböző mutatókat költségbe ($ per millió következtetés) kombinálva a BERT modell (32 kötegméret, teljes pontosság) G5-tel 3.7-szer kedvezőbb, mint a G4dn, a ResNet50 modellel (32 kötegméret, teljes pontosság) pedig 1.6 alkalommal kedvezőbb, mint a G4dn.
Modell | Csomó méret | Pontosság |
áteresztőképesség (Kötegméret X kérés/mp) |
Latencia (ms) |
$/millió Következtetések (igény szerint) |
Költség-haszon (G5 G4dn felett) |
|||
. | . | . | G5 | G4dn | G5 | G4dn | G5 | G4dn | |
Bert-alap-burkolat nélküli | 32 | Tele | 723 | 154 | 44 | 208 | $0.6 | $2.2 | 3.7X |
Vegyes | 870 | 410 | 37 | 79 | $0.5 | $0.8 | 1.6X | ||
16 | Tele | 651 | 158 | 25 | 102 | $0.7 | $2.1 | 3.0X | |
Vegyes | 762 | 376 | 21 | 43 | $0.6 | $0.9 | 1.5X | ||
8 | Tele | 642 | 142 | 13 | 57 | $0.7 | $2.3 | 3.3X | |
Vegyes | 681 | 350 | 12 | 23 | $0.7 | $1.0 | 1.4X | ||
. | 1 | Tele | 160 | 116 | 6 | 9 | $2.8 | $2.9 | 1.0X |
Vegyes | 137 | 102 | 7 | 10 | $3.3 | $3.3 | 1.0X | ||
ResNet50 | 32 | Tele | 941 | 397 | 34 | 82 | $0.5 | $0.8 | 1.6X |
Vegyes | 1533 | 851 | 21 | 38 | $0.3 | $0.4 | 1.3X | ||
16 | Tele | 888 | 384 | 18 | 42 | $0.5 | $0.9 | 1.8X | |
Vegyes | 1474 | 819 | 11 | 20 | $0.3 | $0.4 | 1.3X | ||
8 | Tele | 805 | 340 | 10 | 24 | $0.6 | $1.0 | 1.7X | |
Vegyes | 1419 | 772 | 6 | 10 | $0.3 | $0.4 | 1.3X | ||
. | 1 | Tele | 202 | 164 | 5 | 6 | $2.2 | $2 | 0.9X |
Vegyes | 196 | 180 | 5 | 6 | $2.3 | $1.9 | 0.8X |
További következtetési referenciaértékek
Az előző részekben a BERT alap és a ResNet50 eredményein kívül további benchmarking eredményeket mutatunk be a PyTorchban általánosan használt nagy NLP és CV modellekhez. A G5 teljesítményelőnyét a G4dn-nel szemben bemutatták a különböző pontosságú BERT Large modelleknél és a különböző méretű Yolo-v5 modelleknél. A benchmark replikálásához szükséges kódot lásd: NVIDIA Deep Learning példák Tensor magokhoz. Ezek az eredmények azt mutatják, hogy milyen előnyökkel jár a G5 használata a G4dn-nel szemben a különböző modelltípusokat átfogó következtetési feladatok széles körében.
Modell | Pontosság | Csomó méret | Sorozat hossza | Átviteli sebesség (elküldve/mp) | Átmenőképesség: G4dn | Speedup Over G4dn |
BERT-nagy | FP16 | 1 | 128 | 93.5 | 40.31 | 2.3 |
BERT-nagy | FP16 | 4 | 128 | 264.2 | 87.4 | 3.0 |
BERT-nagy | FP16 | 8 | 128 | 392.1 | 107.5 | 3.6 |
BERT-nagy | FP32 | 1 | 128 | 68.4 | 22.67 | 3.0 |
BERT-nagy | 4 | 128 | 118.5 | 32.21 | 3.7 | |
BERT-nagy | 8 | 128 | 132.4 | 34.67 | 3.8 |
Modell | GFLOPS | Paraméterek száma | Előfeldolgozás (ms) | Következtetés (ms) | Következtetés (nem maximális elnyomás) (NMS/kép) |
YOLOv5s | 16.5 | 7.2M | 0.2 | 3.6 | 4.5 |
YOLOv5m | 49.1 | 21M | 0.2 | 6.5 | 4.5 |
YOLOv5l | 109.3 | 46M | 0.2 | 9.1 | 3.5 |
YOLOv5x | 205.9 | 86M | 0.2 | 14.4 | 1.3 |
Következtetés
Ebben a bejegyzésben megmutattuk, hogy a nagy NLP és CV PyTorch modellekre való következtetéshez az EC2 G5 példányok jobb választás a G4dn példányokhoz képest. Bár a G5-példányok igény szerinti óraköltsége magasabb, mint a G4dn-példányoké, nagyobb teljesítménye bármilyen pontossággal 2–5-szörös áteresztőképességet érhet el az NLP- és CV-modellek esetében, ami a millió következtetésenkénti költséget 1.5–3.5-szer kedvezőbbé teszi, mint a G4dn példányok. Még késleltetéshez kötött alkalmazások esetén is a G5 2.5–5-ször jobb, mint a G4dn az NLP és CV modelleknél.
Összefoglalva, az AWS G5 példányok kiváló választást jelentenek a következtetési igények kielégítésére mind a teljesítmény, mind a következtetésenkénti költség szempontjából. A CUDA-keretrendszer univerzalitása, valamint a G5-példánykészlet mérete és mélysége az AWS-en egyedülálló képességet biztosít a nagyarányú következtetések végrehajtására.
A szerzőkről
Ankur Srivastava Sr. Solutions Architect az ML Frameworks csapatában. Arra összpontosít, hogy segítse az ügyfeleket a saját maga által irányított, elosztott képzéssel és az AWS-re vonatkozó széles körű következtetésekkel. Tapasztalatai közé tartozik az ipari prediktív karbantartás, a digitális ikrek, a valószínűségi tervezés optimalizálása, doktori tanulmányait a Rice Egyetem gépészmérnöki szakán, valamint a Massachusetts Institute of Technology posztdoktori kutatását végezte.
Sundar Ranganathan az Amazon EC2 csapatának üzletfejlesztési vezetője, ML Frameworks. Az AWS-szolgáltatások, például az Amazon EKS, az Amazon ECS, az Elastic Fabric Adapter, az AWS Batch és az Amazon SageMaker közötti nagyszabású ML-munkaterhelésekre összpontosít. Tapasztalatai közé tartozik a termékmenedzsment és termékfejlesztés vezetői szerepe a NetApp-nál, a Micron Technology-nál, a Qualcommnál és a Mentor Graphicsnál.
Mahadevan Balasubramaniam az autonóm számítástechnikai megoldások fő építésze, aki közel 20 éves tapasztalattal rendelkezik a fizika által átitatott mély tanulás, a digitális ikerpárok felépítése és telepítése terén nagyszabású ipari rendszerekben. Mahadevan a Massachusetts Institute of Technology-n szerzett gépészmérnöki doktorátust, és több mint 25 szabadalommal és publikációval rendelkezik.
Amr Ragab az AWS-hez készült EC2 Accelerated Platforms fő megoldástervezője, aki arra törekszik, hogy segítse az ügyfeleket a számítási feladatok nagyarányú futtatásában. Szabadidejében szeret utazni, és új módszereket keres a technológia mindennapi életbe való integrálására.
- Haladó (300)
- AI
- ai művészet
- ai art generátor
- van egy robotod
- Amazon EC2
- mesterséges intelligencia
- mesterséges intelligencia tanúsítás
- mesterséges intelligencia a bankszektorban
- mesterséges intelligencia robot
- mesterséges intelligencia robotok
- mesterséges intelligencia szoftver
- AWS gépi tanulás
- blockchain
- blokklánc konferencia ai
- coingenius
- társalgási mesterséges intelligencia
- kriptokonferencia ai
- dall's
- mély tanulás
- google azt
- gépi tanulás
- Plató
- plato ai
- Platón adatintelligencia
- Platón játék
- PlatoData
- platogaming
- skála ai
- szintaxis
- zephyrnet