OpenCL 3.0'ın son özellikleri zaten yayınlandı

Birkaç ay önce paylaştık burada blogda haberleri OpenCL 3.0'ın geliştirilmesinin yayınlanması Khronos Endişesi (OpenGL, Vulkan ve OpenCL ailesi için spesifikasyonların geliştirilmesinden sorumludur).

Ve yakın zamana kadar öyleydi OpenCL 3.0 özelliklerinin son sürümü duyuruldu, çok çekirdekli CPU'lar, GPU'lar, FPGA'lar, DSP'ler ve süper bilgisayarlarda ve bulut sunucularında kullanılanlardan mobil cihazlarda ve entegre teknolojide bulunabilen çiplere kadar diğer özel çipler kullanarak çok platformlu paralel hesaplamayı düzenlemek için C dilinin API'lerini ve uzantılarını tanımlıyor.

Aynı zamanda, açık kaynaklı bir OpenCL SDK piyasaya sürüldü OpenCL 3.0 uyumlu uygulamalar geliştirmek için araçlar, örnekler, belgeler, başlık dosyaları, C ++ ve C kitaplıkları için bağlantılar.

Clang derleyicisine dayanan OpenCL 3.0'ın ilk uygulaması da sunulmuştur, ana LLVM paketine dahil edilmek üzere akran değerlendirmesi aşamasındadır. IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments ve Toshiba gibi şirketler standarda katkıda bulunmuştur.

Bugün, Khronos® OpenCL ™ Çalışma Grubu, geliştiricilerin hızlı bir şekilde ayağa kalkmasını sağlamak için bir Khronos OpenCL SDK'nın erken bir ilk sürümü ile birlikte yeni bir birleşik OpenCL C 3.0 dil spesifikasyonu da dahil olmak üzere nihai OpenCL 3.0 spesifikasyonlarının yayınlandığını duyurmaktan memnuniyet duyar. ve OpenCL ile hızlanın.

OpenCL 3.0 ana özellikleri

OpenCL 3.0 API şimdi OpenCL'nin tüm sürümlerini kapsar (1.2, 2.x), ayrı özellikler sağlamadan her sürüm için.

OpenCL 3.0, OpenCL 1.2 / 2.X'in yekpare doğasını engellemeden seçenekler biçiminde örtüşecek ek spesifikasyonları entegre ederek temel işlevselliği genişletme yeteneği sunar.

Yalnızca karşılayan işlevsellik OpenCL 1.2 zorunlu ilan edildive içinde önerilen tüm özellikler OpenCL 2.x özelliklerine isteğe bağlı denir.

Bu yaklaşım, OpenCL 3.0 ile uyumlu özel uygulamaların oluşturulmasını basitleştirecek ve OpenCL 3.0'ın kullanılabileceği cihaz yelpazesini genişletecektir.

Örnek Üreticiler, belirli OpenCL 3.0.x özelliklerini uygulamadan OpenCL 2 desteği uygulayabilirler. İsteğe bağlı dil işlevlerine erişmek için, ayrı API öğelerinin yanı sıra özel makrolar için desteği değerlendirmek üzere OpenCL 3.0'a bir test isteği sistemi eklenmiştir.

Önceden yayımlanan spesifikasyonlarla birleştirme, uygulamaları OpenCL 3.0'a çevirmeyi kolaylaştırır. OpenCL 1.2 uygulamaları, değişiklik yapmadan OpenCL 3.0'ı destekleyen cihazlarda çalışabilecektir.

uygulamaları OpenCL 2.x de kod değişikliği gerektirmez, ancak OpenCL 3.0 ortamı gerekli işlevselliği sağlıyorsa (gelecekteki taşınabilirlik için, OpenCL 2.x uygulamalarının, kullanılan OpenCL 2.x özellikleriyle uyumluluğu değerlendirmek için test sorguları eklemesi önerilir).

OpenCL uygulamalarına sahip sürücü geliştiricileri, yalnızca belirli API çağrıları için istek işleme ekleyerek ve zaman içinde işlevselliği kademeli olarak artırarak ürünlerini OpenCL 3.0'a kolayca yükseltebilirler.

OpenCL 3.0 spesifikasyonu çevre, uzantılar ve spesifikasyonlarla uyumlu hale getirildi genel orta SPIR-V, Vulkan API'de de kullanılmaktadır. SPIR-V 1.3 spesifikasyonu için destek, isteğe bağlı bir özellik olarak ana OpenCL 3.0'a dahil edilmiştir. Alt gruplarla işlemler için destek, hesaplama çekirdekleri için SPIR-V ara gösterimi kullanılarak eklenmiştir.

bunun yanı sıra DMA işlemlerini gerçekleştirmek için bir uzantı için destek eklendi Eşzamansız, DSP benzeri DMA yongalarında desteklenir.

Eşzamansız DMA, devam eden hesaplamalara veya diğer veri aktarımlarına paralel olarak küresel ve yerel bellek arasında eşzamansız olarak veri aktarmak için DMA işlemlerinin kullanılmasını mümkün kılar.

Paralel programlama uzantılarının özellikleri dil için C, 3.0 sürümüne güncellendi ve C ++ için OpenCL dil uzantılarının geliştirilmesi, "OpenCL için C ++" projesi lehine durdurulmuştur.

OpenCL'yi Vulkan API aracılığıyla çevirmek için clspv derleyicisi önerilir, OpenCL çekirdeklerini Vulkan SPIR-V gösterimine ve clvk katmanını OpenCL API'nin Vulkan'ın üzerinde çalışmasını sağlayan.

kaynak: https://www.khronos.org/


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.