Modern Sanallaştırmada programlanabilir Donanımın Rolü

Sanallaştırma, basit sunucu konsolidasyonunun ötesine geçti. Bugünün ortamları, uygun bir performans, düşük çözünürlük paketi işleme, donanım destekli güvenlik ve mikrosaniyelerdeki hesaplama kaynakları yeniden yapılandırma yeteneği. Alan-Programlanabilir kapı dizileri (FPGA) bu talepleri paralellik, deterministic zamanlama ve tümleşik güvenlik, ve tüm hipervizör- ve konteyner odaklı verilere dayalı olarak hareket etmek için uygun bir şekilde bir araya getirebilir.

Bu makale, FPGA'ların bir sonraki nesil sanallaştırma teknolojileri, ağ fonksiyonu sanallaştırma (NFV) ve yazılım tanımlı ağ (SDN) ve AI inference'in kenar hesaplaması ve AI'nın uygulanabilirliği için nasıl desteklendiğini inceler. FPGA'ler bulut sağlayıcılar, telecom operatörleri için zorlayıcı bir seçim yapar ve akıllı dijital altyapı inşa eder.

FPGA ve Data Center Context

Bir FPGA, tek bir amaç için silikonun bir matrisini içeren bir silikon cihazıdır, FPGA, kaynak sınırları içinde neredeyse herhangi bir dijital devre uygulamak için yeniden programlanabilir.Bu esneklik yazılımların yanı sıra, yazılımların yanı sıra, “fluid donanımı” olarak adlandırılan bir paradigma oluşturmakta yardımcı olur.

Sanal ortamlarda, FPGA'lar genellikle PCIe-dached hızlandırıcılar, SmartNICs veya CPU paketine gömülü IP olarak entegre edilebilir.Her form faktörü, birden fazla sanal makinede paylaşılan kaynak kümesinin farklı bir dengesi getiriyor.ForFLT:0.FPGA tabanlı SmartNIC, tüm Open v Photo Transition boru hatlarına ek olarak, bir monolithic FPGA kartına ek olarak, birçok sanal makinede paylaşılan bir yeniden yapılandırılabilir.

Sanallaştırma Teknolojilerinin Evrimi

Server sanallaştırma, VMware ESXi, KVM ve Hyper-V gibi hipervizörlerin öncülüğü ve fiziksel donanımdan I/O, konteynerler ve Kubernetes, mikro hizmetlerden oluşan hafif bir soyutlama katmanı ekledi. Ancak, iş yükleri gerçek zamanlı video analizi ve büyük AI eğitimi ile daha heterojen hale geldi - yazılım-yalnızca modeldeki duvarlara çarpmaya başladı - yazılım-yalnızca geçncy ve enerji verimliliği.

Sonraki nesil sanallaştırma, sanal makinelerin ve konteynerlerin ötesinde genişliyor ve iyi hazırlanmış programlanabilirlikleriyle, onantlar arasında dilimlenmiş bir donanım hızlandırma katmanı sağlar ve bu modellerde donanım hızlandırıcıları her iş yükü sınıfındaki özel ihtiyaçlarına göre tedavi edilir. Açık Altyapı projesi, bu tür FPGA'ları kullanarak, bu tür FP kaynak havuzlu satıcılar arasında dilimlenebilirlik sağlar.

Bu değişim, sanallaştırma platformlarının donanım çeşitliliğini nasıl yönetdiğini derinden bir şekilde düşünmek gerekir. Geleneksel hipervizörler sadece soyutlanmış CPU ve hafıza; modern orkestralar da keşfedmelidir, tümocate ve yaşam döngüsü-manage FPGA bölümlerini. Kubernetes cihazlar için eklentiler olgunlaşmıştır, FPGA'lar CPU çekirdeklerini talep ettikleri gibi özel hızlandırma işlevlerini talep etmeleri için izin verir.

FPGAs Sanallaştırmayı Nasıl Hızlandırır: Teknik Mechanisms

