Röportaj: Neden Java bulut uygulamalarının geleceği?


ARM64 işlemcilerin enerji tüketimi açısından düşük güçte olması, aynı hacimdeki veri merkezi alanına x86 donanımına göre daha fazla sunucunun sıkıştırılabileceği anlamına gelir.

İş yükleri ARM64 donanımında çalışabiliyorsa veri merkezi rafı başına daha fazla işlem gücü kullanılabilir. Örneğin her ARM tabanlı raf, x86 sunucu raflarının veri merkezi enerji ve soğutma ihtiyaçlarından daha az güç tüketir ve daha az soğutma altyapısı gerektirir.

Scott Sellers, kurumsal Java uygulamaları geliştirmek ve çalıştırmak için Azure Platform Core adlı Oracle Java Development Kit’e (JDK) alternatif sunan bir şirket olan Azul’un CEO’sudur. Sellers, Computer Weekly ile yaptığı röportajda işlemci mimarilerinin kurumsal yazılım geliştirme üzerindeki etkisini ve Java’nın orijinal “bir kere yaz, her yerde çalıştır” mantrasının neden her zamankinden daha önemli olduğunu tartışıyor.

Artık kurumsal uygulamalar için tek hedef platformun Intel veya AMD destekli x86 sunucuları olması söz konusu değil. Nvidia’nın grafik işlem birimleri (GPU’lar) ve ARM’nin alternatif sunucu yongalarının varlığı, kurumsal uygulamaların dağıtımında hedef sunucu platformu seçiminin önemli bir karar olduğu anlamına geliyor.

ARM’ın yükselişi

Sellers, “ARM64 mimarisindeki yeniliğin pazar üzerinde derin bir etki yarattığına şüphe yok” diyor. Örneğin, Amazon’un Amazon Web Services (AWS) için ARM64 tabanlı sunucu mimarileri geliştirmeye önemli yatırımlar yaptığını, Microsoft ve Google’ın da ARM sunucu girişimlerine sahip olduğuna dikkat çekiyor.

“X86 sunucularla karşılaştırıldığında doğası gereği daha uygun maliyetli bir platform” diye ekliyor. “Zamanın bu noktasında performans x86’ya eşit, hatta daha iyi ve genel güç verimliliği de maddi olarak daha iyi.”

Satıcılara göre ARM64 iş yüklerinin arkasında büyük bir ivme var. Genel bulutlar genellikle Python, Java, C++ ve Rust dahil birden fazla programlama dilini desteklerken, hedef platform için derlenmesi gereken programlama dillerini kullanmak, x86 ile ARM tabanlı sunucular arasında geçiş yaparken kaynak kodunun yeniden gözden geçirilmesi anlamına gelecektir. Uygulama çalıştırıldığında “tam zamanında” derlenen Python ve Java gibi yorumlanmış diller, uygulamaların yeniden derlenmesini gerektirmez.

Java’nın güzelliği uygulamanın değiştirilmesine gerek olmamasıdır. Hiçbir değişiklik gerekli değildir. Gerçekten işe yarıyor

Scott Sellers, Azul

“Java’nın güzelliği, uygulamanın değiştirilmesine gerek olmamasıdır. Hiçbir değişiklik gerekli değildir. Gerçekten işe yarıyor” diyor.

Satıcılara göre, yeniden platform oluşturma çabaları genellikle çok fazla çalışma ve çok sayıda test içeriyor; bu da bulut iş yüklerini x86 sunucularından ARM64’e geçirmelerini çok daha zorlaştırıyor. “Uygulamalarınızı Java’ya dayandırırsanız bu bahisleri yapmak zorunda kalmazsınız. Bunları mevcut olana göre dinamik olarak yapabilirsiniz” diyor.

Bu, bir hizmet olarak genel bulut altyapısında, bir Java geliştiricisinin kodu yalnızca bir kez yazması ve Java çalışma zamanı derleyicisinin, kod çalıştırıldığında hedef işlemci için makine kodu talimatlarını oluşturması anlamına gelir. BT karar vericileri, maliyet ve performansı dinamik olarak değerlendirebilir ve ihtiyaç duydukları maliyet veya performans düzeyine göre işlemci mimarisini seçebilir.

Satıcılar, Java’nın hem x86 hem de ARM64 platformlarında olağanüstü derecede iyi çalıştığını iddia ediyor. Azul müşterilerinin, şirketin Java çalışma zamanı motorunu kullanarak %30 ila %40 performans avantajı gördüklerini söylüyor. “Bu hem x86 hem de ARM64 için geçerli” diye ekliyor.

Satıcılar, BT liderlerinin, hedef iş yükünde herhangi bir değişiklik yapmaya gerek kalmadan ARM64 platformundaki performans ve verimlilik artışından yararlanabileceğini söylüyor. Genel bulutta, iş yükünün aynı performans düzeyine ulaşmak için daha az bulut tabanlı işlem kullanması nedeniyle bunun yalnızca para tasarrufu sağlamakla kalmayıp, aynı zamanda iş yükünün daha hızlı çalıştığını da söylüyor.

