Windows 8 Client Hyper-V ve SLAT Gereksinimi

30.01.2012
3

ⓘ  Dikkat: Uzun süredir yayında olan bu yazıdaki bazı bilgiler zaman içerisinde değişmiş veya geçerliliğini yitirmiş olabilir.

ⓘ  Güncelleme: Eğer yeni bir değişiklik olmaza Client Hyper-V’de RemoteFX yer almayacak. Bu durumda yazıda bahsettiğim 3D konusundan ziyade ikinci olarak altını çizdiğim performans amaçlı eklenen bir destek gibi gözüküyor. Ama RemoteFX’in olmaması 3D graphics özelliklerinden faydalanılamayacağı anlamına gelmiyor. 3D Graphics ve DX, Windows 8 Guest’lerde özel bir yöntem ile ine de destekleniyor. Sadece Hardware accelerated yok, bu nedenle de RemoteFX yok.

@Yusuf ve @Ertan konuşurlarken kulak misafiri oldum ama Twitter ‘ın 140 karakter sınırı yüzünden ve biraz daha görünür olması için konuya buradan dahil oluyorum.

Windows 8 Hyper-V’yi (yani yeni Hyper-V’nin client os’ler ile gelen dağıtımı) Windows Server 8 Hyper-V’den (yani Hyper-V’nin server os’ler ile gelen dağıtımından) ayıran en önemli donanımsal gereksinim farkı, Client Hyper-V’nin çalışacağı CPU üzerinde SLAT (Second Level Address Translation) şartının aranmasıdır. Merak edenler için SLAT (Second Level Address Translation), Intel ve AMD tarafında donanımsal bir CPU özelliğidir. Intel tarafında EPT (Extended Page Tables), AMD tarafında ise genellikle RVI (Rapid Virtualization Indexing) olarak temsil edilir. Hyper-V gibi sanallaştırma kodları zaman içerisinde bu yeteneği kullanabilecek şekilde evrim geçirmişlerdir. İşin özünde, hypervisor tarafında tutulan/yönetilen ve VM’lere atanmış temsili memory bit’leri ile fiziksel memory bit’lerini eşleştiren devasa mapping table’ların yerine, bu işlerin SLAT özellikli CPU’lara devredilmesi mantığı yatıyor. SLAT özellikli CPU’lar, VM’lerin memory aksiyonlarına direkt destek olabiliyorlar çünkü adından da anlaşılabileceği gibi ikinci seviyede bir adresleme söz konusu. Bu sayede çok daha başarılı ve hızlı bir memory kullanımı gerçekleşirken, bu durum platformda performans artışı olarak hissediliyor çünkü hem VM’ler memory’i daha başarılı bir şekilde kullanıyorlar, hem de bu görevlerin CPU’ya devredilmesi ile hypervisor üzerinden bir miktar iş yükü kalkmış oluyor. Bu davranış değişikliği sonrasında CPU’ya binen yük ise ihmal edilebilir seviyede oluyor.

Hyper-V tarafında VDI ve RemoteFX senaryoları başta olmak üzere mutlaka SLAT destekli CPU’lar kullanılmasını öneriyoruz ki zaten Windows Server 2008 R2 Hyper-V veya RDS ile sanal oturumlarda RemoteFX (zengin 3D deneyimi) sunmak istediğinizde, CPU’da SLAT özelliğinin olması ve yapıda bir GPU (graphics processor unit – daha yaygın bir ifade ile ekran kartı) bulunması donanımsal şartlar arasında yer almaktadır. VDI tarafında ise en önemli karakteristik özelliklerden olan Host başına eş zamanlı paralel oturum sayısının yüksek olması ve bu oturumlarda farklı davranışlar sergileyen uygulamaların çalışması, genelde karmaşık, yoğun ve aktif memory kullanımının ortaya çıkmasına neden olur. Bu noktada SLAT desteği ile çok daha başarılı bir memory kullanımı mümkün hale gelirken bu da oturumlarda performans artışı olarak geri dönüyor. Windows Server 2008 R2 Hyper-V ‘de SLAT, GPU ile birlikte sadece RemoteFX senaryolarında donanımsal bir şart olarak aranır. Geri kalan senaryolarda sadece tavsiye edilir.

Windows 8 Client/Server Hyper-V için SLAT ne durumda?

