Gündeme dön

Tek Ekran Kartı, Dört Sanal Makine: Kartı Paylaşmanın Yeni Yolu

Deneysel virtio-nvgpu, tek bir RTX 3060 kartı hostta tutarak dört Linux misafirine aynı anda grafik erişimi açıyor; tek misafirde 102,9 kare/sn veren kart dörde bölününce toplam 103,69 kare/sn üretiyor.

Nodesdaily’e aktarım: (UTC+03:00)
YouTube'da izle — AknK5ixgRSs
Okuma seçenekleri

Bu tarayıcıda cihazdan sesli okuma kullanılamıyor.

Kavram merceği

Bu görünümde geçen teknik kavramlardan birini seç. Genel tanımı, öğretici örneği ve haberdeki kullanımını birlikte oku.

Bu görünümde sözlüğümüzdeki kavramlardan biri bulunmadı. Sözlük henüz tüm terimleri kapsamıyor.

Elinizde tek bir ekran kartı ve grafik hızlandırma isteyen iki sanal makine varsa klasik cevap acımasızdır: kartı birine verirsiniz, diğerleri bakakalır. Sunucu bu açmazı basit bir soruyla açıyor; bir kartı bir misafire teslim etmek neden geri kalan her şeyin erişimini kesmek zorunda? Cevap, tam cihaz devrinin doğasında saklı: kart host sürücüsünden ayrılıp tek misafire bağlanıyor, host ve diğer misafirler aynı anda kullanamıyor.

Klasik geçişin mekaniğini archlinux.org üzerindeki PCI geçiş rehberi de aynı sözcüklerle anlatır: aygıt host sürücüsünden çözülür, IOMMU gruplarıyla tek misafire atanır, bedeli host tarafında görüntü kaybıdır. Tek GPU'lu dizüstünde bunu deneyen herkes bilir; misafir kapanmadan host masaüstüne dönüş zordur. Sunucu tam da bu tek kişilik sahiplenmeyi sorun olarak çerçeveliyor ve deneyin iddiasını buraya yerleştiriyor: sahiplenme olmadan erişim.

Kartı vermek yerine isteği iletmek

Deneysel virtio-nvgpu projesi yolu tersine çeviriyor. GitHub üzerindeki proje tanımı bunu tek cümlede özetliyor: KVM misafirlerinde near-native NVIDIA erişimi için virtio aygıtı. Kart hostta kalıyor, misafirler sürücü isteklerini hosttaki sürücüye iletiyor. Sınırdan geçen şey kartın kendisi değil, kartı süren yazılıma giden işlemler oluyor. Böylece ikinci, üçüncü, dördüncü misafir için ayrı bir kart gerekmiyor; aynı karta giden ayrı istek yolları açılıyor.

Anlatının en öğretici bölümü tek bir tampon isteğini izlemesi. Linux misafirindeki uygulama kare verisini tutacak bir bellek arabelleği istiyor. Misafir içindeki NVIDIA kullanıcı modu sürücüsü aynen duruyor; çekirdek içindeki küçük bir yönlendirme modülü, aygıt kontrol isteğini bir virtio kuyruğu üzerinden hosttaki arka uca taşıyor. QEMU belgelerindeki virtio-gpu aygıt modeline aşina olanlar için şema tanıdık: ön uç misafirde, arka uç hostta, arada kuyruk disiplini var.

Sınırı geçen başvurunun hostta anlaşılır hale gelmesi için arka uç bir çeviri yapıyor. Bellek işaretçileri, kaynak tanıtıcıları ve dosya tanımlayıcılar misafir tarafındaki anlamlarıyla host tarafında aynı şeyi göstermeyebiliyor; arka uç bunları host sürücüsünün tanıyacağı karşılıklara dönüştürüyor. Ardından paylaşılan bir bellek penceresi devreye giriyor: aynı arabelleğe misafirden ve hosttan iki görünüm açılıyor, veri iki kopya haline gelmeden iki taraftan erişiliyor. Eşleme kurulduktan sonra belgelenmiş çizim yolu bu erişimi kullanıyor; her çizim komutu için ayrı bir iletilmiş ileti gerekmiyor.

