ILGPU
arrayfire-rust
ILGPU | arrayfire-rust | |
---|---|---|
6 | 4 | |
1,059 | 804 | |
- | -0.4% | |
9.0 | 0.0 | |
8 days ago | 7 months ago | |
C# | Rust | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" 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.
ILGPU
-
ILGPU VS ComputeSharp - a user suggested alternative
2 projects | 27 Oct 2023
-
CUDA integration for C#
I've had a good experience with ILGPU: clean API, loads of samples, nice community. Apologies for a shameless plug, but I used it in one of my projects and happened to write a blog post about it: https://timiskhakov.github.io/posts/computing-the-convex-hull-on-gpu. Hope it helps!
-
Is there a way to utilize the gpu in a C# program?
https://github.com/Sergio0694/ComputesSharp is always being recommended to me. But I also just found this one https://github.com/m4rs-mt/ILGPU which looks very interesting. There are a lot of libraries which allow you to execute on the gpu
-
Is there a way to run metal shaders on CPU threads?
I would checkout the github for more details, or ask on the discord for more specifics, but all the kernels are compiled into IL by the C# compiler, then at runtime the ILGPU compiler converts them from IL into PTX, OpenCL, or back into IL (in a special way to maintain thread grouping and stuff). Then PTX / OpenCL /IL is compiled and run using the respective runtimes. Cuda for PTX, the OpenCL runtime for OpenCL, and .net for IL. We have talked about creating a CPU execution path that tries to match speeds with CPU code, but I do not think it is a big priority.
-
What is ILGPU | Links | FAQ
Github repo
arrayfire-rust
-
Making a better Tensorflow thanks to strong typing
Take a look at arrayfire-rust! :)
-
Fast Linear Algebra library for Rust
I haven't tried it myself, but I believe that arrayfire-rust supports GPU.
-
Saving an ArrayFire Array
the Git Repo is here.
-
State of CUDA on Rust in the beginning of 2021 ?
edit: I apparently missed seeing ArrayFire Rust library. It looks like if you wanted to still use Rust and CUDA this might be your best option for at least compute applications.
What are some alternatives?
CUDAfy.NET - CUDAfy .NET allows easy development of high performance GPGPU applications completely from the .NET. It's developed in C#.
nalgebra - Linear algebra library for Rust.
ZenTimings
futhark - :boom::computer::boom: A data-parallel functional programming language
NvAPIWrapper - NvAPIWrapper is a .Net wrapper for NVIDIA public API, capable of managing all aspects of a display setup using NVIDIA GPUs
rust-opencl - OpenCL bindings for Rust.
Hybridizer - Examples of C# code compiled to GPU by hybridizer
collenchyma - Extendable HPC-Framework for CUDA, OpenCL and common CPU
Amplifier.NET - Amplifier allows .NET developers to easily run complex applications with intensive mathematical computation on Intel CPU/GPU, NVIDIA, AMD without writing any additional C kernel code. Write your function in .NET and Amplifier will take care of running it on your favorite hardware.
Emu - The write-once-run-anywhere GPGPU library for Rust
srmd-ncnn-vulkan - SRMD super resolution implemented with ncnn library
ArrayFire - ArrayFire: a general purpose GPU library.