Test prędkości modeli dużych języków
Sprawdźmy prędkość LLM na GPU vs CPU
Porównanie prędkości przewidywania kilku wersji LLM: llama3 (Meta/Facebook), phi3 (Microsoft), gemma (Google), mistral (open source) na CPU i GPU.
Aby uzyskać więcej informacji na temat przepływności, opóźnienia, VRAM oraz benchmarków w różnych środowiskach i sprzęcie, zobacz Wydajność LLM: Benchmarki, Bottlenecki i Optymalizacja.

Używam tego samego tekstu testowego, co w poprzednim teście, w którym porównałem jakość wykrywania błędów logicznych przez te LLM.
Spójrz, na pierwszy rzut oka wszystko brzmi zupełnie rozsądnie:
za dużo ludzi, za mało domów.
Ale nigdy nie jest tak prosto,
jak powinien wiedzieć dawniej minister spraw wewnętrznych.
TL;DR
Na GPU LLMi działają około 20 razy szybciej, ale na CPU nadal są całkiem dobre do zarządzania.
Opis stanowiska testowego
Uruchomiłem poniższe Modele językowe (Large Language Models) na dwóch komputerach:
- Stary z 4-karnym procesorem 4-generacji i5 (i5-4460 - wyprodukowany w 2014 roku) oraz
- Nowy z GPU RTX 4080 (wyprodukowany w 2022 roku) z 9728 jądrami CUDA i 304 tensorami.
Wyniki testów
Poniżej znajdują się wyniki:
| Model_Name_Version__________ | GPU RAM | GPU duration | GPU Perfor-mance | Main RAM | CPU Duration | CPU Perfor-mance | Perfor-mance diffe-rence |
|---|---|---|---|---|---|---|---|
| llama3:8b-instruct-q4_0 | 5,8 GB | 2,1 s | 80t/s | 4,7 GB | 49 s | 4,6t/s | 17,4x |
| llama3:8b-instruct-q8_0 | 9,3 GB | 3,4 s | 56t/s | 8,3 GB | 98 s | 2,7t/s | 20,7x |
| phi3:3.8b | 4,5 GB | 3,6 s | 98t/s | 3,0 GB | 83 s | 7,2t/s | 13,6x |
| phi3:3.8b-mini-4k-instruct-q8_0 | 6,0 GB | 6,9 s | 89t/s | 4,6 GB | 79 s | 5,3t/s | 16,8x |
| phi3:3.8b-mini-instruct-4k-fp16 | 9,3 GB | 4,2 s | 66t/s | 7,9 GB | 130 s | 2,9t/s | 22,8x |
| phi3:14b | 9,6 GB | 4,2 s | 55t/s | 7,9 GB | 96 s | 2,7t/s | 21,2x |
| phi3:14b-medium-4k-instruct-q6_K | 12,5 GB | 8,9 s | 42t/s | 11,1 GB | 175 s | 1,9t/s | 21,8x |
| mistral:7b-instruct-v0.3-q4_0 | 5,4 GB | 2,1 s | 87t/s | 4,1 GB | 36 s | 4,9t/s | 17,8x |
| mistral:7b-instruct-v0.3-q8_0 | 8,7 GB | 2,3 s | 61t/s | 7,5 GB | 109 s | 2,9t/s | 21,0x |
| gemma:7b-instruct-v1.1-q4_0 | 7,4 GB | 1,8 s | 82t/s | 7,5 GB | 25 s | 4,4t/s | 18,6x |
| gemma:7b-instruct-v1.1-q6_K | 9,1 GB | 1,6 s | 66t/s | 7,5 GB | 40 s | 3,0t/s | 22,0x |
Wydajność modeli znajduje się w kolumnach “GPU performance” i “CPU performance”.
Wzrost prędkości przy przechodzeniu z CPU na GPU znajduje się w kolumnie “Performance difference”.
Nie powinniśmy zbyt wiele uwagi poświęcać kolumnom “duration” - ten wskaźnik zależy od wydajności modelu i długości wygenerowanego tekstu. Wszystkie modele generują tekst o różnej długości. Te kolumny dają tylko orientacyjny czas oczekiwania.
Wnioski 1 - Różnica wydajności
Różnica wydajności między GPU a CPU nie jest tak duża, jak się spodziewano.
Serio? Wszystkie legie (10k+) jąder Ada Tensor & Cuda vs 4 Haswell spartanów, i tylko 20-krotna różnica. Sądziłem, że będzie to 100-1000-krotna różnica.
Wnioski 2 - Koszt na przewidywanie jest niemal taki sam
- ten nowy komputer kosztuje około 3500 AUD
- ten stary komputer kosztuje obecnie prawdopodobnie 200 AUD
Z witryny PCPCaseGear:

Z eBay (możesz chcieć dodać dodatkowe 8 GB pamięci RAM, aby uzyskać 16 GB łącznie - zaokrąglamy więc do 200 AUD):

Możesz potrzebować 20 takich starych komputerów, aby uzyskać tę samą przepływność, więc 200 AUD * 20 = 4000 AUD.
Wnioski 3 - Prawo Mooresa
Prawo Mooresa mówi, że wydajność komputerów podwaja się co dwa lata.
Intel rozpoczął produkcję i5-4460 w 2014 roku. Nvidia rozpoczęła produkcję jednej z wersji RTX 4080 w 2022 roku. Oczekiwany wzrost wydajności powinien wynosić około 16 razy.
Sądziłem, że prawo Mooresa nadal działa.
Pamiętaj jednak, że Dell 9020 był wtedy podstawowym komputerem stacjonarnym, a komputer z RTX 4080 to obecnie zaawansowany komputer graficzny/graowy. Słabo różniący się klasą wagową.
Aby uzyskać więcej benchmarków, wyborów sprzętu i optymalizacji wydajności, sprawdź nasz Wydajność LLM: Benchmarki, Bottlenecki i Optymalizacja.
Przydatne linki
- Wydajność LLM i PciE Lanes: Kluczowe rozważania
- Wykrywanie błędów logicznych za pomocą LLM
- Aplikacja Android do wykrywania błędów logicznych: https://www.logical-fallacy.com/articles/detector-android-app/
- Przeniesienie modeli Ollama na inny dysk lub folder
- Samodzielne hostowanie Perplexica - z użyciem Ollama
- Jak Ollama obsługuje żądania równoległe
- Test: Jak Ollama wykorzystuje wydajność procesora Intel i efektywne jądra
- Dostawcy LLM w chmurze
- Problemy degradacji w 13. i 14. generacji procesorów Intel
- Czy Quadro RTX 5880 Ada 48GB jest dobry?