The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 Opencl Open-Source Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
john
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
-
mace
MACE is a deep learning inference framework optimized for mobile heterogeneous computing platforms.
-
LWJGL
LWJGL is a Java library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL, Vulkan, bgfx), audio (OpenAL, Opus), parallel computing (OpenCL, CUDA) and XR (OpenVR, LibOVR, OpenXR) applications.
-
Silk.NET
The high-speed OpenGL, OpenCL, OpenAL, OpenXR, GLFW, SDL, Vulkan, Assimp, WebGPU, and DirectX bindings library your mother warned you about.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
FluidX3D
The fastest and most memory efficient lattice Boltzmann CFD software, running on all GPUs via OpenCL.
-
OpenTK
The Open Toolkit library is a fast, low-level C# wrapper for OpenGL, OpenAL & OpenCL. It also includes windowing, mouse, keyboard and joystick input and a robust and fast math library, giving you everything you need to write your own renderer or game engine. OpenTK can be used standalone or inside a GUI on Windows, Linux, Mac.
-
Arraymancer
A fast, ergonomic and portable tensor library in Nim with a deep learning focus for CPU, GPU and embedded devices via OpenMP, Cuda and OpenCL backends
-
TornadoVM
TornadoVM: A practical and efficient heterogeneous programming framework for managed languages
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Hacking WiFi 101: basic concepts, terminology, and a real-life example | dev.to | 2024-04-03Hashcat Cracking WPA/WPA2 Spacehuhn's Deauther
Yes, this is coming! Myself and others at OctoML and in the TVM community are actively working on multi-gpu support in the compiler and runtime. Here are some of the merged and active PRs on the multi-GPU (multi-device) roadmap:
Support in TVM’s graph IR (Relax) - https://github.com/apache/tvm/pull/15447
John The Ripper
Download the latest LWJGL binaries from the official website.
Loads of people have stated why easy GPU interfaces are difficult to create, but we solve many difficult things all the time.
Ultimately I think CPUs are just satisfactory for the vast vast majority of workloads. Servers rarely come with any GPUs to speak of. The ecosystem around GPUs is unattractive. CPUs have SIMD instructions that can help. There are so many reasons not to use GPUs. By the time anyone seriously considers using GPUs they're, in my imagination, typically seriously starved for performance, and looking to control as much of the execution details as possible. GPU programmers don't want an automagic solution.
So I think the demand for easy GPU interfaces is just very weak, and therefore no effort has taken off. The amount of work needed to make it as easy to use as CPUs is massive, and the only reason anyone would even attempt to take this on is to lock you in to expensive hardware (see CUDA).
For a practical suggestion, have you taken a look at https://arrayfire.com/ ? It can run on both CUDA and OpenCL, and it has C++, Rust and Python bindings.
A couple other options than what has been suggested so far: - TerraFX.Interop.Windows. Raw, blittable, 1:1 bindings for all Win32, D2D/D3D11/D3D12 APIs (there's also a version with Vulkan bindings). As close to doing #include as you can get in C#. This is my personal favorite, I use it in my own ComputeSharp library, and transitively we use it in the Microsoft Store too 🙂 - Silk.NET another version of high-performance bindings, more opinionated than TerraFX and with some additional helpers to make it a bit easier to use.
Project mention: Unhandled SEHException when running OpenTK project - What am I doing wrong? | /r/opengl | 2023-06-25Open a new issue on Github. Include all of this, and provide info on your OS and GPU.
Project mention: What downsides exist to Futhark? Seems almost too good to be true? | /r/CUDA | 2023-06-29Why Futhark? (futhark-lang.org)
Project mention: [P] - VkFFT now supports quad precision (double-double) FFT computation on GPU | /r/MachineLearning | 2023-09-27Hello, I am the creator of the VkFFT - GPU Fast Fourier Transform library for Vulkan/CUDA/HIP/OpenCL/Level Zero and Metal. In the latest update, I have added support for quad-precision double-double emulation for FFT calculation on most modern GPUs. I understand that modern ML is going in the opposite low-precision direction, but I still think that it may be useful to have this functionality at least for some prototyping and development of concepts.
It is a small DSL written using macros at https://github.com/mratsim/Arraymancer/blob/master/src/array....
Nim has pretty great meta-programming capabilities and arraymancer employs some cool features like emitting cuda-kernels on the fly using standard templates depending on backend !
You don't need to use C++ to interface with CUDA or even write it.
A while ago NVIDIA and the GraalVM team demoed grCUDA which makes it easy to share memory with CUDA kernels and invoke them from any managed language that runs on GraalVM (which includes JIT compiled Python). Because it's integrated with the compiler the invocation overhead is low:
https://developer.nvidia.com/blog/grcuda-a-polyglot-language...
And TornadoVM lets you write kernels in JVM langs that are compiled through to CUDA:
https://www.tornadovm.org
There are similar technologies for other languages/runtimes too. So I don't think that will cause NVIDIA to lose ground.
Project mention: Intel Graphics Compute Runtime for OneAPI Level Zero and OpenCL | news.ycombinator.com | 2023-08-02
Project mention: ILGPU VS ComputeSharp - a user suggested alternative | libhunt.com/r/ILGPU | 2023-10-27
git clone https://github.com/CNugteren/CLBlast.git cd CLBlast cmake . cmake --build . --config Release mkdir install cmake --install . --prefix ~/CLBlast/install cp libclblast.so* $PREFIX/lib cp ./include/clblast.h ../llama.cpp
Project mention: CheerpJ 3.0: a JVM replacement in HTML5 and WASM to run Java on modern browsers | news.ycombinator.com | 2023-05-09
Opencl related posts
- Intel Gaudi 3 AI Accelerator
- Hosting Your Own AI Chatbot on Android Devices
- Building a Game Engine Using Java with LWJGL
- Java VectorAPI compatiblity with TornadoVM GPU programming framework
- Java GPU pre/post processing with ONNX RT and TornadoVM
- DCompute: Native execution of D on GPUs and other Accelerators
- Vcc – The Vulkan Clang Compiler
-
A note from our sponsor - WorkOS
workos.com | 26 Apr 2024
Index
What are some of the best open-source Opencl projects? This list will help you:
Project | Stars | |
---|---|---|
1 | hashcat | 19,873 |
2 | tvm | 11,156 |
3 | john | 9,267 |
4 | mace | 4,876 |
5 | LWJGL | 4,583 |
6 | ArrayFire | 4,404 |
7 | Silk.NET | 3,663 |
8 | FluidX3D | 3,193 |
9 | OpenTK | 3,088 |
10 | futhark | 2,291 |
11 | Boost.Compute | 1,497 |
12 | VkFFT | 1,441 |
13 | Arraymancer | 1,304 |
14 | TornadoVM | 1,105 |
15 | juice | 1,087 |
16 | compute-runtime | 1,066 |
17 | ILGPU | 1,059 |
18 | neanderthal | 1,043 |
19 | pyopencl | 1,029 |
20 | CLBlast | 994 |
21 | pocl | 869 |
22 | Bytecoder | 856 |
23 | coriander | 831 |
Sponsored