W tym blogu skupimy się na sposobach zwiększenia wykorzystania procesora graficznego w PyTorch.
Jak zwiększyć wykorzystanie procesora graficznego w PyTorch?
Istnieje kilka technik, które można zastosować w celu zwiększenia wykorzystania procesora graficznego i zapewnienia wykorzystania najlepszych zasobów sprzętowych do przetwarzania złożonych modeli uczenia maszynowego. Taktyki te obejmują edycję kodu i wykorzystanie funkcji PyTorch. Poniżej wymieniono kilka ważnych wskazówek i wskazówek:
- Ładowanie danych i rozmiarów partii
- Modele mniej zależne od pamięci
- Błyskawica PyTorcha
- Dostosuj ustawienia środowiska wykonawczego w Google Colab
- Wyczyść pamięć podręczną w celu optymalizacji
Ładowanie danych i rozmiarów partii
„ Ładowarka danych ” w PyTorch służy do definiowania specyfikacji danych, które mają być ładowane do procesora przy każdym przejściu do przodu modelu głębokiego uczenia się. Większy ' wielkość partii ” danych będzie wymagało większej mocy obliczeniowej i zwiększy wykorzystanie dostępnego procesora graficznego.
Poniżej podana jest składnia przypisania modułu Dataloader o określonej wielkości wsadu w PyTorch do zmiennej niestandardowej:
Zwiększenie_GPU_Utilization = Moduł ładowania danych ( rozmiar_partii = 32 )
Modele mniej zależne od pamięci
Każda architektura modelu wymaga innej objętości „ pamięć ”, aby działać na optymalnym poziomie. Modele, które wydajnie zużywają mniej pamięci na jednostkę czasu, są w stanie pracować z wsadami o znacznie większych rozmiarach niż inne.
Błyskawica PyTorcha
PyTorch ma zmniejszoną wersję, która jest „ Błyskawica PyTorcha ”. Jest zoptymalizowany pod kątem błyskawicznej wydajności, jak widać po jego nazwie. Lightning domyślnie korzysta z procesorów graficznych i oferuje znacznie szybsze przetwarzanie modeli uczenia maszynowego. Główną zaletą Lightning jest brak wymagań dotyczących szablonowego kodu, który mógłby utrudniać przetwarzanie.
Zaimportuj niezbędne biblioteki do projektu PyTorch, stosując składnię podaną poniżej:
! pip zainstaluj latarkę
! pip zainstaluj pytorch - Błyskawica
import latarka
import pytorch_lightning
Dostosuj ustawienia środowiska wykonawczego w Google Colab
Google Colaboratory to środowisko IDE w chmurze, które zapewnia użytkownikom bezpłatny dostęp do procesora graficznego w celu opracowywania modeli PyTorch. Domyślnie projekty Colab działają na procesorze, ale ustawienia można zmienić.
Otwórz notatnik Colab, przejdź do „ Czas wykonania ” na pasku menu i przewiń w dół do opcji „ Zmień ustawienia środowiska wykonawczego ”:
Następnie wybierz „GPU T4” opcję i kliknij „ Ratować ”, aby zastosować zmiany w celu wykorzystania procesora graficznego:
Wyczyść pamięć podręczną w celu optymalizacji
PyTorch umożliwia użytkownikom wyczyszczenie pamięci podręcznej, aby móc zwolnić miejsce na uruchomienie nowych procesów. „ Pamięć podręczna ” przechowuje dane i informacje o uruchomionych modelach, dzięki czemu można zaoszczędzić czas, który zostanie poświęcony na ponowne załadowanie tych modeli. Wyczyszczenie pamięci podręcznej zapewnia użytkownikom więcej miejsca na uruchamianie nowych modeli.
Polecenie wyczyszczenia pamięci podręcznej GPU podano poniżej:
latarka. różny . pusta_cache ( )
Te wskazówki służą do optymalizacji działania modeli uczenia maszynowego z procesorami graficznymi w PyTorch.
Wskazówka profesjonalna
Google Colab umożliwia swoim użytkownikom dostęp do szczegółowych informacji na temat wykorzystania procesora graficznego poprzez „ nvidia ”, aby uzyskać informacje o tym, gdzie wykorzystywane są zasoby sprzętowe. Polecenie wyświetlania szczegółów wykorzystania procesora GPU podano poniżej:
! nvidia - uśmiech
Powodzenie! Właśnie zademonstrowaliśmy kilka sposobów na zwiększenie wykorzystania GPU w PyTorch.
Wniosek
Zwiększ wykorzystanie procesora graficznego w PyTorch, usuwając pamięć podręczną, używając PyTorch Lightning, dostosowując ustawienia środowiska wykonawczego, używając wydajnych modeli i optymalnych rozmiarów wsadów. Techniki te znacznie przyczyniają się do zapewnienia najlepszego działania modeli głębokiego uczenia się oraz możliwości wyciągania prawidłowych wniosków i wniosków z dostępnych danych. Zademonstrowaliśmy techniki zwiększające wykorzystanie procesora graficznego.