arrayfire-rust
ILGPU
Our great sponsors
arrayfire-rust | ILGPU | |
---|---|---|
4 | 6 | |
804 | 1,059 | |
-0.4% | - | |
0.0 | 9.0 | |
7 months ago | 4 days ago | |
Rust | C# | |
BSD 3-clause "New" or "Revised" License | GNU General Public License v3.0 or later |
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.
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.
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
What are some alternatives?
nalgebra - Linear algebra library for Rust.
CUDAfy.NET - CUDAfy .NET allows easy development of high performance GPGPU applications completely from the .NET. It's developed in C#.
futhark - :boom::computer::boom: A data-parallel functional programming language
ZenTimings
rust-opencl - OpenCL bindings for Rust.
NvAPIWrapper - NvAPIWrapper is a .Net wrapper for NVIDIA public API, capable of managing all aspects of a display setup using NVIDIA GPUs
collenchyma - Extendable HPC-Framework for CUDA, OpenCL and common CPU
Hybridizer - Examples of C# code compiled to GPU by hybridizer
Emu - The write-once-run-anywhere GPGPU library for Rust
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.
ArrayFire - ArrayFire: a general purpose GPU library.
srmd-ncnn-vulkan - SRMD super resolution implemented with ncnn library