← Wszystkie projekty

Vesuvius Challenge

Poprawka i porównanie pomiarowe dla oficjalnych narzędzi, które na Apple Silicon bez ostrzeżenia wybierały CPU mimo dostępnego MPS.

  • Python
  • PyTorch
  • Apple MPS
Poprawka przygotowana

Projekt

Przygotowałem poprawkę dodającą MPS do wyboru urządzenia w oficjalnych narzędziach villa. Obejmuje ona inferencję wykrywania atramentu i obsługę mieszanej precyzji, miary z rodziny Dice oraz automatyczny wybór urządzenia w lasagna.

Jak to działa

Zobacz, jak to działaŚledź ruch na diagramie lub przewijaj kolejne etapy.Ruch jest wyłączony. Nadal możesz wybierać etapy.

Przygotowanie tych samych danych

Przygotowywany jest ten sam wycinek zwoju i wytrenowany model, a dostępne urządzenia obliczeniowe są sprawdzane.

Wybór dostępnego urządzenia

Poprawka sprawdza najpierw CUDA dla GPU firmy NVIDIA, potem MPS dla GPU firmy Apple; gdy żadna ścieżka nie jest dostępna, wybiera CPU.

Porównanie czasu i obrazów

CPU i MPS otrzymują te same dane; zapisywane są czas wykonania, różnice pikseli w obrazach wykrytego atramentu oraz ustawienia precyzji obliczeń.

Porównanie wykorzystuje ten sam rzeczywisty segment, wycinek i punkt kontrolny modelu na CPU oraz po poprawce na MPS. Oprócz czasu wykonania porównano obrazy wyjściowe piksel po pikselu.

W materiale odnotowano różną precyzję obliczeń na CPU i MPS. Szkice zgłoszenia i opisu do nagrody łączą przyczynę problemu, poprawkę oraz warunki odtworzenia wyniku.

Co wynika z dokumentacji

W przeprowadzonym porównaniu ścieżka MPS po poprawce była około 9,7 raza szybsza od CPU. Poprawka i pomiary stanowią przygotowywany materiał do zgłoszenia do Progress Prize.

Zmienione pliki
6 plików
Zmienione wiersze
+28 / −9 wierszy
Przyspieszenie MPS względem CPU
Około 9,7×

Zakres

Pomiar dotyczy tych warunków inferencji i nie oznacza odczytania nowego tekstu.