İçeriğe atla
SinaptikLabAI KNOWLEDGE PLATFORM

LAB · ARAÇ

Nicemleme Bellek ve Ödünleşim

Parametre sayısı ve bit genişliğinden ağırlık belleğini, KV önbelleğinin payını ve nicemlemenin toplamda gerçekten ne kadar yer açtığını hesaplar. Bir modeli sıkıştırmaya karar vermeden önce kazancın nerede eridiğini görmek isteyen altyapı ekipleri için.

Durum

Çalışıyor

Girdiler

Parametre sayısı
milyar
Taban bit genişliği
bit
Hedef bit genişliği
bit
Etkin parametre payı
%
Katman sayısı
adet
KV kanal genişliği
kanal
Bellekte tutulan bağlam
token

Hesaplama tarayıcıda yapılır; girdiğiniz değerler sunucuya gönderilmez.

01ARAÇ

Hesapla

Girdileri değiştirdiğinizde sonuç anında güncellenir. Hangi varsayımın sonucu ne kadar değiştirdiğini görmek için tek tek oynayın.

Girdiler

Uzman karışımında toplam parametre yazılır; bellekte bütün uzmanlar durur.

Karşılaştırmanın çıkış noktası.

16 bitin altındaki hedeflerde grup başına ölçek ve sıfır noktası için parametre başına 0,25 bit ek varsayılıyor (128 ağırlıklık grup) — ölçüm değil, kabul edilmiş varsayım.

%100

Anahtar/değer başlık sayısı × başlık boyutu. Gruplanmış dikkatte gizli boyuttan küçüktür.

Eş zamanlı istek sayısı × istek başına bağlam uzunluğu.

Sonuç

Nicemleme sonrası bellek

21,8GB

Tasarruf

Taban toplam65,6 GB
Ağırlıkta tasarruf%73,4
Toplamda etkin tasarruf%66,7
Ağırlık tasarrufunun toplama geçen payı%91

Nicemleme sonrası dağılım

  • Ağırlıklar (GB)15,83
  • KV önbelleği (GB)6
Parametre başına etkin bit4,25 bit
Ağırlıklar (16 bit)59,6 GB
Ağırlıklar (4 bit)15,8 GB
KV önbelleği6,0 GB
Token başına okunan ağırlık15,8 GB
Kazanılan belleğin bağlam karşılığı239.054 token

Feda edilen

Bu hesap yalnızca bellek tarafını verir; nicemlemenin çıktı kalitesine etkisini tahmin etmez. Kayıp göreve göre değişir ve yalnızca kendi değerlendirme kümenizde ölçülebilir.

4 bit agresif bir seçim. Yayına almadan önce uzun bağlam, sayısal akıl yürütme ve biçim uyumu gibi kırılgan görevlerde taban genişlikle yan yana ölçün; toplu doğruluk ortalaması bu kaybı gizler.

Ağırlık belleği parametre sayısı × bit genişliğinden, KV önbelleği katman × kanal × bağlam geometrisinden türetilir; hiçbir modelin ölçülmüş değeri gömülü değildir. Grup üstverisi için parametre başına 0,25 bit ek yük varsayılmıştır (128 ağırlıklık grup, grup başına 32 bit) ve yalnızca 16 bitin altındaki hedeflere uygulanır — BF16/FP16 düz kayan nokta biçimidir, grup ölçeği taşımaz. Bu kabul edilmiş bir varsayımdır, ölçüm değil. KV önbelleği 16 bit kabul edilir — ağırlık nicemlemesi onu küçültmediği için ödünleşim böyle görünür hâle gelir. Bayt katları ikilik tabandadır (1 GB = 1024³ bayt). Aktivasyon belleği, çıkarım motorunun çalışma alanı, bellek parçalanması ve nicemlemenin kalite maliyeti hesabın dışındadır; sonuç bir alt sınırdır.

02YÖNTEM

Hesap nasıl kuruluyor?

Bir hesaplayıcının değeri sonucunda değil, hangi varsayımla o sonuca vardığındadır.

Kısa cevap

Ağırlığı 16 bitten 4 bite indirmek ağırlık belleğini yaklaşık dörde bölür — grup üstverisi ek yükü kadar eksiğine — ama toplam bellekte görünen kazanç KV önbelleğinin payı kadar seyreltilir; bu araç iki oranı ayrı ayrı verir.

Hesap ne yapıyor?#

Araç, girdiğiniz parametre sayısını ve bit genişliğini ağırlık belleğine çevirir, aynı yapılandırmanın KV önbelleğini katman ve kanal geometrisinden hesaplar, ikisini yan yana koyar. Çıktı iki ayrı orandır: ağırlık tarafındaki tasarruf ve toplam bellekte kalan etkin tasarruf. Aradaki fark, ağırlık nicemlemesinin dokunmadığı KV önbelleğinden gelir. Uzman karışımı mimarilerde bellekte bütün uzmanlar durduğu için yerleşim toplam parametreye bağlıdır; token başına okunan ağırlık ise yalnızca etkin paya bağlıdır ve ayrı satırda gösterilir.

