MIT, Yüksek Performanslı Bilgisayarlar için Yeni Programlama Dili Geliştiriyor

MIT, Yüksek Performanslı Bilgisayarlar için Yeni Programlama Dili Geliştiriyor | Görüntü işleme veya nöral ağlardaki çeşitli derin öğrenme uygulamaları gibi, birinin çok büyük veri yığınları arasında ilerlemek ve bunu makul bir şekilde hızlı bir biçimde yapmak zorunda olduğu, giderek artan sayıda görev için yüksek performanslı bilgi işlem gereklidir. Aksi takdirde gülünç hale gelebilir. Bu tür operasyonları gerçekleştirirken hız ve güvenilirlik arasında kaçınılmaz bir değiş tokuş olduğuna yaygın olarak inanılır. Bu görüşe göre hız birinci öncelikse, güvenilirlik büyük olasılıkla zarar görecektir ve bunun tersi de geçerlidir.

Bununla birlikte, esas olarak MIT’de bulunan bir araştırma ekibi, aslında her şeye sahip olabileceğini iddia ederek bu kavramı sorguluyor. MIT Bilgisayar Bilimi ve Yapay Zeka Laboratuvarı’nda (CSAIL) ikinci sınıf doktora öğrencisi olan Amanda Liu, özellikle yüksek performanslı bilgi işlem için yazdıkları yeni programlama diliyle, “hız ve doğruluk rekabet etmek zorunda değil” diyor. Bunun yerine yazdığımız programlarda birlikte, el ele gidebilirler” dedi.

Liu – Berkeley’deki California Üniversitesi’nden doktora sonrası Gilbert Louis Bernstein, MIT Doçent Doktor Adam Chlipala ve MIT Yardımcı Doçent Doktor Jonathan Ragan-Kelley ile birlikte geçen ay, yakın zamanda geliştirdikleri ” Bir Tensör Dili “nin (ATL) potansiyelini anlattılar. “Ya ​​tek bir sayı ya da bir tensör üretmeyi hedefliyor.” Tensörler de vektörlerin ve matrislerin genellemeleridir. Vektörler tek boyutlu nesneler(genellikle tek tek oklarla gösterilir) ve matrisler tanıdık iki boyutlu sayı dizileri iken, tensörler örneğin 3x3x3 veya daha yüksek bir dizi biçimini alabilen n boyutlu dizilerdir(veya daha düşük).

Bir bilgisayar algoritmasının veya programının bütün amacı, belirli bir hesaplamayı başlatmaktır. Ancak bu programı yazmanın birçok farklı yolu olabilir – Liu ve yardımcı yazarlarının yakında yayınlanacak olan konferans makalelerinde yazdığı gibi, “şaşırtıcı çeşitlilikte farklı kod gerçekleştirmeleri” – bazıları diğerlerinden çok daha hızlı. ATL’nin arkasındaki temel mantık şudur, diye açıklıyor: “Yüksek performanslı bilgi işlemin çok kaynak yoğun olduğu göz önüne alındığında, işleri hızlandırmak için programları en uygun biçimde değiştirebilmek veya yeniden yazabilmek istiyorsunuz. Kişi genellikle yazması en kolay olan bir programla başlar, ancak bu onu çalıştırmanın en hızlı yolu olmayabilir, bu nedenle daha fazla ayarlamaya hala ihtiyaç vardır.”

Örnek olarak, bir görüntünün her biri bir piksele karşılık gelen 100×100 sayı dizisiyle temsil edildiğini ve bu sayılar için ortalama bir değer elde etmek istediğinizi varsayalım. Bu, önce her satırın ortalamasını belirleyerek ve ardından her sütunun ortalamasını alarak iki aşamalı bir hesaplamada yapılabilir. ATL, bu iki aşamalı sürecin nasıl daha hızlı tek adımlı bir sürece dönüştürülebileceğini gösterebilecek, bilgisayar bilimcilerinin “çerçeve” dediği ilişkili bir araç takımına sahiptir.

Liu, “Prova asistanı adı verilen bir şey kullanarak bu optimizasyonun doğru olduğunu garanti edebiliriz” diyor. Bu amaçla, ekibin yeni dili, bir düzeltme yardımcısı içeren mevcut bir dil olan Coq üzerine kuruludur. İspat asistanı ise, iddialarını matematiksel olarak kesin bir biçimde kanıtlamak için içsel bir kapasiteye sahiptir.

Coq’un onu MIT tabanlı grup için çekici kılan başka bir özgün özelliği daha vardı: İçinde yazılan programlar veya onun uyarlamaları her zaman sona erer ve sonsuz döngülerde sonsuza kadar çalışamaz (örneğin Java ile yazılmış programlarda olduğu gibi). Liu, “Tek bir yanıt almak için bir program çalıştırıyoruz – bir sayı veya bir tensör” diye devam ediyor. “Asla sonlandırılmayan bir program bizim için işe yaramaz, ancak sonlandırma, Coq’u kullanarak ücretsiz olarak elde ettiğimiz bir şeydir.”

ATL projesi, Ragan-Kelley ve Chlipala’nın iki ana araştırma alanını birleştiriyor. Ragan-Kelley, uzun süredir yüksek performanslı bilgi işlem bağlamında algoritmaların optimizasyonu ile ilgilenmektedir. Bu arada Chlipala, algoritmik optimizasyonların resmi(matematiksel temelli) doğrulamasına daha fazla odaklandı. Bu, onların ilk işbirliğini temsil ediyor. Bernstein ve Liu geçen yıl şirkete getirildi ve sonuç ATL oldu.

Şimdi resmi olarak doğrulanmış optimizasyonlara sahip ilk ve şimdiye kadarki tek tensör dili olarak duruyor. Ancak Liu, ATL’nin bir dizi küçük programda test edilmiş umut verici olsa da hala sadece bir prototip olduğu konusunda uyarıyor. “İleriye baktığımızda ana hedeflerimizden biri, gerçek dünyada gördüğümüz daha büyük programlar için kullanılabilmesi için ATL’nin ölçeklenebilirliğini geliştirmektir” diyor.

Geçmişte, bu programların optimizasyonları genellikle elle, çok daha geçici bir temelde, genellikle deneme yanılma ve bazen de çok fazla hata içeren bir şekilde yapılırdı. ATL ile Liu, “insanlar bu programları yeniden yazmak için çok daha ilkeli bir yaklaşım izleyebilecek – ve bunu daha kolay ve daha fazla doğruluk güvencesiyle yapabilecekler” diye ekliyor.

MIT, Yüksek Performanslı Bilgisayarlar için Yeni Programlama Dili Geliştiriyor. | Referans-scitechdaily.com | Burak Boğa