Continuous Batching
Sürekli gruplamanın (continuous batching) GPU çıktısını nasıl optimize ettiğini ve gecikmeyi nasıl azalttığını öğren. Üretimdeki ML görevlerinde verimliliği en üst düzeye çıkarmak için Ultralytics YOLO26'yı nasıl kullanacağını keşfet.
Sürekli gruplama (continuous batching), donanım kullanımını ve iş hacmini maksimize etmek için makine öğrenimi (ML) süreçlerinde kullanılan gelişmiş bir zamanlama ve çıkarım optimizasyon tekniğidir. Geleneksel statik gruplamada, bir çıkarım motoru bunları eş zamanlı olarak işlemeden önce önceden belirlenmiş sayıda isteğin birikmesini bekler. Bu durum genellikle verimsizliklere yol açar çünkü sistem, kaynakları serbest bırakmadan önce gruptaki en uzun süren isteğin tamamlanmasını beklemek zorundadır. Dinamik veya yineleme düzeyinde gruplama olarak da bilinen sürekli gruplama, aktif bir istek tamamlandığı anda işlem grubuna yeni istekler enjekte ederek bu sorunu çözer; böylece GPU üzerindeki boşta kalma süresini önemli ölçüde azaltır ve genel verimliliği artırır.
Link to this sectionİlgili Kavramları Ayırt Etme#
Model dağıtımı sırasında verilerin nasıl işlendiğini daha iyi anlamak için sürekli gruplamayı sözlükteki diğer ilgili terimlerden ayırmak faydalıdır:
- Grup Boyutu: Bu, eğitim veya çıkarım sırasında eş zamanlı olarak işlenen sabit örnek sayısını ifade eder. Geleneksel grup işleme iş akışları statik boyutlara dayanırken, sürekli gruplama, etkili grup boyutunun gelen trafiğe bağlı olarak dinamik bir şekilde dalgalanmasına olanak tanır.
- Gerçek Zamanlı Çıkarım: Bu kavram, tekil girişleri geldikleri anda işleyerek anlık tahminler için çıkarım gecikmesini minimize etmeye odaklanır. Sürekli gruplama, hızlı isteklerin daha yavaş olanları beklemesine gerek kalmadan yüksek iş hacmini koruyarak, yüksek iş hacimli statik gruplama ile düşük gecikmeli gerçek zamanlı çıkarım arasındaki boşluğu doldurur.
Link to this sectionGerçek Dünya Uygulamaları#
Sürekli gruplama, yüksek hacimli ve öngörülemez istekleri yöneten üretim sistemleri için kritiktir. İşte uygulamasına dair iki somut örnek:
-
Yüksek İş Hacimli Metin Üretimi: Büyük Dil Modelleri (LLM'ler) sunulurken, farklı kullanıcılar için yanıt oluşturmak çıktı uzunluğuna bağlı olarak değişen süreler alır. Ray Serve üzerinde vLLM gibi sürekli gruplamadan yararlanan çerçeveler, yeni üretilen token'ları sürekli olarak yayınlayabilir ve biten konuşmaları yeni istemlerle anında değiştirebilir. Yineleme düzeyinde zamanlama üzerine araştırmalarla popülerleşen bu yöntem, metin üretimi iş hacmini ciddi oranda artırır.
-
Asenkron Video Analitiği: Bir şehrin trafik kamerası ağındaki araçları takip etmek gibi video anlama görevlerinde, kareler farklı aralıklarla ulaşır. Sürekli gruplama, nesne takibi modellerinin gelen video karelerini kaynaklar boşaldığı anda dinamik olarak işlemesine olanak tanır ve akıllı şehir panoları için donanım hızlandırma hatlarını optimize eder.
Link to this sectionGörüntü Görevlerinde Sürekli İşleme#
Yüksek trafikli model dağıtım uygulamaları yönetilirken, çıkarımları yinelemeli olarak yayınlamak, belleğin engellenmek yerine aşamalı olarak serbest bırakılmasını sağlayarak dinamik gruplamanın avantajlarını simüle edebilir. Aşağıdaki Python örneği, görüntülerin sürekli bir akışını verimli bir şekilde işlemek için model tahmin API ile üretici (generator) modelinin nasıl kullanılacağını göstermektedir.
from ultralytics import YOLO
# Load the latest Ultralytics YOLO26 model
model = YOLO("yolo26n.pt")
# Using stream=True acts as a generator, iteratively processing inputs
# to keep memory usage low and throughput high
results = model.predict(source=["img1.jpg", "img2.jpg", "img3.jpg"], stream=True)
# Process each result as soon as it completes
for result in results:
print(f"Detected {len(result.boxes)} objects in this frame.")Sistem düzeyinde kaynak zamanlamasını yönetmek, ham hız ile operasyonel maliyet arasında bir denge gerektirir. Devasa bilgisayarlı görü (CV) ve dil modelleri dağıtan ekipler, bu dinamik grupları yönetmek için giderek daha fazla gelişmiş sunum çerçevelerine güveniyor. Altyapılarını optimize etmek isteyen kurumsal ekipler için Ultralytics Platform, modelleri eğitmek, izlemek ve yüksek oranda optimize edilmiş üretim ortamlarına aktarmak için güçlü araçlar sunar.