Mevcut kullanıcı modu sürücüyü değiştirmeden tutmak işin kurnaz tarafı. Uygulamalar bildikleri sürücüyle konuşuyor, evrak işini yönlendirme modülü ve arka uç üstleniyor. İkinci misafir de aynı karta kendi iletim yoluyla bağlanabiliyor. Nvidia belgelerindeki vGPU ve MIG düzeneklerinden farkı burada beliriyor: orada zaman dilimleme veya donanımsal bölme var, burada ise host sürücüye giden iletilmiş istekler ve eşlenmiş bellek var. Sunucu bu ayrımı özellikle vurguluyor; başka sistemin garantisini bu deneye borç verilemeyeceğini söylüyor.

Dört misafir, tek kart: ölçülen sonuç

Sayılar RTX 3060 üzerinde, aynı sentetik iş yüküyle alındı. Tek misafir 102,9 kare/sn üretiyor. Aynı iş dört misafirde koşunca her biri yaklaşık 26 kare/sn alıyor, toplam 103,69 kare/sn ile neredeyse aynı kalıyor. TechPowerUp veritabanına göre bu kart 3584 CUDA çekirdeği ve 12 GB GDDR6 bellek taşıyor; bu denemede toplam iş aynı kartın kaynaklarıyla yapıldı, kartın hesabı ve belleği çoğalmadı. Dört kapı zili, tek mutfak benzetmesi bu yüzden isabetli: isteme yolu çoğaldı, mutfak büyümedi.

Ölçüm koşulları açık: 8 saniyelik ısınmanın ardından 30 saniyelik koşu, dört misafirde birebir aynı iş. Linuxiac özetinde de vurgulandığı gibi bunlar proje içi sonuçlar, bağımsız doğrulama yok. Daha önemlisi, sonuç sabit kota, adil paylaşım veya korumalı grafik belleği dilimi vaat etmiyor. Dört, raporlanan misafir sayısı; ölçülen azami sınır değil. Dört farklı ağır uygulama bir araya gelse ne olacağı bu testten okunamaz.

İkinci maliyet kalemi tek misafirde bile var: iletimin getirdiği ek süre. Bir sentetik işte hostta yaklaşık 2 milisaniye süren kare misafirde %1,7 yavaşladı; çok daha kısa bir işte hostta 0,05 milisaniye süren kare %40,8 yavaşladı. Yazarlara göre kısa işteki farkın büyük kısmı kart işi bitince misafirin uyandırılmasından geliyor. Küçük bir ek ağırlık çok kısa bir işte oransal olarak dev görünüyor; bu yüzden yüzde tek başına okunmamalı, yanına mutlaka özgün süre konmalı. Evrensel bir near-native sözü bu iki noktadan çıkarılamaz.

Ne için kullanılır, ne için kullanılmaz

Projenin ilan ettiği hedef başsız akış: misafir görüntüyü üretip H.264 kodlama ile video akışı olarak sunuyor, izleyici uzak ekrandan izliyor. Fiziksel ekran çıkışı kapsam dışı. Benioku dosyasına göre misafirler Vulkan video arayüzüyle sunum ve kodlama yapabiliyor; dört hafif kodlama oturumu aynı anda koşmuş. Bu, birkaç uzak Linux ortamına grafik erişimi isteyenler için pratik bir yöne işaret ediyor.

Olmayanlar listesi en az olanlar kadar önemli. Güvenilmeyen misafirler için güvenli yalıtım gerekiyor; korumalı yardımcı ve çok kiracılı altyapı bitmemiş, birlikte çalışmak güvenli ayrışma kanıtı değil. CUDA tarafında yalnızca aygıt listeleme aşamasına gelinmiş; tamamlanmış bir hesap, yerel çıkarım veya eğitim gösterimi yok. Sürücü tarafında uyumluluk, iletilen arayüzün yani sürücü ABI desteğine bağlı; kullanıcı sürücüsünü aynen tutmak her sürüm ve uygulama birleşimini uyumlu yapmıyor. Sıradan tek masaüstü kullanıcısı için gösterilmiş bir yarar yok; kartı zaten zorlayan biri misafir ekleyerek yeni kaynak yaratmıyor.

