MIT'den yeni CPU yük dengeleyici

Shenango sisteminin veri merkezlerinde kullanılması planlanıyor.

MIT'den yeni CPU yük dengeleyici
/ Fotoğraf Marco Verch CC BY

Sağlayıcılardan birine göre veri merkezleri Kullanılmış kullanılabilir bilgi işlem gücünün yalnızca %20-40'ı. Yüksek yüklerde bu gösterge %60'a ulaşabilir. Kaynakların bu şekilde dağıtılması, "zombi sunucular" olarak adlandırılan sunucuların ortaya çıkmasına yol açmaktadır. Bunlar çoğu zaman boşta duran, enerji israfına neden olan makinelerdir. Bugün dünyadaki sunucuların %30'u işsizYılda 30 milyar dolar değerinde elektrik tüketiyor.

MIT, bilgi işlem kaynaklarının verimsiz kullanımıyla mücadele etmeye karar verdi.

Mühendislik takımı geliştirdi Shenango adı verilen işlemci yük dengeleme sistemi. Amacı, görev arabelleğinin durumunu izlemek ve takılı kalan işlemleri (CPU zamanı alamayan) boş makinelere yeniden dağıtmaktır.

Shenango nasıl çalışır?

Shenango, Rust ve C++ bağlamalarına sahip C dilindeki bir Linux kütüphanesidir. Proje kodu ve test uygulamaları şu adreste yayınlanmaktadır: depolar GitHub'da.

Çözüm, çok işlemcili bir sistemin özel bir çekirdeğinde çalışan IOKernel algoritmasına dayanıyor. Bir çerçeve kullanarak CPU isteklerini yönetir DPDKuygulamaların ağ cihazlarıyla doğrudan iletişim kurmasına olanak tanır.

IOKernel, belirli bir görevi hangi çekirdeklere devredeceğine karar verir. Algoritma aynı zamanda kaç çekirdeğe ihtiyaç duyulacağına da karar veriyor. Her işlem için, ana çekirdekler (garantili) ve ek çekirdekler (patlanabilir) belirlenir - ikincisi, CPU'ya gelen istek sayısında keskin bir artış olması durumunda başlatılır.

IOKernel istek kuyruğu şu şekilde düzenlenmiştir: halka tamponu. Algoritma her beş mikrosaniyede bir çekirdeğe atanan tüm görevlerin tamamlanıp tamamlanmadığını kontrol ediyor. Bunu yapmak için tamponun başının mevcut konumunu kuyruğunun önceki konumuyla karşılaştırır. Önceki kontrol sırasında kuyruğun zaten kuyrukta olduğu ortaya çıkarsa sistem, arabellek aşırı yükünü not eder ve işlem için ek bir çekirdek ayırır.

Yük dağıtılırken, aynı işlemin daha önce yürütüldüğü ve kısmen önbellekte kaldığı çekirdeklere veya boşta kalan çekirdeklere öncelik verilir.

MIT'den yeni CPU yük dengeleyici

Shenango da bu yaklaşımı benimsiyor iş hırsızlığı. Bir uygulamayı çalıştırmak için ayrılan çekirdekler, birbirlerinin sahip olduğu görev sayısını izler. Çekirdeklerden biri görev listesini diğerlerinden önce tamamlarsa, komşularının yükünün bir kısmını “hafifletir”.

Avantajları ve dezavantajları

Üzerinde göre MIT mühendisleri sayesinde Shenango, saniyede beş milyon isteği işleme kapasitesine sahip ve ortalama 37 mikrosaniyelik yanıt süresini koruyor. Uzmanlar, teknolojinin bazı durumlarda veri merkezlerindeki işlemcilerin kullanım oranını %100'e çıkarabildiğini söylüyor. Sonuç olarak, veri merkezi operatörleri sunucu satın alma ve bakımından tasarruf edebilecek.

Çözüm Potansiyeli işaret ve diğer üniversitelerden uzmanlar. Koreli bir enstitüden bir profesöre göre MIT sistemi, web hizmetlerindeki gecikmelerin azaltılmasına yardımcı olacak. Örneğin, çevrimiçi mağazalarda faydalı olacaktır. İndirim günlerinde sayfa yüklemesinde ikinci bir gecikme bile oluyor приводит site görüntüleme sayısında %11 oranında azalma. Hızlı yük dağıtımı daha fazla müşteriye hizmet verilmesine yardımcı olacaktır.

Teknolojinin hala dezavantajları var; çoklu işlemciyi desteklemiyor numa- çiplerin farklı bellek modüllerine bağlandığı ve birbirleriyle “iletişim kurmadığı” sistemler. Bu durumda IOKernel ayrı bir işlemci grubunun çalışmasını düzenleyebilir, ancak tüm sunucu yongalarını düzenleyemez.

MIT'den yeni CPU yük dengeleyici
/ Fotoğraf Tim Reckmann CC BY

Benzer teknolojiler

Diğer işlemci yük dengeleme sistemleri Arachne'yi içerir. Bir uygulamanın başladığında kaç çekirdeğe ihtiyaç duyacağını hesaplar ve bu göstergeye göre süreçleri dağıtır. Yazarlara göre Arachne'deki bir uygulamanın maksimum gecikme süresi yaklaşık 10 bin mikrosaniyedir.

Teknoloji, Linux için bir C++ kütüphanesi olarak uygulanmaktadır ve kaynak kodu şu adreste mevcuttur: GitHub.

Bir diğer dengeleme aracı ise ZygOS'tur. Shenango gibi teknoloji de süreçleri yeniden dağıtmak için iş çalma yöntemini kullanıyor. ZygOS yazarlarına göre, aracı kullanırken ortalama uygulama gecikmesi yaklaşık 150 mikrosaniye, maksimum ise yaklaşık 450 mikrosaniyedir. Proje kodu da kamu malıdır.

Bulgular

Modern veri merkezleri genişlemeye devam ediyor Artış eğilimi özellikle hiper ölçekli veri merkezleri pazarında dikkat çekiyor: artık dünyada orada 430 hiper ölçekli veri merkezi, ancak önümüzdeki yıllarda sayıları %30 artabilir. Bu nedenle işlemci yük dengeleme teknolojileri büyük talep görecek. Shenango gibi sistemler zaten mevcut uygulamak büyük şirketler ve bu tür araçların sayısı gelecekte artacak.

İlk Kurumsal IaaS Blogundan Gönderiler:

Kaynak: habr.com

Yorum ekle