4 GB Laptop GPU'su Gemma 4 Modelinde 12 Çekirdekli CPU'yu 4.3 Kat Hızla Geride Bırakıyor

İçindekiler
Bu çalışma, küçük bir dil modelini (SLM) aynı dizüstü bilgisayar üzerinde iki farklı yöntemle sunmanın (serving) başa baş performansını karşılaştırıyor: Yalnızca CPU kullanarak ve aynı kasada yer alan 4 GB VRAM'li GTX 1650 Ti GPU ile. Her iki test kolunda işlenen veri bayt düzeyinde tamamen özdeş olup komut satırları yalnızca tek bir parametre (-ngl) ile ayrışıyor. Sonuçta giriş seviyesi harici GPU, token üretim hızında (decode) modern bir dizüstü bilgisayar işlemcisine 4.3 kat fark atıyor. (Proje kodlarına GitHub deposu üzerinden erişilebilir.)
Neler Karşılaştırılıyor?
Tek bir cihaz (13. Nesil Intel Core i7-1360P işlemci ve GTX 1650 Ti Max-Q GPU) üzerinde iki donanım kolu test edilmiştir:
- CPU Kolu: Intel Core i7-1360P (12 çekirdek / 16 iş parçacığı: 4 P-core + 8 E-core), AVX2 ve AVX-VNNI destekli mimari, llama.cpp CPU derlemesi (
GGML_CUDA=OFF) ve-ngl 0bayrağı. - GPU Kolu: NVIDIA GTX 1650 Ti Max-Q (4096 MiB VRAM, TU117 yongası, 7.5 hesaplama kabiliyeti, Tensor çekirdeği yok), CUDA destekli llama.cpp derlemesi ve
-ngl 99bayrağı. - Ortak Konfigürasyon:
google/gemma-4-E2B-it-qat-q4_0-gguf(3.35 GB kuantize model), 8192 bağlam penceresi (-c 8192), FP16 KV önbelleği (-ctk f16 -ctv f16) ve Flash Attention (-fa 1) ile 120 saniyelik soğuma aralıklarıyla çalıştırılmıştır.
Sonuçlar
Dört farklı istem (prompt) ve iki çıktı uzunluğundan oluşan 8 test senaryosunda (SSE akışı üzerinden istemci tarafı token üretim hızı):
- Decode Performansı: CPU kolu saniyede 15.6 – 17.6 token üretirken, GPU kolu 67.6 – 71.2 token/s aralığına çıkarak ortalama 4.27 kat hız artışı sağlamıştır.
- İlk Token Süresi (TTFT / Prefill): GPU, istem uzunluğuna bağlı olarak CPU'ya kıyasla ortalama 3.63 kat daha hızlı ilk yanıt üretmiş; uçtan uca gecikmede ise medyan 3.81 kat fark yaratmıştır.
Bu Fark Gerçek mi?
Üç tekrarlı testlerde varyans son derece düşüktür; CPU kolunda en yüksek sapma %6.29 iken GPU kolunda yalnızca %0.84 olarak kaydedilmiştir. Hızlanma çarpanı tüm senaryolarda 4.04x ile 4.34x aralığında tutarlı kalmış, farkın deneysel gürültüden tamamen arındığını kanıtlamıştır.
Decode Sabit Kalır, Prefill İse Lineer Artar
İstem uzunluğu 21 kat arttığında dahi decode hızı her iki donanımda neredeyse sabit kalmıştır (CPU: 17.6 → 15.6 tok/s; GPU: 71.2 → 67.6 tok/s). Buna karşın TTFT süreleri girdi uzadıkça doğrusal olarak tırmanmıştır (CPU: 1.1s → 23.9s; GPU: 0.38s → 6.5s).
- Yazılım Geliştirici Çıkarımı: Decode adımı her token için model ağırlıklarını baştan okuduğundan bellek bant genişliğine (memory bandwidth-bound), prefill adımı ise istemi matris çarpımlarıyla işlediğinden hesaplama gücüne (compute-bound) bağımlıdır. Bağlam büyüdükçe artan KV önbelleği CPU'yu yavaşlatırken GPU bellek mimarisi bu yükü rahatça karşılar.
3.35 GB'lık Model 4 GB Karta Nasıl Sığıyor?
Model GPU'ya yüklendiğinde kart üzerinde yalnızca 1598 MiB VRAM kaplar. Modelin yalnızca %32'si Q4_0 formatındadır; modelin %58'ini oluşturan 1.93 GB'lık devasa gömme (embedding) tensörü (per_layer_token_embd), llama.cpp'nin TENSOR_READ_LAZY mekanizması sayesinde doğrudan sistem belleğinde (RAM) tutulur ve VRAM'i tüketmez.
Geliştiriciler İçin Pratik Çıkarımlar
- Giriş Seviyesi GPU'ları Yabana Atmayın: Tensor çekirdeği bulunmayan eski veya bütçe dostu mobil GPU'lar bile bellek bant genişliği avantajı sayesinde modern çok çekirdekli işlemcileri rahatlıkla geride bırakır.
- Hibrit Bellek Yönetimi:
llama.cppgibi motorların sunduğu katman bazlı ve tembel yükleme (lazy loading) yetenekleriyle kısıtlı VRAM'e sahip uç cihazlarda (edge devices) verimli yerel LLM mimarileri kurabilirsiniz.
Orijinal makaleye buradan ulaşabilirsiniz.
Bu konuyu derinlemesine öğrenmek isterseniz: Ölçeklendirme ve Optimizasyon modülüne göz atın.
Bu konuyu daha derinlemesine öğrenmek ister misin?
Edumints'teki ücretsiz kursları incele ve bugün başla.
Kurslara Göz At →