Khronos OpenCL 3.0'ı duyurdu ve bunlar en dikkate değer özellikler

Khronos EndişesiOpenGL, Vulkan ve OpenCL ailesi için spesifikasyonların geliştirilmesinden sorumlu olan, OpenCL 3.0 özelliklerinin geliştirilmesinin tamamlandığını duyurdu çok çekirdekli CPU'lar, GPU'lar, FPGA'lar, DSP'ler ve diğer özel çipler kullanarak çok platformlu paralel hesaplamayı düzenlemek için API'leri ve C dili uzantılarını tanımlayan.

Bunlar süper bilgisayarlardan ve bulut sunucularından çiplere kadar kullanılır bulunabilir mobil cihazlarda ve gömülü teknolojide. OpenCL standardı tamamen açıktır. Standart çalışmalara IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments, Toshiba gibi şirketler katıldı.

Şartnamenin mevcut aşamasında, durum geçicidirGitHub aracılığıyla gönderilen yorumlara dayalı olarak iyileştirme olasılığını ifade eder. Yorumlar dikkate alındıktan sonra, şartname nihai durumu alacak ve son test paketi mevcut uygulamaların uyumluluğunu doğrulamak için yayınlanacaktır.

OpenCL 3.0 Özellikleri

OpenCL 3.0 API artık tüm OpenCL sürümlerini kapsıyor (1.2, 2.x), her sürüm için ayrı özellikler sağlamadan. OpenCL 3.0 ek spesifikasyonların entegrasyonu yoluyla temel işlevselliği genişletme yeteneği sağlar, OpenCL 1.2 / 2.X'in yekpare doğasını engellemeden seçenekler şeklinde düzenlenecektir.

Yalnızca OpenCL 1.2 ile uyumlu işlevsellik zorunlu olarak ilan edilir ve teknik özelliklerde sunulan tüm özellikler OpenCL 2.x isteğe bağlı olarak sınıflandırılmıştır. Bu yaklaşım, özel OpenCL 3.0 uyumlu uygulamaların oluşturulmasını basitleştirecek ve OpenCL 3.0'ın kullanılabileceği cihaz yelpazesini genişletecektir.

Örneğin, üreticiler OpenCL 3.0.x'in bireysel özelliklerini fark etmeden OpenCL 2 desteği uygulayabilirler. İsteğe bağlı dil özelliklerine erişmek için, OpenCL 3.0, desteği değerlendirmenize izin veren bir test sorgu sistemi ekler bireysel API öğeleri ve özel makrolar için.

Spesifikasyonlarla birleştirme önceden yayınlanmış uygulamaları OpenCL 3.0'a aktarmayı kolaylaştırır. OpenCL 1.2 uygulamaları, değişiklik yapmadan OpenCL 3.0'ı destekleyen cihazlarda çalışabilecektir. OpenCL 2.x uygulamaları da kod değişiklikleri gerektirmez, ancak OpenCL 3.0 ortamı gerekli işlevselliği sağlıyorsa (gelecekte taşınabilirliği sağlamak için, OpenCL 2.x uygulamalarının openCL 2 ile uyumluluğu değerlendirmek için test sorguları eklemesi önerilir. kullanılan x fonksiyonları).

Denetleyici geliştiricileri OpenCL uygulamalarıyla ürünlerini kolayca OpenCL 3.0'a yükseltebilecekler, yalnızca belirli API çağrılarının varlığı için istek işleme ekleme ve zaman içinde kademeli olarak artan işlevsellik.

OpenCL 3.0 spesifikasyonu ile uyumludur ortamı, uzantıları ve özellikleri SPIR-V Evrensel Ara Görünüm, bu da Vulkan API'sini kullanır. SPIR-V 1.3 spesifikasyonu desteği, isteğe bağlı bir özellik olarak OpenCL 3.0 çekirdeğine dahil edilmiştir. Hesaplama çekirdekleri için SPIR-V ara gösterimini kullanarak, alt gruplarla işlemler için destek eklenmiştir.

Katma Eşzamansız DMA işlemleri gerçekleştirmek için genişletme desteği, doğrudan bellek erişimine sahip DSP benzeri yongalarla uyumludur. Eşzamansız DMA, gerçekleştirilen hesaplamalara veya diğer veri aktarım işlemlerine paralel olarak eşzamansız modda genel ve yerel bellek arasında veri aktarmak için DMA işlemlerini kullanmanıza olanak tanır.

C için paralel programlama uzantılarının özellikleri, sürüm 3.0'a ve OpenCL dil uzantılarının geliştirilmesi için güncellendi. C ++, "OpenCL için C ++" projesi lehine durduruldu.

OpenCL için C ++, Clang / LLVM tabanlı bir derleyicidir C ++ ve OpenCL C çekirdeklerini ara SPIR-V gösterimine veya düşük seviyeli makine koduna çevirir. SPIR-V'ye çeviri yoluyla, C ++ uygulamalarının derlenmesi, paralel uygulamaların oluşturulmasını basitleştiren SYCL şablon kitaplığı kullanılarak da düzenlenir.

OpenCL'yi Vulkan API aracılığıyla çevirmek için, OpenCL çekirdeklerini Vulkan SPIR-V görünümüne ve clvk katmanını OpenCL API'nin Vulkan'ın üzerinde çalışmasına izin verecek şekilde dönüştüren clspv derleyicisi önerildi.

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.