CPUlar, talimatların uygun şekilde yürütülmesine yönelik genel amaçlı motorlardır. FPGAs, aksine, harita doğrudan uzaysal mantıka, büyük paralellik ve derin boru hatlarının talimat vermeden kodlanma döngüsüne olanak sağlar.Bu, sanallaştırma için birkaç ivme mekanizmasına sahiptir:

  • [FONT:0) Deep borulining ve düşük çözünürlük işleme:[Dönetici: 0:0) Kripto, derin paket denetimi ve L4 yük dengelemesi sabit, deterministic latencies ile uygulanabilir, genellikle 1 mikrosaniyenin altında. Örneğin, bir FPGA tabanlı saldırı tespit sistemi, gerçek zamanlı uygulamaları çiğneyen jitter ile uyumlu olarak paketleri analiz edebilir.
  • [FONT:0)Müşteriler hafıza hiyerarşileri: [Dönetici: 0DDüzücüler üzerinde RAM ve UltraRAM, genel CPU önbelleklerinin performansını aşan uygulama-özel önbelleklere ve tamponlara özel olarak ayarlanabilir.Bu özellikle NVMe cihazları yazmadan önce sanallaştırılmış depolama kontrolörleri için faydalı olacaktır.
  • [[Düzg:0)Bit seviye manipülasyonu:[Dönetici:[Dönetici:0)[Dönetici:0)Bit seviye manipülasyonu:[Dönetici:[Döneticiler ve kelimeler üzerinde çalışır; bir FPGA bireysel bitleri manipüle edebilir, protokol parsing, paket filtreleme ve kriptografik işlemler için ideal hale getirebilir. Sanal ağ işlevleri bu kapasiteden doğrudan faydalanır.
  • [FONT:0]Dynamic kısmi yeniden yapılandırma: Bu yetenek, diğer bölgelerin işletime devam ederken, sabit yaşam geçişini kesintiye uğratmadan sağlarken, bir telkoyu bir FPGA bölgesine bir güvenlik görevlisini güncellemek için bir başka cihazda işlem trafiğini devam ettirebilir.

Bu yetenekler sanallaştırılmış ağ işlevleri, yazılım tanımlı depolama ve gerçek zamanlı güvenlik cihazları ile mükemmel bir şekilde uyumludur. Daha derin bir teknik perspektif için, [[Dönetici:0)Intel'in FPGA belgesi) detaylı performans kriterlerini sağlar. Dahası, AMD'nin uyarlayıcı bir bilişim ürünleri CXL desteği ile sertleştirilmiş PCIe sahiptir, FPGA'lar ev sahibi işlemcilerle iletişim kurar.

Network Function Virtualization ve FPGA Offload

NFV de çift ağ işlevleri – yangın duvarları, yük dengeleyicileri, WAN optimizeörler, saldırı algılama sistemleri – standart sunucularda onları çalıştırın, yerine, standart sunucularda yazılım olarak çalıştırın. x86 sunucular birçok ağ görevinde adeptalırken, yüksek paket oranları gerektiren işlevleri (örneğin yüzlerce Gbps) genellikle küçük CPU çekirdeğinde, onant VM'ler için daha az baş oda bırakıyor.

Intel ve AMD’den gelenler gibi FPGA tabanlı SmartNICs, ağ arayüzü kartında programlanabilir mantık doğrudan yer almaktadır. Tüm verileri VM'ye kadar hızlandırabilirler:

  • [FONT=0)Virtual Switch:[Dönetici:[Dönetici: 0)Exloading Open v Transition (OVS) veya benzer sanal anahtarlar CPU'yu azaltır ve performans bozulmadan ileri düzeydeki masaya doğrultmaktadır.
  • [FONT:0]Tunneling encapsulation/decapsulation: [Dönetici: VXLAN, Geneve ve GRE tünelleri tel hızda ele alınır, per-packet CPU kesintilerinden kaçınır.Bu, doğu-batı trafiğinin yüzlerce tünelin tersyüzlü bulutları için kritiktir.
  • [FONT:0]Stateful akış izleme:[Dönetici:0][Dönetici:0)Işık akış izleme:[Döneticisel güncelleme oranları ile girişleri milyonlarca bağlantı takip edebilir, yüksek performanslı devletli güvenlik birimlerine izin verir.
  • [FONT=0]Telemetri ve QoS:[Dönder:[Dönder: 1) In-band Network telemetri ve hassas trafik şekillendirmesi, veriyi jitter eklemeden sanallaştırma yönetimi uçağa uygulamakta ve gerçek zamanlı görünürlük sağlar.

Bu işlevleri yükleyerek servis sağlayıcıları, sanallaştırılmış Müşteri Premises Ekipmanı (vCPE) dağıtabilir ve doğrudan bulut benzeri esnekliği ile taşıyıcı-grad performansını birleştiren yüksek seviyeli bir dilde (DDD) FPGA verileri için de uygulamaktadır.

Depolama Sanallaştırma ve FPGA-accelerated Data Processing

Sanal depolama sistemleri – soğutmalı depolama, hiperconverged altyapı, NVMe-oF hedefleri – talep edilen yüksek kodlu, düşük seviyeli veri hareketlerini güçlü veri azaltımı hizmetleri ile yönetmektedir. CPUs kontrol düzlem karmaşıklığını yönetmek için mücadele eder, ancak verileri modern NVMe sürücüleri ve 100+ Gbps ağlarında hesaplamadan şifrele mücadele ederler.

FPGAs depolama veri yolunda parlıyor:

  • [FONT:0]Inline sıkıştırma ve decompression: LZ4, Z standard, veya hatta özel kayıp kodcular, FPGA başına on iki GB /s elde edebilir ve CPU yükünü %90'dan fazla azaltabilirsiniz. Örneğin, bir orta sınıf FPGA, 50 GB /s'ta verileri daha az miktarda gecikmiş bir mikrosaniye ekledi.
  • [FONT:0)Deduplication ve hashing:) FPGA'lar SHA-256 veya diğer parmak izlerinin yayın modasında yer aldığı ve parmak izlerini herhangi bir yazılım yaklaşımından çok daha hızlı yönetebilmeleri.Bu, gerçek zamanlı olarak sanal makine görüntüleri ve yedekleme akışları için dezenfeksiyonlar sağlar.
  • [FONT=0)Erasure kodlama ve RAID:) FPGA mantığı, kodlar için sıra dışı bloklar oluşturabilir, yazılım tanımlı depolama havuzlarını ana işlemcilere yük olmadan dayanıklı hale getirebilir.In hiper-converged clusters, this offload can double the number of drive that a single CPU node can serve.
  • [FONT:0]NVMe over Fabrics end: FPGAs, SmartNIC'lerde gömülü olan FPGA'lar NVMe-oF TCP veya RoCE bağlantılarını ve doğrudan yerel NVMe sürücülerine köprüyü, sanal isim uzaylarını yakın-bare-metal gecikmeli VM'lere sunmak için Azure'leri ortadan kaldırabilir.

AMD'nin uyarlanabilir hesaplama platformları zaten bu yetenekleri sunmak için depolama dizilerinde ve HCI düğümlerinde kullanılır, genellikle aynı etkili depolama performansı için daha az CPU soketlerine izin vererek toplam mülk maliyetini azaltır.

Sanal Ortamlarda Donanım tabanlı Güvenlik

Sanallaştırma yeni saldırı yüzeyleri yaratır: hipervizör molası, VM-to- VM yan kanalları ve uzlaşmacı sanal cihazlar. FPGAs, atlamak ve güçlü izolasyon sağlamak zor olan donanım seviyesinde güvenlik işlevlerini uygulayabilir.

Anahtar güvenlik rolleri şunları içerir:

  • [FONT:0) Güven ve güvenli bir bootRoot:) FPGA'lar, hipervizör ve bilgisayar görüntülerinin CPU'dan önce bütünlüğünü doğrulamak için yapılandırılabilir, bir donanım-anchored güven zinciri kurmak. Örneğin, FPGA, istasyonda rapor imzalamak için kullanılan eşsiz, hayal kırıklığılı bir kimlik anahtarı tutabilir.
  • [FONT:0) CPU yük olmadan Doğrulanmış şifreleme: AES-GCM ve diğer ciphers, finans ve sağlık hizmetleri gibi düzenlenmiş endüstrilerde, şeffaf VM-to-VM şifrelemesini sanallaştırılmış bir kümede sağlar, CPU döngüleri çalmadan önce, özellikle de finans ve sağlık hizmetleri gibi organize endüstrilerde değerlidir.
  • [FONT:0]Side-kanı direniş: [Dönetici: [Dönetici:0]Side-kanser direnci: [Döneticileri], her bir FPGA-placed hızlandırıcının fiziksel olarak bölünmesine izin verir, böylece birden fazla kiracının verileri asla ortak olarak, çoklu çekirdekli CPU'da önbellekli saldırılarda kesintiye uğratamaz.
  • [FONT:0]Dynamic güvenlik politikası uygulamaları:) Çünkü FPGA mantığı, ev sahibi olmayan tehditlere cevap vermek için kısmen yeniden yapılandırılabilir, çok katmanlı bulutlar için kritik bir özellik olarak güncellenir. Örneğin, bir protokolde sıfır gün kırılganlığı, uygun bir FPGA bölgesine göre bir miktar daha fazla değişebilir.

Bu teknikleri birleştirmek, FPGA tabanlı istasyon ve şifreleme yükleri tarafından zaten tamamlanmış değildir. Hipervizör bile sanallaştırılmış ortamlarda güvenilen standartlar üzerinde çalışmaz.

AI ve Machine Learning Workloads on FPGA-enhanced Virtualized Platforms

Yapay zeka, sanallaştırılmış, çok katmanlı ortamlara adanmış GPU sunucularından hızla hareket ediyor. GPUs büyük yüzen akışlar veriyor, sabit mimari ve yüksek boş güç onları birçok küçük modelin sanallaştırılmış ortamlarda yönlendirmesi gereken karışık iş yükleri için daha az uygun hale getiriyor:

  • [FONT=0)Müşterilerin numeric hassaslığı: [Döneticileri FP32/FP16/INT8 ile sınırlı olan, FPGA'lar, makul bir doğruluk kaybı ile 4bit tamsalar ile 4bit tamsalar halinden kolayca elde edilebilir. Örneğin, hafıza genişliği ve gücü en aza indirmek için ölçümlenen modeller FPGA'lerde çalıştırılabilir.
  • [FONT:0) Düşük-latency, yüksek-taput toplulaştırma: [Dönetici: [Dönetici: 0:0) Bir FPGA, aynı anda çok sayıda uyarıda birden fazla kanalda hizmet etmek için yapılandırılabilir, tutarlı alt-millisan latencies'u ağ-in saldırı algılama veya ses asistanları gibi gerçek zamanlı uygulamalar için ideal olarak teslim edebilir.
  • [FONT:0) Çok katmanlılık desteği: [Dönderlik ile] Kısmen yeniden yapılandırma, tek bir FPGA kartı, her biri farklı VM veya konteynerlere tahsis edilmiş, onants arasında sert izolasyona sahiptir.
  • [FONT:0)Integrated preprocessing: Görme AI için, bir FPGA, görüntüyü yeniden boyutlandırma, renk dönüştürme ve veri akışına erişmeden önce veri akışına normalleştirme, veri hareketini ve CPU katılımına eriştirir.Bu, yüksek bant genişliği akışları üreten kenar video analizi için kritiktir.

Microsoft'un Project Brainwave, şimdi Azure'un bir parçası, FPGA'ların kenarda derin sinir ağlarını nasıl hızlandırabileceğini ve benzer mimarileri doğrudan sanallaştırılmış Azure altyapısıyla (görenFLT:0) bu Azure blog yazısının bir parçası olarak ortaya çıktı.Bu model, hiperscalers AI'nın şu anda AWS, Alibaba ve Huawei'den FPGA örnekleriyle bulut ölçeğinde nasıl dağıtılabileceğini etkiledi.

Edge Computing ve 5G: Sonraki Nesil Sanallaştırma Talepleri

5G ağlarının ve kenar hesaplamalarının yükselişi, merkezileştirilmiş veri merkezlerinden binlerce dağıtılan siteye sanallaştırmayı genişletiyor. kenarda, fiziksel uzay, güç ve soğutma sınırlıyken, iş yükleri, potansiyelsiz kullanım için düşük ücretli işlem, endüstriyel IoT ve artırılmış gerçeklik gibi.

FPGAs, kenardaki sonraki enerji sanallaştırmayı birkaç eşsiz şekilde destekliyor:

  • [FONT=0)Virtualized RAN (vRAN) Hızlandırma: [Dönetici: 0:1) 5G'nin fiziksel katmanı işlemesi, büyük MIMO kanal tahminleri, ileri hata düzeltmesi (PC/Polar) ve birçok satıcının bu tasarımlara ilişkin ayrıntılı olarak bu hesaplama-yoğuk işlevleri gerçek zamanlı olarak gerçekleştirebilmeleri için, sanallaştırılmış bazband ünitesi (vBBU) sunucularda işletmesi için izin verir.
  • [[Dönetici Edge Computing (MEC): ) FPGA-güçlü kenar düğümleri birden fazla sanal ağ işlevleri ve uygulama görevlerine ev sahipliği yapabilir, tüm gün boyunca bir vRAN hızlandırıcısını paylaşıyor.
  • [FONT=0]Time-sensitive ağ: [Dönetici kenar uygulamaları genellikle IEEE 802.1AS ve 802.1Qbv zaman-aware formlayıcıları gerçek zamanlı kontrolü kullanarak geç saatlere kadar garanti etmek için. FPGA'nin nanosaniye doğruluğu ile 1588 Hassasiyet Zaman Protokolünü de desteklemesi gerekir.

Ekrandaki FPGA'ların ve konteynerleşmiş mikro hizmetlerin kombinasyonu, Azure Edge ve AWS Greengras gibi donanım hızlandırıcı bölgelerin dinamik atamasını desteklemek için yeterince olgunlaşır.

FPGA Entegrasyonu için Zorluklar ve En İyi Uygulamalar

Güçlülerine rağmen, FPGAs karmaşıklığa sahiptir. Başarılı bir şekilde onları sanallaştırılmış platformlara entegre etmek birkaç zorlukla ele almak gerekir:

  • [FONT=0]Programlama karmaşıklığı: [Dönetici 1] Geleneksel FPGA geliştirme, Verilog veya VHDL gibi donanım tanımlama dillerini kullanır, bu da veri merkezi bağlamda FPGA programlaması için kabul edilir. Yüksek seviyeli sentez araçları (C/C++ to HDL) ve AMD Vitis birleşik yazılım platformu gibi çerçeveler bu bariyeri azaltır, ancak bir yetenek boşluk kalır.
  • [FONT:0)Orchestration and lifecycle management:) Kubernetes ve OpenStack gibi Sanallaştırma orkestraları ve OpenStack CPU ve GPU kaynakları için tasarlanmıştır. FPGA bitleri, hızlandırıcı işlevleri ve ev sahibi sürücüler arasında uyumluluk sağlamak ve hitsiz kısmi yeniden yapılandırmaları yapmak.
  • [FONT:0) Çok katmanlılık izolasyonu:[Döneticileri arasında bir FPGA’yı birden fazla VM arasında paylaşmak, aynı zamanda dış hafıza arayüzleri ve PCIe yol açan şeritler üzerinde doğrudan cihaz atamasını gerektirir. Gelişmiş FPGA mimarisi artık donanıma sahip uzaysal izolasyon ve kaliteli hizmet monitörleri içerir.
  • [FONT=0]Power ve termal kısıtlamalar:[Dönetici:[Dönetici:0) Güç ve ısıtımı (Cing) gibi araçlar, hızdaki güç optimizasyonuna ihtiyaç duyulduğunda, hıza ve gerilim ölçeklendirmeye dahil olmak üzere, daha az miktarda tasarruf sağlar.

Bu zorlukların üstesinden gelmeyen örgütler genellikle AWS F1 veya Alibaba'nın F-understood, yüksek hacimli fonksiyonlar (örneğin şifre, kompresyon, ağ geçiş) için düşük riskli bir ortam sağlayabilir.*

Diğer Hızlandırıcılarla Karşılaştırmak

FPGA'ların CPU'lara, GPU'lara ve ASIC'lere sanallaştırılmış bir yığınta uygun olduğunu anlamak önemlidir; CPU'lar, kontrol-gezegen ve genel iş yükleri için en esnek ve en kolay program için onları sağlar.

ASICs, özel bir işlev için en iyi performansı sunar, ancak iş yüklerinin dakikada değişebileceği bir sanal ortamda, FPGA ünitesinin kendisi bir ASIC'den daha pahalıya mal olacak şekilde genişletilebilir.

Sonraki nesil sanallaştırma için birçok mimar, CPU'ların sanallaştırma kontrol uçağı ile başa çıkma konusunda heterojen bir model benimsemekte, GPU'lar toplu eğitim alıyor ve FPGA'lar bu hızlandırıcılar boyunca hafızayı hızlandırmaya yardımcı oluyor, her cihazın en iyi şekilde ne yaptığını paylaşmasını sağlar, sanallaştırma platformu onları birleşik bir kaynak havuzu olarak orkestralar. CXL interconnecting bellek semanticsini bu hızlandırıyor.

Future Outlook: FPGAs, Boş Altyapının Köşesi Olarak

Endüstri, tam olarak uygulanabilir, ayrıştırılmış altyapıya doğru ilerliyor, hesaplar, bellek, depolama ve hızlanan CXL ve PCIe 6.0 gibi yüksek hızlı kumaşlar.Böyle mimarilerde, FPGA'lar sadece sabitlenebilir-işlevsiz PCI kartları olmayacak; sanal sunucularda toplanabilir, mantıksal cihazlarla bir araya getirilecektir.

FPGA'yı ileriye götüren temel eğilimler şunları içerir:

  • [FONT:0) CPU ile Derinleştirme: Intel'in Xeon entegre FPGA ve AMD'nin geleceği adaptive SoCs, genel amaçlı ve yeniden yapılandırılabilir mantık arasındaki hattı bulanıklaştıracak, en az yük ile iyi yapılandırılabilir.
  • [FONT:0)Açık kaynak FPGA aracı zincirleri: OR-Tools ve Symbiflow gibi toplumlar, araç maliyetlerini azaltacak ve inovasyonu teşvik edecek açık kaynaklı araçlar geliştiriyorlar ve GCC'nin demokratikleştirilmiş yazılım derlemesini de teşvik ediyor.
  • [FONT=0]AI-güdümlü kaynak yönetimi:[Dönetici:[Döneticileri) Makine öğrenme modelleri, iş yük modellerini tahmin edecek ve dinamik olarak, günümüzün statik tahsislerinin ötesinde kullanım oranlarına ulaşmak için en uygun FPGA bitleri yükleyecek. Örneğin, Kubernetes programı, bir Kubernetes programı, gerçek zamanlı iş yük ölçümlerine dayalı olarak şifreleme veya sıkıştırmaya karar vermek için takviyeli bir öğrenme modelini kullanabilir.
  • [FONT=0)Post-quantum kriptografi: kuantumya dayanıklı algoritmaları zorunlu hale gelirken, hesaplama yoğunlukları muhtemelen FPGA tabanlı güvenliklerini korumak için sanallaştırılmış ortamlarda yüklenecektir. NIST'in standartlaştırması bu eğilimi hızlandırıyor ve FPGA satıcılar zaten lattice- bazlı kriptografi için IP çekirdeklerini serbest bırakıyor.

Endüstri analistleri, FPGA tabanlı hız pazarının 5G, kenar AI ve yazılım tanımlı her şeyin ana akım haline geldiğini görürler ve FPGA'lar tüm bunları mümkün kılan en uygun donanım temeli sağlar.

Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç

Gelecek nesil sanallaştırma teknolojileri, ham CPU çekirdeği ve daha hızlı ağlardan daha fazlasını talep ediyor.Geçmişli fonksiyonlarda yeniden tasarlanabilir ve ağ kurma ihtiyacı olan CPU'lar, depolama, güvenlik, AI ve kenar hesaplamalarına odaklanır. FPGAs bu nişi benzersiz bir şekilde doldururken, donanım seviyesindeki performansı sağlar. gecikmiş fonksiyonlarla şarj ederek, FPGAs, CPU'lar orkestraya odaklanmaya ve iş mantığına odaklanır.

Bulut mega ölçekli veri merkezlerinden 5G'nin uzak tarafına kadar, FPGA'lar zaten sanallaştırılmış ağ işlevlerini hızlandırıyor ve onant iş yüklerini güvence altına alıyor ve verimli AI inference.In toolschains olgun ve orkestration frameworks, FPGA'ları ilk sınıf hesaplamalı kaynaklar olarak yeniden yapılandırmak için geliştikçe, donanım ve yazılım arasındaki çizgi daha fazla seçenekli bir şekilde bulanık hale getiriyor - dinamik bir performans için uygun hale getiriyor.