OpenCL 3.0 spesifikasiyası təqdim edildi

OpenGL, Vulkan və OpenCL ailə spesifikasiyalarının hazırlanmasına cavabdeh olan Khronos konserni, объявил Superkompüterlərdə və bulud serverlərində istifadə edilənlərdən çox nüvəli CPU, GPU, FPGA, DSP və digər ixtisaslaşmış çiplərdən istifadə edərək çarpaz platforma paralel hesablamaların təşkili üçün API-ləri və C dilinin genişləndirilməsini müəyyən edən OpenCL 3.0 spesifikasiyalarının hazırlanmasının başa çatdırılması haqqında mobil cihazlarda və quraşdırılmış texnologiyada tapıla bilən çiplərə. OpenCL standartı tamamilə açıqdır və lisenziya haqqı tələb etmir. Standart üzərində işdə IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments və Toshiba kimi şirkətlər iştirak edib.

Hazırkı mərhələdə spesifikasiyaya müvəqqəti status verilib ki, bu da vasitəsilə göndərilən rəy əsasında dəqiqləşdirmənin mümkünlüyünü nəzərdə tutur. Github. Şərhlər nəzərə alındıqdan sonra spesifikasiya yekunlaşdırılacaq və mövcud tətbiqlərin uyğunluğunu yoxlamaq üçün yekun test dəsti nəşr olunacaq.

OpenCL 3.0 spesifikasiyası təqdim edildi

Ən diqqətəlayiq xüsusiyyətləri OpenCL 3.0:

  • OpenCL 3.0 API indi hər versiya üçün ayrıca spesifikasiyalar təqdim etmədən OpenCL-in bütün versiyalarını (1.2, 2.x) əhatə edir. OpenCL 3.0, OpenCL 1.2/2.X-in monolit təbiətini bloklamadan seçimlər şəklində qatlanacaq əlavə spesifikasiyaların inteqrasiyası vasitəsilə əsas funksionallığı genişləndirmək imkanı verir.
  • Yalnız OpenCL 1.2 ilə uyğun gələn funksionallıq məcburi elan edilir və OpenCL 2.x spesifikasiyalarında təklif olunan bütün funksiyalar isteğe bağlı olaraq təsnif edilir. Bu yanaşma OpenCL 3.0 ilə uyğun gələn fərdi tətbiqlərin yaradılmasını asanlaşdıracaq və OpenCL 3.0-ın istifadə oluna biləcəyi cihazların çeşidini genişləndirəcək. Məsələn, istehsalçılar xüsusi OpenCL 3.0.x xüsusiyyətlərini tətbiq etmədən OpenCL 2 dəstəyini həyata keçirə bilərlər. Əlavə dil xüsusiyyətlərinə daxil olmaq üçün OpenCL 3.0 ayrı-ayrı API elementlərinin dəstəyini, həmçinin xüsusi makroları qiymətləndirməyə imkan verən test sorğuları sistemini əlavə etdi.
  • Əvvəllər buraxılmış spesifikasiyalarla birləşmə tətbiqlərin OpenCL 3.0-a köçürülməsini asanlaşdırır. OpenCL 1.2 proqramları heç bir dəyişiklik olmadan OpenCL 3.0-ı dəstəkləyən cihazlarda işləyə biləcək. OpenCL 2 mühiti tələb olunan funksionallığı təmin etdiyi müddətcə, OpenCL 3.0.x tətbiqləri də kod dəyişiklikləri tələb etməyəcək (gələcək daşınma qabiliyyətini təmin etmək üçün OpenCL 2.x proqramlarına OpenCL 2.x xüsusiyyətlərinə dəstəyi qiymətləndirmək üçün test sorğuları əlavə etmək tövsiyə olunur. istifadə olunur). OpenCL tətbiqləri ilə sürücü tərtibatçıları məhsullarını asanlıqla OpenCL 3.0-a təkmilləşdirə, müəyyən API zəngləri üçün yalnız sorğuların işlənməsini əlavə edə və zamanla funksionallığı tədricən artıra bilərlər.
  • OpenCL 3.0 spesifikasiyası Vulkan API tərəfindən də istifadə edilən SPIR-V ümumi ara təqdimatının mühiti, genişləndirmələri və spesifikasiyası ilə uyğunlaşdırılıb. SPIR-V 1.3 spesifikasiyası üçün dəstək əlavə xüsusiyyət kimi əsas OpenCL 3.0-a daxil edilmişdir. Aralıq təmsilçiliyin istifadəsi ilə SPIR-V hesablama nüvələri üçün alt qruplarla əməliyyatlar üçün dəstək əlavə edildi.
    OpenCL 3.0 spesifikasiyası təqdim edildi

  • Birbaşa yaddaş çıxışı olan DSP kimi çiplərdə dəstəklənən asinxron DMA əməliyyatlarını (Asinxron DMA) yerinə yetirmək üçün genişləndirmə üçün əlavə dəstək. Asinxron DMA, hesablamalar və ya digər məlumat ötürmə əməliyyatları ilə paralel olaraq qlobal və yerli yaddaş arasında məlumatları asinxron şəkildə ötürmək üçün DMA əməliyyatlarından istifadə etməyə imkan verir.
  • C Paralel Proqramlaşdırma Genişləndirilməsi spesifikasiyası yeniləndi versiya 3.0, və C++ üçün OpenCL dil genişləndirmələrinin inkişafı “OpenCL üçün C++” layihəsinin xeyrinə dayandırıldı. OpenCL üçün C++, Clang/LLVM və əsasında tərtibatçıdır yayım C++ və OpenCL C ləpələrini SPIR-V aralıq təmsilçiliyinə və ya aşağı səviyyəli maşın koduna çevirir. Yayım vasitəsilə SPIR-V həmçinin paralel proqramların yaradılmasını asanlaşdıran SYCL şablon kitabxanasından istifadə edərək C++ proqramlarının yığılmasını təşkil edir.

    OpenCL 3.0 spesifikasiyası təqdim edildi

  • OpenCL-in Vulkan API vasitəsilə yayımlanması üçün kompilyator təklif edilmişdir clspv, OpenCL ləpələrini Vulkan SPIR-V təmsilinə və təbəqəyə çevirən clvk OpenCL API-nin Vulkan üzərində işləməsini təmin etmək.

    OpenCL 3.0 spesifikasiyası təqdim edildi

Mənbə: opennet.ru

Добавить комментарий