Görsel: nodesdaily AI

Videodaki anahtar anlar

  1. Tek karta iki misafir sorunu
  2. Tampon isteğinin sınıra yolculuğu
  3. Paylaşılan bellek penceresi
  4. Dört misafirde 103,69 kare/sn
  5. Kısa işte %40,8 ek maliyet
  6. Baştan sona: kim izlemeli

AI yorumu

"Sunucunun ölçüm disiplini ve sınırları açıkça ayırması bu anlatıyı değerli kılıyor; rakamlar abartılmıyor, neyin gösterilmediği tek tek söyleniyor."

AI değerlendirmesi

En güçlü karşı tez basit: Paylaşım erişimi çözer, kapasiteyi büyütmez. Dört misafir aynı sentetik işi bölüşünce toplam çıktı 103,69 kare/sn ile yerinde saydı; kişi başı 26 kare/sn, tek misafirdeki 102,9 kare/sn deneyiminin çok uzağında. Ağır ve farklı gerçek uygulamalar bir araya geldiğinde bölüşmenin nasıl davranacağı ise hiç ölçülmedi.

Eksik listesi uzun ve sunucu bunları saklamıyor: sabit kota veya adil pay garantisi yok, korumalı bellek dilimi kanıtı yok, yalıtım altyapısı ve korumalı yardımcı süreç bitmemiş, CUDA tarafında yalnızca aygıt listeleme var, Windows ve çok kullanıcılı oyun servisi kapsam dışı. Nvidia belgelerine göre MIG donanımsal bölme ve güçlü yalıtım vaat ederken, bu deneyde böyle bir güvence yok. QEMU belgelerindeki yerleşik virtio-gpu seçenekleri dururken bu projenin sürücü arayüzüne bağımlılığı ayrı bir risk.

Sunucunun olası çıkarı deney meraklısını uyarmak yönünde: tek masaüstü kullanıcısına kurulum önermiyor, Linux sanal makine meraklısına izleme listesi öneriyor. Bu dengeli ton güven veriyor. Yine de proje belgelerindeki çelişki (mimari girişinde çok misafirli desteğin yapılmadığı yazarken deneme tablosunda dört misafirli sonucun durması) GitHub tarafında sürüm disiplininin oturmadığını düşündürüyor; Linuxiac özeti de deneyselliği vurguluyor.

Okur için pratik çıkarım net: Birden çok Linux misafirinde aynı anda grafik hızlandırma gerekiyorsa ve hafif uzaktan oturumlar yeterliyse bu proje izlenmeye değer; TechPowerUp veritabanına göre 12 GB belleğiyle RTX 3060 bu tür bölüşme denemeleri için makul bir taban. Tek kartı zorlayan bir iş yükünüz varsa, archlinux.org üzerindeki klasik geçiş rehberindeki tek misafirli tam devir hâlâ en öngörülebilir yol. Donanım almadan önce kendi uygulamanızın hem tekil hem toplam değerlerle ölçülmesini isteyin.

Kaynaklar

7 bağlantı; bunları kullanan başka yayımlanmış haber yok. Aynı bağlantıyı paylaşan haberler birbirini doğrulamış sayılmaz; kaynağın kökeni bağlantı sayısından çıkarılmaz.

virtio-nvgpu · gpu paylaşimi · kvm · rtx 3060 · sanal maki̇ne

Konuyu takip et

Bu haberden önce

Aynı olayla editör tarafından ilişkilendirilmiş önceki haberlerden kısa bir okuma sırası.

Kanıt ve kaynaklar

İzinli kaynak metnini, sürümünü ve köken bilgisini incele.

KAYNAKLARLA OKU

Bu haberi açalım.

Hesap kontrol ediliyor…