NVIDIA DGX Spark vs Mac Studio vs RTX-4080: Porównanie wydajności Ollama

Wyniki testów GPT-OSS 120b na trzech platformach AI

Page content

Znalazłem pewne ciekawe testy wydajności GPT-OSS 120b działającego na Ollama na trzech różnych platformach: NVIDIA DGX Spark, Mac Studio, i RTX 4080. Model GPT-OSS 120b z biblioteki Ollama waży 65 GB, co oznacza, że nie mieści się w 16 GB VRAM na RTX 4080 (ani w nowszej RTX 5080).

Tak, model może działać z częściowym przekazaniem do procesora, a jeśli masz 64 GB pamięci systemowej (jak ja), możesz spróbować. Jednak taka konfiguracja nie będzie w żaden sposób gotowa do produkcji. Dla naprawdę wymagających zadań może być potrzebna coś takiego jak NVIDIA DGX Spark, który został zaprojektowany specjalnie do intensywnych obciążeń AI.

Dla większej ilości informacji na temat wydajności LLM – przepustowości vs opóźnienia, ograniczenia VRAM i testy wydajności na różnych sprzęcie i środowiskach – zobacz Wydajność LLM: Testy, Bottlenecks i Optymalizacja.

7 llamas

Spodziewałem się, że ten LLM znacząco skorzysta z działania na urządzeniu o dużej pamięci RAM, jak DGX Spark. Choć wyniki są dobre, to nie są tak znacznie lepsze, jak można by się spodziewać, biorąc pod uwagę różnicę cen między DGX Spark a bardziej dostępnymi opcjami.

TL;DR

Ollama z GPT-OSS 120b porównanie wydajności na trzech platformach:

Urządzenie Wydajność oceny promptów (tokeny/s) Wydajność generowania (tokeny/s) Uwagi
NVIDIA DGX Spark 1159 41 Najlepsza ogólna wydajność, pełna akceleracja GPU
Mac Studio Nieznana 34 → 6 Jeden test wykazał pogorszenie się zwiększeniem rozmiaru kontekstu
RTX 4080 969 12,45 78% CPU / 22% GPU ze względu na ograniczenia VRAM

Specyfikacja modelu:

  • Model: GPT-OSS 120b
  • Parametry: 117B (architektura Mixture-of-Experts)
  • Aktywne parametry na przejściu: 5,1B
  • Kwantyzacja: MXFP4
  • Rozmiar modelu: 65 GB

To podobne do innych modeli MoE, takich jak Qwen3:30b, ale na znacznie większą skalę.

GPT-OSS 120b na NVIDIA DGX Spark

Dane wydajności LLM dla NVIDIA DGX Spark pochodzą z oficjalnego wpisu bloga Ollama (podanego poniżej w sekcji “Warto przeczytać”). DGX Spark reprezentuje wejście NVIDIA do rynku osobistych superkomputerów AI, z 128 GB jednolitej pamięci specjalnie zaprojektowanej do działania dużych modeli językowych.

ollama na dgx spark wydajność

Wydajność GPT-OSS 120b wygląda imponująco, 41 tokenów/s w generowaniu. To czyni z niego wyraźnego zwycięzczę w tym konkretnym modelu, pokazując, że dodatkowa pojemność pamięci może naprawdę wpływać na bardzo duże modele.

Jednak wydajność modeli średnich i dużych nie wygląda tak zachęcająco. To szczególnie widoczne w przypadku Qwen3:32b i Llama3.1:70b – dokładnie tych modeli, w których można się spodziewać, że wysoka pojemność pamięci RAM będzie miała znaczenie. Wydajność tych modeli na DGX Spark nie jest zachęcająca w porównaniu do premii cenowej. Jeśli głównie pracujesz z modelami w zakresie 30–70B parametrów, możesz rozważyć alternatywy, takie jak dobrze skonfigurowany stanowisko lub nawet Quadro RTX 5880 Ada z jego 48 GB VRAM.

GPT-OSS 120b na Mac Studio Max

Kanał YouTube Slinging Bits przeprowadził szczegółowe testy działania GPT-OSS 120b na Ollama z różnymi rozmiarami kontekstu. Wyniki ujawniają poważny problem wydajności: szybkość generowania spadła znacząco z 34 tokenów/s do zaledwie 6 tokenów/s zwiększając się rozmiar kontekstu.

To pogorszenie wydajności prawdopodobnie wynika z presji pamięci i sposobu, w jaki macOS zarządza architekturą jednolitej pamięci. Choć Mac Studio Max ma imponującą jednolitą pamięć (do 192 GB w konfiguracji M2 Ultra), sposób, w jaki radzi sobie z bardzo dużymi modelami przy rosnących obciążeniach kontekstowym, różni się znacząco od dedykowanej VRAM GPU.