İş yükünün hangi platformda dağıtılacağı kararı, Satıcıların yatırım getirisi hesaplamasının bir parçası olarak değerlendirilmesi gerektiğini düşündüğü bir karardır. “Aynı miktarda bellek ve işleme kapasitesi için bir ARM64 bilgi işlem düğümü genellikle x86 eşdeğerinden yaklaşık %20 daha ucuzdur” diyor. Bunun teknoloji sektörü için iyi olduğunu ekliyor. “Açıkçası Intel ve AMD’nin dürüst olmasını sağlıyor.”

Şunları ekliyor: “Bazı büyük müşterilerimiz artık bulutta yalnızca hibrit dağıtımlara sahip ve hibrit derken kastettiğim, tüm dünyanın en iyisini elde etmek için x86 ve ARM64’ü aynı anda çalıştırıyorlar.”

Satıcıların kastettiği şey, müşterilerin iş yüklerini ARM64 altyapısında çalıştırmak istemesine rağmen, genel bulut altyapısında çok daha fazla x86 kitinin dağıtıldığı gerçeğidir.

Sellers’a göre bu durum zamanla değişecek olsa da, Azul’un en büyük müşterilerinin çoğu, genel bulut sağlayıcılarından yeterli miktarda ARM64 bilgi işlem düğümü satın alamıyor, bu da bahislerini biraz korumaları gerektiği anlamına geliyor. Bununla birlikte Satıcılar, ARM64’ü kaçınılmaz olarak genel bulut bilişim altyapısında baskın bir güç haline gelecek bir şey olarak görüyor.

Neden her zaman GPU’larla ilgili olmuyor?

Nvidia, veri merkezinde yapay zeka (AI) iş yüklerini güçlendirmek için grafik işlem birimlerine (GPU’lar) büyük talep gördü. GPU’lar yüzlerce nispeten basit işlemci çekirdeğini tek bir cihazda toplar; bu cihaz daha sonra paralel çalışacak şekilde programlanabilir ve böylece yapay zeka çıkarımı ve makine öğrenimi iş yüklerinde gereken hızlanma elde edilir.

Satıcılar yapay zekayı, her biri nispeten basit bir dizi talimat çalıştıran çok sayıda GPU işleme çekirdeği kullanılarak çözülebilecek “utanç verici derecede paralel” bir sorun olarak tanımlıyor. GPU’nun yapay zekanın motoru haline gelmesinin nedeni budur. Ancak bu, onu, birçok karmaşık görevin aynı anda çalışacak şekilde programlandığı, yüksek derecede paralellik gerektiren tüm uygulamalar için uygun kılmaz.

Azul’un müşterilerinden biri olan finans borsası LMAX Group için Satıcılar, GPU’ların asla çalışmayacağını söylüyor. “Çok yavaş olurlar ve LMAX’in kullanım durumu yapay zeka kadar paralel olamaz.”

GPU’ların, nispeten basit bir işlem parçasının birçok işlemci çekirdeğine dağıtılabildiği çok özel bir uygulama türünü hızlandırmada yararlı olduğunu söylüyor. Ancak GPU, karmaşık kodların birden fazla işlemcide paralel olarak çalıştırılmasını gerektiren kurumsal uygulamalar için uygun değildir.

Satıcılar, kurumsal uygulamalarda GPU’ların kullanılıp kullanılmayacağı konusundaki donanım tartışmasının ötesinde, GPU’ları hedefleyen yapay zeka yazılımını kodlarken programlama dili seçiminin önemli bir husus olduğuna inanıyor.

İnsanlar Python’da yapay zeka uygulamaları programlamaya aşina olsalar da şöyle diyor: “İnsanların anlamadığı şey, Python kodunun gerçekte hiçbir şey yapmadığıdır. Python, işi GPU’lara aktarmanın yalnızca ön ucudur.”

Satıcılar, Java’nın yüksek derecede paralellik gerektiren geleneksel kurumsal uygulamaları geliştirmek ve çalıştırmak için diğer programlama dillerinden daha uygun olduğunu söylüyor.

Nvidia, geleneksel kurumsal uygulamalar yazarken GPU dili CUDA’yı sunarken, Sellers, Java’nın gerçek vektör yeteneklerine ve devasa çoklu iş parçacığı yeteneklerine sahip tek programlama dili olduğunu söylüyor. Satıcılara göre bunlar, Java’yı paralel hesaplama yetenekleri gerektiren programlama uygulamaları için daha iyi bir dil haline getiriyor. Java 21 ile birlikte gelen sanal iş parçacığı ile yüksek verimli eşzamanlı uygulamaların yazılması, bakımı ve hata ayıklaması daha kolay hale geliyor.

“Birden fazla bilgisayar işleminin aynı anda yürütülmesini sağlayan vektörleştirmenin yanı sıra iş parçacığı oluşturma, son birkaç Java sürümünde çok daha iyi hale geldi” diye ekliyor.

Azul’un ürün teklifleri göz önüne alındığında, Satıcılar açıkça Java programlama dilinin erdemlerini yüceltecekler. Ancak konuşmada BT karar vericilerinin dikkate alması gereken ortak bir konu var. Kurumsal BT’nin geleceğinin bulut tabanlı bir mimarinin hakimiyetinde olduğunu varsayarsak, bazı iş yüklerinin şirket içinde çalıştırılması gerekse bile, BT liderlerinin x86’nın şehirdeki tek oyun olmadığı yönündeki yeni gerçeği ele alması gerekiyor.



Source link