Zmierz czas tego, co naprawdę robi Twoja aplikacja
Test na tensorach już obecnych na GPU opisuje wyłącznie samo obliczenie. Usługa lub trening musi także dekodować, przygotowywać i przesyłać swoje dane wejściowe. Zbuduj więc dwa pomiary: izolowaną pętlę obliczeniową oraz pętlę wychodzącą od twoich zwykłych danych. Różnica wskazuje, gdzie szukać usprawnień. Poczekaj na faktyczne zakończenie pracy GPU, zanim odczytasz czas; wywołania CUDA są często asynchroniczne.
Traktuj batch jako zmienną kontrolowaną
W przypadku wnioskowania offline porównaj kilka rozmiarów batcha, zachowując długość i typ danych wejściowych. W przypadku aplikacji interaktywnej zmierz również opóźnienie pojedynczego żądania oraz najwolniejszych żądań. Batch maksymalizujący przepustowość może sprawić, że oczekiwanie stanie się mniej akceptowalne. Na 80 GB zarezerwuj miejsce na cache lub aktywacje, zamiast kończyć szacowanie na wczytaniu modelu.
Zapisuj osobno precyzję wag i precyzję obliczeń. Model przechowywany w zredukowanym formacie może nadal używać buforów lub operacji o wyższej precyzji podczas działania.
Porównuj, nie utożsamiając wariantów H100
Karta dotyczy H100 PCIe 80 GB. Wyniki H100 SXM lub zestawu kilku kart nie opisują automatycznie tej konfiguracji. Sprawdź CUDA, PyTorch i biblioteki specjalistyczne dla swojej architektury, a następnie wybierz wspólną receptę dla porównywanych GPU. Jeśli 80 GB nie wystarcza, rozważ H200; jeśli potrzeba mieści się w 48 GB, dodaj L40S do swojego porównania ekonomicznego.
Przygotuj polecenie zorientowane na pipeline
Trzy dni mogą posłużyć do zidentyfikowania udziału obliczeń i transferów. Siedem dni pozwala przetestować poprawki i powtórzyć pomiary. Trzydzieści dni towarzyszy kampanii inferencji lub zaplanowanemu treningowi. Wybierz czas trwania i ilość, podaj swoje środowisko, a następnie dane do śledzenia. Instrukcje krypto zamówienia określają sieć i kwotę; przycisk „Zapłaciłem” sygnalizuje Twój transfer.