便攜式計算語言“PoCL”最初是一種基於 CPU 的開源 OpenCL 實現,多年來已成為相當全面的實現。但隨著時間的推移,在利用 LLVM/Clang 編譯器堆棧的過程中,PoCL 已經不僅僅是一個 CPU 實現,還支持在 NVIDIA GPU、支持 AMD HSA 的 GPU 等上執行 OpenCL。 PoCL 4.0 的最新功能是支持英特爾零級執行,以便在英特爾 Arc 圖形 GPU 上運行此 OpenCL 實施。
最近幾個月,英特爾的“Neo”計算運行時堆棧與零級和 OpenCL 在 Arc Graphics 上運行良好。您已經擁有出色的 OpenCL 3.0 實施,因此具有零級支持的 PoCL 前景並不太重要。儘管在零級英特爾計算堆棧上運行 PoCL 對於調試或分析以比較 OpenCL 實現的性能目的可能很有趣。此外,零級 API 是一個開放標準,因此其他一些非英特爾實現可能會出現並為 PoCL 提供有趣的東西。
無論如何,隨著周五發布的 PoCL 4.0 候選發布版,這個新版本的主要變化之一是引入了零級 API 驅動程序。
對於 PoCL 4.0-RC1 來說,同樣重要的是 CPU 驅動程序獲得了對程序範圍變量、通用 AS、cl_khr_fp16(LLVM 16+)、cl_khr_subgroups 和 cl_intel_unified_shared_memory 的支持。下一個版本還增加了 LLVM/Clang 16.0 編譯器兼容性,並對 CPU 和 CUDA 後端驅動程序中的 SPIR-V IR 支持進行了更多改進。
PoCL 4.0 候選版本可以從以下網址下載GitHub。那些希望了解更多關於這個開源、可移植 OpenCL 實施的人可以在 PortableCL.org 上這樣做。