alpaka
OpenCLOn12
alpaka | OpenCLOn12 | |
---|---|---|
1 | 3 | |
325 | 101 | |
2.5% | 4.0% | |
9.2 | 7.6 | |
3 days ago | about 1 month ago | |
C++ | C++ | |
Mozilla Public License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
alpaka
-
Cross Platform GPU-Capable Framework?
Note that Kokkos uses CUDA, OpenMP and also SYCL in order to have a wide range of targets. I'd also suggest taking a look at Alpaka https://github.com/alpaka-group/alpaka which is similar in some ways.
OpenCLOn12
-
A Review of Shader Languages
The SPIR-V OpenCL profile is suitable, the Vulkan one is much less suitable. (In the you can’t even transpile OpenCL C 1.2 to it fully, with quite heavily limited pointers…)
Metal has the best GPGPU story of the compute APIs, with D3D12 coming second after that. Both at least can have OpenCL C transpiled without catches to them…
Microsoft is writing CLon12 on that front: https://github.com/microsoft/OpenCLOn12
-
WSL with CUDA Support
> OpenCL does not work. There's some bits about intel [& amd] GPUs, but nada on nvidia
This is planned to be fixed. WSL2’s GPU support currently doesn’t provide a path to provide an alternate OpenCL loader ICD location. (And not for OpenGL either)
Microsoft is developing CLon12 at https://github.com/microsoft/OpenCLOn12 as the option to provide OpenCL out of the box.
-
Cross Platform GPU-Capable Framework?
OpenCL really is your best bet for a cross-platform GPU-capable framework. OpenCL 3.0 cleared out a lot of the cruft from OpenCL 2.x so it's seeing a lot more adoption. The most cross-platform solution is still OpenCL 1.2, largely for MacOS, but OpenCL 3.0 is becoming more and more common for Windows and Linux and multiple devices. Even on platforms without native OpenCL support there are compatibility layers that implement OpenCL on top of DirectX (OpenCLOn12) or Vulkan (clvk and clspv).
What are some alternatives?
clspv - Clspv is a compiler for OpenCL C to Vulkan compute shaders
kompute - General purpose GPU compute framework built on Vulkan to support 1000s of cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends). Blazing fast, mobile-enabled, asynchronous and optimized for advanced GPU data processing usecases. Backed by the Linux Foundation.
GLSL - GLSL Shading Language Issue Tracker
clvk - Implementation of OpenCL 3.0 on Vulkan
SHADERed - Lightweight, cross-platform & full-featured shader IDE
ParallelReductionsBenchmark - Thrust, CUB, TBB, AVX2, CUDA, OpenCL, OpenMP, SyCL - all it takes to sum a lot of numbers fast!
ginkgo - Numerical linear algebra software package
arbor - The Arbor multi-compartment neural network simulation library.