Bugün yeni Hyper-V’yi ve donanımsal gereksinimleri Developer Preview Build üzerinden konuşabiliyoruz. Henüz detaylı ve çok net bilgiler olmamak ile birlikte yine de bazı konularda konuşabilmek mümkün. Windows Server 8 Hyper-V için CPU’da SLAT bulunması şimdilik bir şart değil ve şahsi fikrim Server tarafında bir süre daha böyle bir şart olmayacak. Ama yine RemoteFX senaryolarında GPU ile birlikte donanımsal şartlardan biri durumunda ve diğer tüm senaryolarda ise tavsiye edilen bir özellik. Windows 8 yani Client Hyper-V için CPU’da SLAT bulunması şimdilik donanımsal şartlar arasında ve şahsi fikrim ürün RTM olduğunda da bu durum değişmeyecek. Yani RemoteFX yapmasanız bile bu gereksinimin sağlanması gerekecek.

Client Hyper-V’de SLAT şartı için yine şahsi düşüncemi paylaşmam gerekirse; Client Hyper-V desktop/notebook odaklı bir platform ve ağırlıklı olarak ITPro’lar ile Developer’ları hedef alıyor. Microsoft, özellikle Developer’lar için zengin 3D yetenekleri ile birlikte hem ITPro’lar hem de Developer’lar için daha performanslı ve daha yetenekli bir client sanallaştırma ortamı sunmak istiyor. Bu noktada SLAT’nin ciddi desteği olacağı içi de bu özelliği olmazsa olmaz olarak listeye eklemiş gibi görünüyor.

Client Hyper-V’de özellikle 3D diyoruz çünkü hedef kitlesi olan günümüz desktop/notebook sistemlerinin çoğunda en az bir adet GPU bulunduğunu düşünebiliriz. Bununla birlikte SLAT destekli CPU’lar da yaklaşık 2 senedir üretiliyor + Windows 8’in RTM olması için de daha yaklaşık 1 sene olduğunu düşünürsek, gün sonunda 3 senelik donanımlardan bahsediyor olacağız. Yani aslında o kadar da yeni teknolojileri konuşmuyoruz. Kaldı ki bu tip stratejik kararlar çok ciddi pazar araştırmalarından sonra alınıyor ve böyle bir şart ile oyun dışı kalan kişi oranı muhtemelen göz ardı edilebilir seviyede olacak. Windows 8 RTM olana kadar geçecek süre zarfında bir kısım SLATless kullanıcı da muhtemelen sistemlerini upgrade etmiş olacaktır. Bir GPU’su bulunmayan desktop sistemlerin ise genelde “basic workstation” veya “desktop as a server” olarak kullanıldığını söyleyebiliriz.

Windows Server 8 Hyper-V tarafında ise şimdilik SLAT şartın olmamasının bana göre en önemli nedeni server’larda GPU’nun yaygın olmaması ve bununla birlikte donanımsal anlamda desktop sistemlere göre çok daha ciddi oranlarda genişleyebilmeleri, yani kısaca performans için başka parametrelere de sahip olmaları. Hedef kitle ihtiyaçları ve paralel olarak donanım tarafındaki değişim sonucunda ilerleyen sürümlerde benzer stratejik adımların server tarafı için de atılması sürpriz olmayacaktır.

Windows 8 şu an Developer Preview durumda. Bu ay sonunda bir Beta bekliyoruz. Muhtemelen ardından bir RC ve daha sonra da RTM şeklinde ürün raflardaki yerini alacak. Bana göre olmayacaktır ama bu süre içerisinde Client Hyper-V için SLAT şartından vaz geçilmesi gibi bir durum her zaman ihtimal dahilindedir ama sonuç olarak Windows 8 Client Hyper-V çalıştırmak için (3D kullanmak istemeseniz bile) SLAT destekli CPU şimdilik şart.

Yorumlar (3)

  1. Hakan Yüksel

    Ayrıntı bir konu gibi dursada ileride neden çalışmıyor sorusunun cevabını ayrıntıları ile aktaran kıymetli, keyifli bir paylaşım olmuş.
    Teşekkürler.

  2. Burc Kök

    Serhat bey farklı tarzınızı yine ortaya koymuşsunuz. Açıkçası detaylı yazılarınızı ilgiyle takip ediyorum. Umarım profesyonellik kokan yazılarınızı daha sık okuruz.

  3. niyazi aygun

    serhat akıncı farkı…

Yorum Ekle

* Gerekli

* Gerekli

* Tercihen