ollama z gpt-oss 120b na mac studio

“ollama-gpt-oss-120b-on-mac-studio-summary”

Dla aplikacji wymagających spójnej wydajności przy różnych długościach kontekstu, to czyni Mac Studio mniej idealnym dla GPT-OSS 120b, mimo jego wrażliwej zdolności do wykonywania zadań AI. Możesz mieć lepsze szanse z mniejszymi modelami lub rozważyć użycie funkcji obsługi równoległych żądań Ollama w celu maksymalizacji przepustowości w scenariuszach produkcyjnych.

GPT-OSS 120b na RTX 4080

Początkowo myślałem, że uruchamianie Ollama z GPT-OSS 120b na moim komputerze użytkownika nie będzie szczególnie interesujące, ale wyniki mnie zaskoczyły w sposób przyjemny. Oto, co się wydarzyło, gdy przetestowałem to z tym zapytaniem:

$ ollama run gpt-oss:120b --verbose Porównaj pogodę w stolicach stanów Australii


Myślę...
Musimy porównać pogodę w stolicach stanów Australii. Podaj porównanie, może zawierać
...
*Wszystkie dane uzyskano w lipcu 2024; jakikolwiek aktualizacje z BOM po tej dacie mogą lekko zmienić liczby, ale ogólne wzorce pozostają niezmienione.*


czas całkowity:       4m39,942105769s
czas ładowania:        75,843974ms
liczba tokenów oceny promptu:    75 tokenów
czas oceny promptu: 77,341981ms
prędkość oceny promptu:     969,72 tokenów/s
liczba tokenów oceny:           3483 tokenów
czas oceny:        4m39,788119563s
prędkość oceny:            12,45 tokenów/s

Teraz tutaj jest ciekawe – Ollama z tym LLM działa przeważnie na procesorze! Model po prostu nie mieści się w 16 GB VRAM, więc Ollama inteligentnie przekazał większość do pamięci systemowej. Możesz zobaczyć to zachowanie za pomocą polecenia ollama ps:

$ ollama ps

NAZWA            ID              ROZMIAR     PROCESOR          KONTEKST 
gpt-oss:120b    a951a23b46a1    65 GB    78%/22% CPU/GPU    4096

Mimo działania z podziałem 78% CPU / 22% GPU, RTX 4080 nadal dostarcza szacunkowo dobrej wydajności dla modelu takiego rozmiaru. Ocena promptu jest błyskawicznie szybka – 969 tokenów/s, a nawet szybkość generowania 12,45 tokenów/s jest użyteczna dla wielu aplikacji.

To jest szczególnie imponujące, biorąc pod uwagę, że:

  1. Model jest prawie 4 razy większy niż dostępna VRAM
  2. Większość obliczeń odbywa się na procesorze (co korzysta z moich 64 GB pamięci systemowej)
  3. Zrozumienie jak Ollama wykorzystuje jądra procesora może pomóc dalej zoptymalizować tę konfigurację

Kto by przypuszczał, że konsumentowski GPU mógłby w ogóle obsługiwać model z 117B parametrami, nie mówiąc już o użytecznej wydajności? To pokazuje siłę inteligentnego zarządzania pamięcią Ollama i znaczenie posiadania wystarczającej ilości pamięci systemowej. Jeśli jesteś zainteresowany integracją Ollama w swoje aplikacje, sprawdź ten przewodnik dotyczący użycia Ollama z Pythonem.

Uwaga: Choć to działa dla eksperymentów i testów, zauważysz GPT-OSS może mieć pewne dziwne cechy, szczególnie w przypadku formatów wyjściowych strukturalnych.

Aby poznać więcej testów, analizy kompromisów między VRAM a przekazaniem do CPU oraz optymalizację wydajności na różnych platformach, sprawdź nasz Wydajność LLM: Testy, Bottlenecks i Optymalizacja.

Główne źródła

Powiązana lektura dotycząca porównania sprzętu i Ollama


P.S. Nowe dane

Już po opublikowaniu tego wpisu na stronie NVIDIA znalazłem dodatkowe statystyki dotyczące inferencji LLM na DGX Spark:

nvidia-spark-inferrence.png

Lepsze, ale nie sprzeczne z powyższymi (55 tokenów vs 41), ale to ciekawa dodatek, szczególnie w przypadku Qwen3 235B (na dwóch DGX Spark), który generuje ponad 11 tokenów na sekundę.

https://developer.nvidia.com/blog/how-nvidia-dgx-sparks-performance-enables-intensive-ai-tasks/