Täna on meil hea meel avaldada eelvaade Amazon SageMaker Profiler, võime Amazon SageMaker mis annab üksikasjaliku ülevaate AWS-i arvutusressurssidest, mis on ette nähtud SageMakeris süvaõppemudelite treenimise ajal. SageMaker Profileri abil saate jälgida kõiki protsessoritel ja GPU-del toimuvaid tegevusi, nagu protsessori ja GPU kasutust, kerneli töötamist GPU-del, tuuma käivitamist CPU-del, sünkroonimistoiminguid, GPU-de mälutoiminguid, kerneli käivitamise ja vastavate käitamiste vahelisi latentsusaegu ning andmeedastust. CPU-de ja GPU-de vahel. Selles postituses tutvustame teile SageMaker Profileri võimalusi.
SageMaker Profiler pakub Pythoni mooduleid PyTorchi või TensorFlow treeningskriptide märkimiseks ja SageMaker Profileri aktiveerimiseks. Samuti pakub see kasutajaliidest (UI), mis visualiseerib profiil, profileeritud sündmuste statistiline kokkuvõte ja koolitustöö ajaskaala GPU-de ja CPU-de vaheliste sündmuste ajalise seose jälgimiseks ja mõistmiseks.
Koolitustööde profileerimise vajadus
Süvaõppe (DL) levikuga on masinõpe (ML) muutunud arvutus- ja andmemahukaks, mis nõuab tavaliselt mitme sõlme ja mitme GPU klastreid. Kuna tipptasemel mudelid kasvavad triljonite parameetrite suurusjärgus, suureneb kiiresti ka nende arvutuslik keerukus ja maksumus. ML-praktikud peavad selliste suurte mudelite koolitamisel toime tulema tavaliste ressursside tõhusa kasutamise väljakutsetega. See on eriti ilmne suurte keelemudelite (LLM) puhul, millel on tavaliselt miljardeid parameetreid ja mis seetõttu vajavad nende tõhusaks koolitamiseks suuri mitme sõlmega GPU klastreid.
Nende mudelite treenimisel suurtel arvutusklastritel võime kokku puutuda arvutusressursside optimeerimise väljakutsetega, nagu I/O kitsaskohad, kerneli käivitamise latentsused, mälupiirangud ja madal ressursikasutus. Kui koolitustöö konfiguratsiooni ei optimeerita, võivad need väljakutsed põhjustada riistvara ebaefektiivset kasutamist ja pikemaid koolitusaegasid või mittetäielikke koolitusi, mis suurendavad projekti üldkulusid ja ajakavasid.
Eeldused
SageMaker Profileri kasutamise alustamise eeltingimused on järgmised:
- SageMakeri domeen teie AWS-i kontol – Juhiste saamiseks domeeni seadistamise kohta vt Kiirseadistuse abil Amazon SageMakeri domeenis. Samuti peate lisama domeeni kasutajaprofiilid üksikute kasutajate jaoks, et pääseda juurde rakendusele SageMaker Profiler UI. Lisateabe saamiseks vt Lisage ja eemaldage SageMakeri domeeni kasutajaprofiile.
- Õigused – Järgmine loend on minimaalne õiguste kogum, mis tuleks SageMaker Profiler UI rakenduse täitmisrollile määrata:
sagemaker:CreateApp
sagemaker:DeleteApp
sagemaker:DescribeTrainingJob
sagemaker:SearchTrainingJobs
s3:GetObject
s3:ListBucket
Valmistage ette ja viige läbi SageMaker Profiler koolitustöö
GPU-del kerneli töötamise hõivamiseks treeningtöö ajal muutke oma treeningskripti SageMaker Profiler Pythoni moodulite abil. Importige raamatukogu ja lisage start_profiling()
ja stop_profiling()
meetodid profileerimise alguse ja lõpu määratlemiseks. Saate kasutada ka valikulisi kohandatud märkusi, et lisada koolitusskripti markereid, et visualiseerida riistvarategevusi iga etapi konkreetsete toimingute ajal.
SageMaker Profileri abil saate oma treeningskripte profileerida kahel viisil. Esimene lähenemisviis põhineb täisfunktsioonide profileerimisel; teine lähenemisviis põhineb funktsioonide spetsiifiliste koodiridade profileerimisel.
Funktsioonide järgi profiili loomiseks kasutage kontekstihaldurit smppy.annotate
täisfunktsioonide märkimiseks. Järgmine näidisskript näitab, kuidas rakendada kontekstihaldurit koolitustsükli ja täisfunktsioonide mähkimiseks igas iteratsioonis:
Vous pouvez aussi kasutamine smppy.annotation_begin()
ja smppy.annotation_end()
funktsioonide konkreetsete koodiridade märkimiseks. Lisateabe saamiseks vaadake dokumentatsioon.
Konfigureerige SageMakeri koolitustööde käivitaja
Pärast märkuste lisamist ja profiilide käivitamise moodulite seadistamist salvestage koolitusskript ja valmistage ette SageMakeri raamistiku hindaja SageMaker Python SDK abil treenimiseks.
- Seadistage a
profiler_config
objekti kasutadesProfilerConfig
jaProfiler
moodulid järgmiselt: - Looge SageMakeri hindaja
profiler_config
eelmises etapis loodud objekt. Järgmine kood näitab PyTorchi hindaja loomise näidet:
Kui soovite luua TensorFlow hindaja, importige sagemaker.tensorflow.TensorFlow
selle asemel ja määrake üks SageMaker Profileri toetatud TensorFlow versioonidest. Lisateavet toetatud raamistike ja eksemplaritüüpide kohta vt Toetatud raamistikud.
- Alustage treeningtööd, käivitades sobivusmeetodi:
Käivitage SageMaker Profileri kasutajaliides
Kui koolitustöö on lõpetatud, saate käivitada SageMaker Profileri kasutajaliidese, et visualiseerida ja uurida koolitustöö profiili. SageMaker Profileri kasutajaliidese rakendusele pääsete juurde SageMakeri konsooli sihtlehe kaudu või SageMakeri domeeni kaudu.
Rakenduse SageMaker Profiler UI käivitamiseks SageMakeri konsoolil tehke järgmist.
- Valige SageMakeri konsoolil Profiler navigeerimispaanil.
- alla Alustamine, valige domeen, milles soovite käivitada rakenduse SageMaker Profiler UI.
Kui teie kasutajaprofiil kuulub ainult ühele domeenile, ei näe te domeeni valimise võimalust.
- Valige kasutajaprofiil, mille jaoks soovite käivitada kasutajaliidese rakenduse SageMaker Profiler.
Kui domeenis pole kasutajaprofiili, valige Loo kasutajaprofiil. Lisateavet uue kasutajaprofiili loomise kohta vt Kasutajaprofiilide lisamine ja eemaldamine.
- Vali Avage Profiler.
Te saate ka käivitage domeeni üksikasjade lehelt SageMaker Profileri kasutajaliides.
Saate SageMaker Profilerilt teadmisi saada
Kui avate SageMaker Profileri kasutajaliidese, kuvatakse Valige ja laadige profiil leht avaneb, nagu on näidatud järgmisel ekraanipildil.
Saate vaadata kõigi SageMaker Profilerile esitatud koolitustööde loendit ja otsida konkreetset koolitustööd selle nime, loomise aja ja tööoleku järgi (Käimas, Lõpetatud, Ebaõnnestunud, Peatatud või Peatatud). Profiili laadimiseks valige koolitustöö, mida soovite vaadata, ja valige Koormus. Töö nimi peaks ilmuma Laaditud profiil jaotis ülaosas.
Valige armatuurlaua ja ajaskaala loomiseks töö nimi. Pange tähele, et kui valite töö, avab kasutajaliides automaatselt armatuurlaua. Saate laadida ja visualiseerida ühe profiili korraga. Teise profiili laadimiseks peate esmalt maha laadima varem laaditud profiili. Profiili mahalaadimiseks valige prügikasti ikoon Laaditud profiil sektsiooni.
Selle postituse jaoks vaatame kasutaja profiili ALBEF koolitustöö kahel ml.p4d.24xsuurel eksemplaril.
Kui olete koolitustöö laadimise ja valimise lõpetanud, avaneb kasutajaliides armatuurlaud lehel, nagu on näidatud järgmisel ekraanipildil.
Näete põhimõõdikute graafikuid, nimelt GPU aktiivset aega, GPU kasutust aja jooksul, CPU aktiivset aega ja CPU kasutust aja jooksul. GPU aktiivse aja sektordiagramm näitab GPU aktiivse aja protsenti võrreldes GPU jõudeolekuajaga, mis võimaldab meil kontrollida, kas GPU-d on kogu koolitustöö jooksul aktiivsemad kui jõudeolekus.. GPU kasutamise ajaskaala graafik näitab keskmist GPU kasutusmäära aja jooksul sõlme kohta, koondades kõik sõlmed ühte diagrammi. Saate kontrollida, kas GPU-del on teatud ajavahemike jooksul tasakaalustamata töökoormus, alakasutusprobleemid, kitsaskohad või tühikäiguprobleemid. Nende mõõdikute tõlgendamise kohta lisateabe saamiseks vaadake dokumentatsioon.
Armatuurlaud pakub teile täiendavaid graafikuid, sealhulgas kõigi GPU tuumade kulutatud aeg, 15 parima GPU tuuma kulutatud aeg, kõigi GPU tuumade käivituste arv ja 15 parima GPU tuuma käivitamise arv, nagu on näidatud järgmisel ekraanipildil.
Lõpuks võimaldab armatuurlaud visualiseerida täiendavaid mõõdikuid, näiteks sammuaja jaotust, mis on histogramm, mis näitab sammude kestuste jaotust GPU-des, ja tuuma täppisjaotuse sektordiagrammi, mis näitab tuumade käitamisele kulunud aja protsenti. erinevates andmetüüpides, nagu FP32, FP16, INT32 ja INT8.
Samuti saate hankida GPU tegevuste jaotuse sektordiagrammi, mis näitab GPU tegevustele kulutatud aja protsenti, nagu tuumade käitamine, mälu (memcpy
ja memset
) ja sünkroonimine (sync
). Saate visualiseerida GPU mälutoimingutele kulutatud aja protsenti GPU mäluoperatsioonide jaotuse sektordiagrammist.
Saate luua ka oma histogramme kohandatud mõõdiku põhjal, mille olete käsitsi märkinud, nagu selles postituses varem kirjeldatud. Uuele histogrammile kohandatud märkuse lisamisel valige või sisestage treeningskripti lisatud märkuse nimi.
Ajaskaala liides
SageMaker Profileri kasutajaliides sisaldab ka ajaskaala liidest, mis annab teile üksikasjaliku ülevaate arvutusressurssidest protsessoritel ajastatud ja GPU-del töötavate toimingute ja tuumade tasemel. Ajaskaala on korraldatud puustruktuuris, mis annab teile teavet hostitasemest seadme tasemeni, nagu on näidatud järgmisel ekraanipildil.
Iga protsessori puhul saate jälgida protsessori jõudluse loendureid, näiteks clk_unhalted_ref.tsc
ja itlb_misses.miss_causes_a_walk
. Iga 2x p4d.24xlarge eksemplari GPU jaoks näete hosti ajaskaalat ja seadme ajaskaalat. Kerneli käivitamised toimuvad hosti ajaskaalal ja kerneli käivitamised seadme ajaskaalal.
Saate ka üksikuid samme sisse suumida. Järgmisel ekraanipildil oleme suuminud sammule_41. Järgmisel ekraanipildil valitud ajaskaala riba on AllReduce
toiming, mis on hajutatud koolituse oluline side- ja sünkroonimisetapp, töötab GPU-0-l. Ekraanipildil pange tähele, et tuuma käivitamine GPU-0 hostis ühendub tuumaga, mis töötab GPU-0 seadme voos 1, mis on tähistatud tsüaanvärvi noolega.
Kättesaadavus ja kaalutlused
SageMaker Profiler on saadaval PyTorchis (versioonid 2.0.0 ja 1.13.1) ja TensorFlow (versioonid 2.12.0 ja 2.11.1). Järgmises tabelis on lingid toetatavatele AWS-i süvaõppekonteinerid SageMakeri jaoks.
Raamistik | versioon | AWS DLC pildi URI |
PyTorch | 2.0.0 | 763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-training:2.0.0-gpu-py310-cu118-ubuntu20.04-sagemaker |
PyTorch | 1.13.1 | 763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-training:1.13.1-gpu-py39-cu117-ubuntu20.04-sagemaker |
TensorFlow | 2.12.0 | 763104351884.dkr.ecr.<region>.amazonaws.com/tensorflow-training:2.12.0-gpu-py310-cu118-ubuntu20.04-sagemaker |
TensorFlow | 2.11.1 | 763104351884.dkr.ecr.<region>.amazonaws.com/tensorflow-training:2.11.1-gpu-py39-cu112-ubuntu20.04-sagemaker |
SageMaker Profiler on praegu saadaval järgmistes piirkondades: USA idaosa (Ohio, N. Virginia), USA lääneosa (Oregon) ja Euroopa (Frankfurt, Iirimaa).
SageMaker Profiler on saadaval koolituseksemplaride tüüpides ml.p4d.24xlarge, ml.p3dn.24xlarge ja ml.g4dn.12xlarge.
Toetatud raamistike ja versioonide täieliku loendi leiate aadressilt dokumentatsioon.
SageMaker Profiler võtab tasu pärast SageMakeri tasuta taseme või funktsiooni tasuta prooviperioodi lõppu. Lisateabe saamiseks vt Amazon SageMakeri hinnakujundus.
SageMaker Profileri jõudlus
Võrdlesime SageMaker Profileri üldkulusid erinevate avatud lähtekoodiga profileerijatega. Võrdluseks kasutatud lähteväärtus saadi koolitustöö läbiviimisest ilma profileerijata.
Meie peamine järeldus näitas, et SageMaker Profiler andis üldiselt tulemuseks lühema arveldatava treeningu kestuse, kuna sellel oli lõpp-otsani treeningutel vähem üldkulusid. Võrreldes avatud lähtekoodiga alternatiividega genereeris see ka vähem profiiliandmeid (kuni 10 korda vähem). SageMaker Profileri loodud väiksemad profileerimisartefaktid nõuavad vähem salvestusruumi, säästes seeläbi ka kulusid.
Järeldus
SageMaker Profiler võimaldab teil saada üksikasjalikku teavet arvutusressursside kasutamise kohta süvaõppemudelite treenimisel. See võimaldab teil lahendada jõudluse levialad ja kitsaskohad, et tagada ressursside tõhus kasutamine, mis lõpuks vähendab koolituskulusid ja lühendab koolituse üldist kestust.
SageMaker Profileri kasutamise alustamiseks vaadake dokumentatsioon.
Autoritest
Roy Allela on Saksamaal Münchenis asuva AWS-i vanem AI/ML spetsialistilahenduste arhitekt. Roy aitab AWS-i klientidel – alates väikestest idufirmadest kuni suurte ettevõteteni – AWS-is tõhusalt koolitada ja juurutada suuri keelemudeleid. Roy on kirglik arvutuslike optimeerimisprobleemide ja tehisintellekti töökoormuste jõudluse parandamise vastu.
Sushant Moon on Indias AWS-i andmeteadlane, kes on spetsialiseerunud klientide juhendamisele nende tehisintellekti/ML-i ettevõtmistes. Jaekaubanduse, rahanduse ja kindlustuse valdkonda hõlmava mitmekesise taustaga pakub ta uuenduslikke ja kohandatud lahendusi. Lisaks oma tööelule leiab Sushant noorendamist ujumisest ja otsib inspiratsiooni oma reisidelt erinevatesse kohtadesse.
Diksha Sharma on AI/ML Specialist Solutions Arhitekt ülemaailmses spetsialistide organisatsioonis. Ta teeb koostööd avaliku sektori klientidega, et aidata neil luua tõhusaid, turvalisi ja skaleeritavaid masinõpperakendusi, sealhulgas generatiivseid AI-lahendusi AWS-is. Vabal ajal armastab Diksha lugeda, maalida ja perega aega veeta.
- SEO-põhise sisu ja PR-levi. Võimenduge juba täna.
- PlatoData.Network Vertikaalne generatiivne Ai. Jõustage ennast. Juurdepääs siia.
- PlatoAiStream. Web3 luure. Täiustatud teadmised. Juurdepääs siia.
- PlatoESG. Autod/elektrisõidukid, Süsinik, CleanTech, Energia, Keskkond päikeseenergia, Jäätmekäitluse. Juurdepääs siia.
- PlatoTervis. Biotehnoloogia ja kliiniliste uuringute luureandmed. Juurdepääs siia.
- ChartPrime. Tõsta oma kauplemismängu ChartPrime'iga kõrgemale. Juurdepääs siia.
- BlockOffsets. Keskkonnakompensatsiooni omandi ajakohastamine. Juurdepääs siia.
- Allikas: https://aws.amazon.com/blogs/machine-learning/announcing-the-preview-of-amazon-sagemaker-profiler-track-and-visualize-detailed-hardware-performance-data-for-your-model-training-workloads/
- :on
- :on
- :mitte
- $ UP
- 1
- 10
- 100
- 11
- 12
- 125
- 13
- 15%
- 17
- 20
- 7
- 9
- a
- MEIST
- juurdepääs
- üle
- aktiveerimine
- aktiivne
- tegevus
- tegevus
- lisama
- lisatud
- lisades
- Täiendavad lisad
- pärast
- vastu
- liitmine
- AI
- AI / ML
- Materjal: BPA ja flataatide vaba plastik
- Ka
- alternatiive
- Amazon
- Amazon SageMaker
- Amazon Web Services
- an
- ja
- Teatama
- Kuulutades
- Teine
- mistahes
- ilmuma
- taotlus
- rakendused
- lähenemine
- lähenemisviisid
- OLEME
- AS
- määratud
- At
- automaatselt
- saadaval
- keskmine
- AWS
- tagapõhi
- põhineb
- Baseline
- BE
- sest
- muutuma
- olnud
- Algus
- kuulub
- vahel
- Peale
- miljardeid
- BIN
- by
- CAN
- võimeid
- võime
- Püüdmine
- kindel
- väljakutseid
- koormuste
- Joonis
- kontrollima
- Vali
- kood
- ühine
- KOMMUNIKATSIOON
- võrreldes
- võrdlus
- täitma
- Lõpetatud
- keerukus
- Arvutama
- konfiguratsioon
- ühendab
- konsool
- Konteinerid
- kontekst
- Vastav
- Maksma
- kulud
- loendurid
- looma
- loodud
- loomine
- loomine
- Praegu
- tava
- Kliendid
- cyan
- armatuurlaud
- andmed
- andmeteadlane
- sügav
- sügav õpe
- määratlema
- annab
- juurutada
- kirjeldatud
- üksikasjalik
- detailid
- seade
- erinev
- jagatud
- jagatud koolitus
- jaotus
- mitu
- domeen
- Domeenid
- tehtud
- alla
- ajam
- kestus
- ajal
- iga
- Ajalugu
- Ida
- tõhus
- tõhusalt
- võimaldama
- võimaldab
- lõpp
- Lõpuks-lõpuni
- püüdlused
- lõppeb
- tagama
- sisene
- Kogu
- kanne
- epohh
- ajajärgud
- oluline
- Euroopa
- sündmused
- ilmne
- näide
- täitmine
- uurima
- Ebaõnnestunud
- pere
- tunnusjoon
- rahastama
- leidmine
- leiab
- lõpetama
- esimene
- sobima
- Järel
- järgneb
- eest
- edasi
- Raamistik
- raamistikud
- tasuta
- tasuta prooviversioon
- Alates
- täis
- funktsioonid
- üldiselt
- tekitama
- loodud
- generatiivne
- Generatiivne AI
- Saksamaa
- saama
- andmine
- GPU
- GPU
- graafik
- Kasvama
- olnud
- riistvara
- Olema
- he
- aitama
- aitab
- siin
- tema
- võõrustaja
- Kuidas
- Kuidas
- HTML
- http
- HTTPS
- i
- ICON
- Idle
- if
- pilt
- rakendada
- import
- Paranemist
- in
- hõlmab
- Kaasa arvatud
- Suurendama
- India
- osutatud
- eraldi
- ebaefektiivne
- info
- uuenduslik
- sisendite
- teadmisi
- Inspiratsioon
- Näiteks
- selle asemel
- juhised
- kindlustus
- Interface
- sisse
- Iirimaa
- küsimustes
- IT
- iteratsioon
- ITS
- töö
- Tööturg
- jpg
- Võti
- Labels
- maandumine
- keel
- suur
- algatama
- käivitab
- õppimine
- vähem
- Tase
- Raamatukogu
- elu
- piirid
- liinid
- lingid
- nimekiri
- koormus
- laadimine
- enam
- kaotus
- armastab
- Madal
- masin
- masinõpe
- juht
- käsitsi
- Mälu
- meetod
- meetodid
- meetriline
- Meetrika
- miinimum
- ML
- mudel
- mudelid
- muutma
- Moodulid
- rohkem
- peab
- nimi
- nimelt
- NAVIGATSIOON
- Vajadus
- Uus
- ei
- sõlme
- sõlmed
- objekt
- saama
- saadud
- of
- Pakkumised
- Ohio
- on
- ONE
- ainult
- avatud
- avatud lähtekoodiga
- Avaneb
- töö
- Operations
- optimeerimine
- optimeeritud
- valik
- or
- et
- Oregon
- organisatsioon
- Korraldatud
- üle
- üldine
- enda
- lehekülg
- pane
- parameetrid
- eriline
- eriti
- kirglik
- kohta
- protsent
- jõudlus
- periood
- Õigused
- Platon
- Platoni andmete intelligentsus
- PlatoData
- hea meel
- Punkt
- post
- Täpsus
- Valmistama
- eeldused
- Eelvaade
- eelmine
- varem
- probleeme
- professionaalne
- profiil
- profiilid
- profiilide
- Edu
- projekt
- annab
- avalik
- Python
- pütorch
- Kiire
- kiiresti
- määr
- Lugenud
- vähendama
- piirkondades
- noorendamine
- suhe
- kõrvaldama
- nõudma
- ressurss
- Vahendid
- kaasa
- jaemüük
- Revealed
- Tõusma
- Roll
- Roy
- jooks
- jooksmine
- jookseb
- salveitegija
- Säästa
- säästmine
- skaalautuvia
- plaanitud
- teadlane
- skripte
- SDK
- Otsing
- Teine
- Osa
- sektor
- kindlustama
- vaata
- Otsib
- väljavalitud
- valides
- vanem
- Teenused
- komplekt
- kehtestamine
- ta
- peaks
- näidatud
- Näitused
- ühekordne
- SUURUS
- väike
- väiksem
- Lahendused
- allikas
- Pinge
- spetsialist
- spetsialiseerunud
- konkreetse
- kulutama
- kasutatud
- algus
- alustatud
- Alustavatel
- modernne
- statistiline
- olek
- Samm
- Sammud
- peatatud
- peatumine
- ladustamine
- oja
- struktuur
- esitatud
- selline
- KOKKUVÕTE
- Toetatud
- Sünkroonimine
- tabel
- kohandatud
- Võtma
- tensorivool
- kui
- et
- .
- oma
- Neile
- Seal.
- sellega
- seetõttu
- Need
- see
- Läbi
- läbi kogu
- rida
- aeg
- ajakava
- ajajooned
- korda
- et
- ülemine
- jälgida
- Jälgimine
- Rong
- koolitus
- üle
- reisib
- puu
- kohtuprotsess
- triljoneid
- kaks
- liigid
- tüüpiliselt
- ui
- lõpuks
- mõistmine
- us
- kasutama
- Kasutatud
- Kasutaja
- Kasutajaliides
- Kasutajad
- kasutamine
- eri
- versioon
- versioonid
- vaade
- virginia
- vs
- tahan
- oli
- we
- web
- veebiteenused
- Läände
- millal
- mis
- kuigi
- will
- koos
- ilma
- töötab
- ülemaailmne
- oleks
- pakkima
- sa
- Sinu
- sephyrnet
- zoom