OpenCL 3.0 стандартыг бие даан хэрэгжүүлснээр PoCL 3.0 хувилбар

График хурдасгуур үйлдвэрлэгчдээс хамааралгүй OpenCL стандартын хэрэгжилтийг хөгжүүлж, янз бүрийн төрлийн график болон төв хэсэгт OpenCL цөмүүдийг ажиллуулах янз бүрийн арын хэсгийг ашиглах боломжийг олгодог PoCL 3.0 (Portable Computing Language OpenCL) төслийн хувилбарыг танилцууллаа. процессорууд. Төслийн кодыг MIT лицензийн дагуу түгээдэг. X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU платформууд болон VLIW архитектуртай төрөл бүрийн тусгайлсан ASIP (Програмын тусгай зааварчилгааны процессор) болон TTA (Transport Triggered Architecture) процессорууд дээр ажиллахыг дэмждэг.

OpenCL цөм хөрвүүлэгчийн хэрэгжилт нь LLVM дээр суурилагдсан бөгөөд Clang нь OpenCL C-ийн урд хэсэг болгон ашиглагддаг. Зохистой зөөвөрлөх чадвар, гүйцэтгэлийг хангахын тулд OpenCL цөмийн хөрвүүлэгч нь VLIW, суперскаляр, SIMD, SIMT, олон цөмт, олон урсгалт зэрэг кодын гүйцэтгэлийг зэрэгцүүлэхийн тулд янз бүрийн техник хангамжийн нөөцийг ашиглаж болох хослол функцуудыг үүсгэж болно. ICD драйверуудыг (Суулгах боломжтой үйлчлүүлэгч драйвер) дэмждэг. CPU, ASIP (TCE/TTA), HSA архитектурт суурилсан GPU болон NVIDIA GPU (libcuda-аар) -ээр дамжуулан ажиллагааг дэмжих арын хэсэг байдаг.

Шинэ хувилбарт:

  • OpenCL 3.0 тодорхойлолтыг дэмжихэд шаардагдах хамгийн бага багц функцуудыг хэрэгжүүлсэн. OpenCL 3.0-ийн дэмжлэгийг одоогоор зөвхөн LLVM 14-тэй CPU-д суурилсан backend дээр ашиглах боломжтой (LLVM-ийн бусад арын болон хуучин хувилбарууд нь OpenCL 1.2-г дэмждэг).
  • Clang/LLVM 14-ийн дэмжлэгийг нэмсэн.
  • Мөшгих болон дүрслэлийг сайжруулсан.
  • Мэргэшсэн бүлгүүдийг үүсгэх, OpenCL цөмтэй ажиллах боломжтой файлуудад оруулах дэмжлэг нэмэгдсэн.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх