Phát hành PoCL 3.0 với việc triển khai độc lập tiêu chuẩn OpenCL 3.0

Một bản phát hành của dự án PoCL 3.0 (Ngôn ngữ máy tính di động OpenCL) đã được trình bày, dự án này phát triển việc triển khai tiêu chuẩn OpenCL độc lập với các nhà sản xuất bộ tăng tốc đồ họa và cho phép sử dụng nhiều chương trình phụ trợ khác nhau để thực thi hạt nhân OpenCL trên các loại đồ họa và trung tâm khác nhau. bộ xử lý. Mã dự án được phân phối theo giấy phép MIT. Hỗ trợ hoạt động trên các nền tảng X86_64, MIPS32, ARM v7, AMD HSA APU, GPU NVIDIA và nhiều bộ xử lý ASIP (Bộ xử lý tập lệnh dành riêng cho ứng dụng) và TTA (Kiến trúc kích hoạt vận chuyển) chuyên dụng khác nhau với kiến ​​trúc VLIW.

Việc triển khai trình biên dịch hạt nhân OpenCL được xây dựng trên cơ sở LLVM và Clang được sử dụng làm giao diện người dùng cho OpenCL C. Để đảm bảo tính di động và hiệu suất phù hợp, trình biên dịch hạt nhân OpenCL có thể tạo ra các hàm kết hợp có thể sử dụng nhiều tài nguyên phần cứng khác nhau để song song hóa việc thực thi mã, chẳng hạn như VLIW, superscalar, SIMD, SIMT, đa lõi và đa luồng. Có hỗ trợ driver ICD (Installable Client Driver). Có các backend hỗ trợ hoạt động thông qua CPU, ASIP (TCE/TTA), GPU dựa trên kiến ​​trúc HSA và GPU NVIDIA (thông qua libcuda).

Trong phiên bản mới:

  • Bộ tính năng tối thiểu cần thiết để hỗ trợ đặc tả OpenCL 3.0 đã được triển khai. Hỗ trợ OpenCL 3.0 hiện chỉ khả dụng trên các chương trình phụ trợ dựa trên CPU với LLVM 14 (các chương trình phụ trợ khác và phiên bản LLVM cũ hơn cung cấp hỗ trợ cho OpenCL 1.2).
  • Đã thêm hỗ trợ cho Clang/LLVM 14.
  • Cải thiện khả năng theo dõi và hiển thị.
  • Đã thêm hỗ trợ để tạo các nhóm chức năng chuyên dụng và đưa chúng vào các tệp thực thi có nhân OpenCL.

Nguồn: opennet.ru

Thêm một lời nhận xét