Czy kolejna karta rzeczywiście pomoże?
LLM Calculator porównuje konfiguracje sprzętu do lokalnego generowania tekstu. Odpowiada na dwa osobne pytania: czy model zmieści się w pamięci i co ograniczy szybkość generowania kolejnego tokena. Większa suma VRAM może rozwiązać pierwsze z nich, a pozostawić drugie bez poprawy.
Kalkulator działa w przeglądarce jako statyczna strona JavaScript. Nie uruchamia modelu i nie potrzebuje konta, serwera inferencji ani klucza API.
Co wprowadzasz i co dostajesz
Zaczynasz od parametrów modelu: liczby parametrów, rozmiaru po kwantyzacji, warstw i zapotrzebowania na KV cache. Dla modeli MoE rozdzielone są parametry przechowywane w pamięci od parametrów aktywnych przy generowaniu tokena.
Edytor otwiera się z własną, w pełni edytowalną konfiguracją. Każda karta ma niezależne ustawienia, a wszystkie parametry pozostają dostępne do zmiany także po wczytaniu przykładu. Presety są opcjonalnym skrótem; konfigurację złożoną wyłącznie z własnych wartości można zapisać, wyeksportować i udostępnić.
Następnie opisujesz każdą kartę: VRAM, przepustowość pamięci, efektywną moc obliczeniową i połączenie PCIe. Ustawienia CPU i RAM określają możliwości offloadu, gdy część modelu nie mieści się na GPU.
Wynik to szacowana liczba tokenów na sekundę, opóźnienie jednego tokena i porównanie ograniczeń pamięciowych, obliczeniowych oraz transferowych. Każda karta ma własną rezerwację VRAM, a offload do CPU jest ograniczony dostępnym RAM. Jeśli całe warstwy się nie mieszczą, kalkulator wskazuje brakującą pojemność zamiast podawać szybkość generowania.
Własny model i budżet kontekstu
Można zacząć od architektury Llama 3.1 8B/70B albo przykładowych konfiguracji Dense i MoE. Profile kwantyzacji zawierają jawny zapas na metadane formatu. Niezależne przykłady sprzętu ustawiają jedną lub dwie karty albo sam CPU; ich przepustowość i moc obliczeniowa pozostają edytowalne i nie są wynikami benchmarków.
Planner KV cache korzysta z liczby warstw, głowic KV, wymiaru głowicy, długości kontekstu i precyzji pamięci podręcznej. Rozróżnia dziesiętne GB od GiB. Przykładowo: 32 warstwy, 8 głowic KV, wymiar głowicy 128 i 8192 tokeny w FP16 wymagają 1 GiB, czyli około 1,074 GB, na klucze i wartości jednej sekwencji.
Tabela porównuje konteksty od 2K do 128K tokenów dla bieżącego modelu i sprzętu. Osobno przelicza pamięć cache, szacowaną szybkość i rozmieszczenie warstw, bez zastępowania aktywnych ustawień. Zastosowanie wyniku plannera wymaga kliknięcia. Tabela pamięci pokazuje następnie wagi, cache, dostępną pojemność i wolne miejsce na każdym urządzeniu.
Jak traktowany jest układ wielu GPU
Model obliczeń zakłada kolejne bloki warstw przypisane do poszczególnych kart. Podczas generowania tokena aktywacje przechodzą przez łańcuch GPU; kalkulator uwzględnia koszt transferu między etapami. Offload dodaje ograniczenia CPU i przepustowości RAM.
Wizualizacja pokazuje dokładne zakresy warstw w kolejności wykonania, pamięć wag i KV cache na każdym urządzeniu oraz rozmiar aktywacji przekazywanych przez kolejne połączenia. Można przechodzić po etapach obliczeń i transferów, sprawdzając ich ograniczenia oraz narastający czas. Widać też różnicę: wagi i cache pozostają przy przypisanych im warstwach, a pomiędzy blokami przemieszczają się aktywacje.
To rozróżnienie ma znaczenie: podział warstw nie jest tym samym co podział tensorów pojedynczej warstwy pomiędzy kilka kart. Komunikacja charakterystyczna dla tensor parallelism nie jest tu w pełni modelowana. Założenia są opisane w przewodniku na stronie kalkulatora.
Jak wykorzystać oszacowanie
Praktyczny scenariusz to porównanie jednego modelu i tej samej kwantyzacji na jednej karcie, dwóch kartach oraz z częścią warstw w RAM. Pozwala to zobaczyć, czy dodatkowa pamięć usuwa offload i czy połączenie między kartami staje się kolejnym ograniczeniem.
W przeglądarce można zapisać i porównać do sześciu nazwanych konfiguracji. Wczytanie jednej przywraca komplet jej ustawień liczbowych. Import i eksport JSON oraz linki z konfiguracją pozwalają odtworzyć analizę; raport do pobrania zawiera bieżące wyniki, rozmieszczenie pamięci, założenia i dane JSON. Konto nie jest potrzebne.
Wynik jest oszacowaniem, nie pomiarem konkretnego komputera. Efektywną przepustowość, moc obliczeniową i rozmiar KV cache warto dopasować do własnych benchmarków. Silnik inferencji, sterowniki, format kwantyzacji i topologia połączeń wpływają na rzeczywistą wydajność.
Aplikacja działa pod llm-calculator.piotrzmudadev.com jako osobny Cloudflare Worker ze statycznymi zasobami. Publiczne repozytorium GitHub zawiera cały kod, README, opis obliczeń i testy. Obliczenia wykonują się lokalnie w przeglądarce, bez zewnętrznych skryptów i wywołań API.