Formül#

Bütün büyüklükler sizin girdiğiniz sayılardan türetilir; araçta gömülü bir model ölçümü yoktur. Bit genişliğinin bayta çevrimi tanım gereği sabittir, geri kalanı çarpma ve bölmedir.

  • Ağırlık belleği = parametre sayısı × (etkin bit / 8); etkin bit, hedef 16 bitin altındayken ham bitin üstüne grup üstverisini ekler, 16 bitte ham bite eşittir.
  • KV önbelleği = 2 (anahtar ve değer) × katman sayısı × KV kanal genişliği × bellekte tutulan bağlam × 2 bayt.
  • Ağırlıkta tasarruf = 1 − (hedef ağırlık belleği / taban ağırlık belleği); yalnızca bit oranını yansıtır.
  • Toplamda etkin tasarruf = 1 − (hedef toplam / taban toplam); KV önbelleği her iki tarafta aynı kaldığı için bu oran daha küçüktür.
  • Token başına okunan ağırlık = parametre sayısı × etkin parametre payı × (etkin bit / 8); bellek yerleşimi değil, bant genişliği baskısının göstergesi.
  • Kazanılan belleğin bağlam karşılığı = serbest kalan bayt / token başına KV baytı; tasarrufu yüzde yerine token cinsinden okutur.

Varsayımlar#

  • Grup üstverisi: 128 ağırlıklık gruplar ve grup başına 32 bit ölçek artı sıfır noktası kabul edilir; parametre başına 0,25 bit ek yük eder. Yalnızca 16 bitin altındaki hedeflere uygulanır — BF16/FP16 düz kayan nokta biçimidir, grup ölçeği taşımaz. Grup küçültülürse ek yük büyür, kanal başına tek ölçekte neredeyse kaybolur.
  • KV önbelleği 16 bit tutulur. KV nicemlemesi ayrı bir karardır ve bu hesaba girmez; ödünleşim tam olarak bu yüzden görünür hâle gelir.
  • Bağlam girdisi eş zamanlı isteklerin toplamıdır; batch çarpanı ayrı bir alan değil, bu toplamın içindedir.
  • Ağırlıkların tamamı nicemlenmiş sayılır. Uygulamada gömme katmanı, çıkış başı ve bazı normalizasyonlar taban genişlikte bırakılır.
  • Bit genişliğinin bayta çevrimi dışında sabit yoktur; parametre sayısı, katman, kanal ve bağlam tümüyle sizin girdiğiniz değerlerdir.
  • Bayt katları ikilik tabandan okunur: 1 GB = 1024³ bayt, 1 MB = 1024² bayt. Onluk tabanla (10⁹) karşılaştırırsanız aynı model yaklaşık yüzde yedi daha büyük görünür.

Neyi ölçmez#

Araç kalite tarafını hesaplamaz. Nicemlemenin çıktı kalitesine etkisi göreve, veri dağılımına ve nicemleme yöntemine göre değişir; yalnızca kendi değerlendirme kümenizde ölçülebilir. Aktivasyon belleği, çıkarım motorunun çalışma alanı, bellek parçalanması, çözme sırasındaki geçici tamponlar ve sıkıştırılmış ağırlığı açmanın gecikme maliyeti de kapsam dışıdır. Sonuç bir alt sınır tahminidir: gerçek yerleşim bundan büyük çıkar.

Kararı nasıl kullanmalı#

  1. 1Geometriyi doğru gir

    Katman sayısı ve KV kanal genişliğini model yapılandırmasından oku. Kanal genişliği, anahtar/değer başlık sayısı ile başlık boyutunun çarpımıdır; gruplanmış dikkatte gizli boyuttan küçüktür ve gizli boyutu yazmak KV önbelleğini olduğundan büyük gösterir.

  2. 2Hangi oranın büyüdüğüne bak

    Ağırlıkta tasarruf ile toplamda etkin tasarruf arasındaki açıklık, KV önbelleğinin baskınlığını ölçer. KV payı yarıyı geçtiyse ağırlığı daha da sıkıştırmak toplamı kayda değer ölçüde küçültmez.

  3. 3Sırayı baskın kaleme göre kur

    KV baskınsa önce eş zamanlı bağlam toplamını düşürün, başlık gruplayarak kanal genişliğini azaltın, sayfalı dikkatle parçalanmayı toplayın. Ağırlık baskınsa bit genişliğini bir kademe indirip kazancı token cinsinden okuyun.

  4. 4Kaybı kendi kümenizde ölçün

    Seçtiğiniz bit genişliğini taban genişlikle yan yana koşturun; uzun bağlam, sayısal akıl yürütme ve biçim uyumu gibi kırılgan görevleri ayrı ayrı raporlayın. Toplu doğruluk ortalaması bu kaybı gizler.

04DİĞER PROJELER

Lab'dan

BUILD

Hesap tuttu, sıra uygulamada

Aynı hesabı kendi verinizle yapıp mimariyi kurmak için kurumsal destek alabilirsiniz.