Test: Jak Ollama wykorzystuje wydajność i efektywne jądra procesora Intel
Ollama na procesorze Intel CPU: wydajność a jądra wydajne
Mam teorię do przetestowania – czy wykorzystanie Wszystkich rdzeni na procesorze Intel podniesie prędkość LLM? Zdenerwuje mnie fakt, że nowy model gemma3 27 bit (gemma3:27b, 17GB na ollama) nie mieści się w 16GB VRAM mojej karty graficznej, a częściowo działa na procesorze.
Aby uzyskać więcej informacji na temat przepływu danych, opóźnienia, VRAM oraz benchmarków na różnych środowiskach i sprzęcie, zobacz Wydajność LLM: Benchmarki, Bottlenecki i Optymalizacja.
Być precyzyjnym
ollama ps
pokazuje
gemma3:27b a418f5838eaf 22 GB 29%/71% CPU/GPU
Choć nie wygląda to źle, to są warstwy podzielone. Rzeczywiste obciążenie: GPU: 28%, CPU: 560%. Tak, kilka rdzeni jest wykorzystywanych.

I tu jest pomysł:
Co, jeśli zmusimy ollama do wykorzystania WSZYSTKICH rdzeni procesora Intel – zarówno typu Performance, jak i Efficient?
Parametr konfiguracji OLLAMA_NUM_THREADS
Ollama ma parametr konfiguracji zmiennej środowiskowej OLLAMA_NUM_THREADS, który ma informować ollama, ile wątków i rdzeni powinien wykorzystać.
Najpierw spróbowałem ograniczyć go do 3 rdzeni:
sudo xed /etc/systemd/system/ollama.service
# dodać OLLAMA_NUM_THREADS=3 jako
# Environment="OLLAMA_NUM_THREADS=3"
sudo systemctl daemon-reload
sudo systemctl restart ollama
i nie zadziałało.
Ollama nadal wykorzystywał ~560% procesora, gdy uruchamiał LLM Gemma 3 27B.
Niestety.
Opcja num_thread
Spróbujmy wywołać
curl http://localhost:11434/api/generate -d '
{
"model": "gemma3:27b",
"prompt": "Dlaczego niebo jest niebieskie?",
"stream": false,
"options":{
"num_thread": 8
}
}' | jq .
Wynik:
- Użycie procesora: 585%
- Użycie karty graficznej: 25%
- Moc karty graficznej: 67W
- Ocena wydajności: 6,5 tokenów/sec
Teraz spróbujmy podwoić liczbę rdzeni. Powiemy ollama, by wykorzystał mieszankę rdzeni wydajnych i efektywnych:
curl http://localhost:11434/api/generate -d '
{
"model": "gemma3:27b",
"prompt": "Dlaczego niebo jest niebieskie?",
"stream": false,
"options":{
"num_thread": 16
}
}' | jq .
Wynik:
- Użycie procesora: 1030%
- Użycie karty graficznej: 26%
- Moc karty graficznej: 70W
- Ocena wydajności: 7,4 t/s
Dobrze! Wydajność wzrosła o ~14%!
Teraz idźmy na ekstremum! Wszystkie fizyczne rdzenie!
curl http://localhost:11434/api/generate -d '
{
"model": "gemma3:27b",
"prompt": "Dlaczego niebo jest niebieskie?",
"stream": false,
"options":{
"num_thread": 20
}
}' | jq .
Wynik:
- Użycie procesora: 1250%
- Użycie karty graficznej: 10-26% (niestabilne)
- Moc karty graficznej: 67W
- Ocena wydajności: 6,9 t/s
Dobrze. Teraz widzimy pewne spadki wydajności. Spróbujmy 8 rdzeni wydajnych + 4 efektywnych:
curl http://localhost:11434/api/generate -d '
{
"model": "gemma3:27b",
"prompt": "Dlaczego niebo jest niebieskie?",
"stream": false,
"options":{
"num_thread": 12
}
}' | jq .
Wynik:
- Użycie procesora: 801%
- Użycie karty graficznej: 27% (niestabilne)
- Moc karty graficznej: 70W
- Ocena wydajności: 7,1 t/s
W przybliżeniu.
W porównaniu – uruchamiając Gemma 3 14b, jest mniej inteligentny niż Gemma 27b, ale dobrze mieści się w VRAM karty graficznej.
curl http://localhost:11434/api/generate -d '
{
"model": "gemma3:12b-it-qat",
"prompt": "Dlaczego niebo jest niebieskie?",
"stream": false
}' | jq .
Wynik:
- Użycie procesora: 106%
- Użycie karty graficznej: 94% (niestabilne)
- Moc karty graficznej: 225W
- Ocena wydajności: 61,1 t/s
To to, co nazywamy wydajnością. Choć Gemma 3 27b jest bardziej inteligentny niż 14b, to nie o 10 razy!
Podsumowanie
Jeśli LLM nie mieści się w VRAM karty graficznej i niektóre warstwy są przekazywane przez Ollama na procesor
- Możemy zwiększyć wydajność LLM o 10-14%, podając parametr
num_thread - Spadek wydajności z powodu przekazywania jest znaczny i nie kompensowany tym wzrostem.
- Lepszym wyborem będzie bardziej potężna karta graficzna z większą ilością VRAM. RTX 3090 jest lepszy niż RTX 5080, choć nie posiadam żadnej z tych kart…
Aby uzyskać więcej benchmarków, optymalizacji CPU/GPU i wskazówek dotyczących wydajności, sprawdź nasz Wydajność LLM: Benchmarki, Bottlenecki i Optymalizacja.