30 open-source projects similar to embarkstudios/rust-gpu, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Rust Gpu alternative.
DirectXShaderCompiler is an HLSL shader compiler that transforms High-Level Shader Language source code into intermediate language formats executable by GPUs. It functions as a shader bytecode validator to verify the correctness and hardware compatibility of compiled representations and as a software shader rasterizer for rendering when physical graphics hardware is unavailable. The project includes a translation tool that converts HLSL shader code into the SPIR-V binary intermediate representation for use with cross-platform graphics APIs. It also provides capabilities for legacy shader migr
Slang is a shader compiler framework that combines a modular shading language with automatic differentiation, multi-target code generation, and an intrinsic mapping and extension system. At its core, Slang provides a differentiable shader compiler that automatically generates forward and backward derivative propagation for functions with control flow, enabling gradient-based optimization in graphics. The framework also includes a fully featured shader language with modules, generics, interfaces, and separate compilation, all designed for building reusable shader libraries. From a single source
VulkanTutorial is a comprehensive educational guide and instructional resource for implementing low-level rendering and compute pipelines using the Vulkan API. It serves as a GPU programming course and a step-by-step guide for building high-performance graphics applications from scratch. The project provides detailed instruction on the full graphics pipeline, including the compilation of shaders to SPIR-V bytecode, the configuration of rasterization states, and the implementation of 3D graphics pipelines. It also covers general-purpose GPU compute programming, focusing on the execution of par
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
ISPC is a vectorizing compiler and SIMD parallel programming language that implements a single program multiple data model. It serves as a toolchain for translating C-based code with parallel extensions into optimized machine code for various CPU and GPU architectures using an LLVM backend. The compiler is designed for cross-platform SIMD toolchain support, generating specialized instruction sets for x86 SSE/AVX, ARM NEON, and Intel GPU from a single source. It features a runtime dispatch mechanism that selects the most efficient hardware-specific implementation for the current system during
This project is a cross-platform graphics and compute framework that provides a unified, hardware-agnostic abstraction layer for rendering and parallel processing. It enables developers to build high-performance applications that execute consistently across diverse operating systems and hardware backends, including Vulkan, Metal, and DirectX. By mapping high-level graphics commands to native APIs, it serves as a portable foundation for both real-time 3D rendering and general-purpose GPU computing. The framework distinguishes itself through a robust architecture that supports both native deskt
Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie
Codon is an LLVM-based Python compiler and statically typed implementation that translates source code into optimized machine instructions. It functions as a high-performance numerical backend and a GPU computing framework designed to remove runtime overhead. The project implements a compiled alternative to NumPy, translating array logic directly into machine code. It differentiates itself by generating specialized hardware kernels for graphics processors and utilizing static type inference to enable aggressive machine-code optimization. The system provides capabilities for parallel workload
Gleam is a statically typed, functional programming language designed for building scalable and maintainable applications. It operates as a cross-platform development ecosystem that compiles source code to run on the Erlang virtual machine or within JavaScript environments. The language integrates a package manager and build system that automates dependency resolution, project compilation, and the generation of software bills of materials. The language distinguishes itself through a focus on type-driven domain modeling and a robust foreign function interface framework. By encoding business ru
The Dart SDK is a comprehensive development kit for building cross-platform applications using a multi-paradigm programming language. It provides a unified toolchain that supports both just-in-time compilation for rapid development and ahead-of-time compilation for high-performance native machine code. The platform is built on a sound static type system and an isolate-based concurrency framework, which executes independent tasks in separate memory heaps to achieve parallelism without shared state contention. The SDK distinguishes itself through a versatile compilation pipeline that transforms
This project is an educational blog and learning resource dedicated to the Rust programming language. It provides a collection of curated guides, technical articles, and structured learning paths designed to teach language fundamentals, concurrency, and systems programming. The repository distinguishes itself by offering practical implementation tutorials for complex systems. This includes detailed guides on compiler development—specifically translating source code into targets such as ARM64, x86_64, LLVM IR, and WebAssembly—as well as networking examples for building multithreaded chat serve
CUDA.jl provides a programming interface for executing custom kernels and performing parallel array computing directly on NVIDIA graphics hardware using the Julia language. It serves as a framework for compiling and scheduling user-defined functions across multiple processing cores, enabling high-performance data processing and task synchronization. The library distinguishes itself through a custom compiler backend that translates high-level language functions into hardware-specific machine code. It manages complex hardware interactions through asynchronous stream scheduling, unified memory m
Kotlin-native is an ahead-of-time, cross-platform compiler and toolchain that transforms Kotlin source code into standalone native machine binaries. It functions as an LLVM native compiler, producing executable files that run directly on hardware without the requirement of a virtual machine. The project enables cross-platform native development across multiple operating systems and processor architectures, including iOS, Linux, and Windows. This allows for the creation of native Apple platform applications and software for embedded systems programming where direct memory management and minima
DiligentEngine is a cross-platform graphics abstraction layer and physically-based rendering engine. It provides a unified interface for executing 3D graphics commands across multiple low-level rendering backends from a single codebase, including a dedicated system for importing 3D assets via the GLTF 2.0 format. The engine features an HLSL shader cross-compiler that allows a single set of shaders to run across different graphics APIs and operating systems. It supports advanced rendering capabilities such as ray-tracing, mesh shaders, variable rate shading, and bindless resources. The framew
The Forge is a low-level toolkit for building high-performance graphics engines and applications across desktop, mobile, and console platforms. It provides a cross-platform engine framework and a dedicated shader compiler that translates a single source into target-specific languages for various graphics APIs and hardware. The project includes a GPU memory and resource manager that utilizes unified root signatures for resource binding, alongside a ray tracing rendering pipeline that implements hardware-accelerated ray and path tracing queries. State management is handled through a high-perfor
Plasmo is a browser extension framework and build tool designed for developing cross-browser extensions from a single codebase. It functions as a development environment that automates manifest generation and bundles source code into compatible packages for multiple web browser engines. The project includes a developer toolset featuring hot module replacement for real-time code updates and an automated publisher to deliver completed builds to various browser web stores. Its capability surface covers extension UI development through the injection of components into web pages and a communicati
Pony is an open-source, actor-model, capabilities-secure, high performance programming language
This project is an LLVM obfuscator compiler and machine code obfuscator designed to protect C++ applications from decompilation and static analysis. It functions as an LLVM pass framework that transforms intermediate representation into complex machine code to prevent the reverse engineering of program logic. The tool implements binary security hardening and anti-reverse engineering measures to protect intellectual property. It achieves this by modifying the compilation pipeline to hide original control flow and data structures. The transformation process includes control-flow flattening, th
gfx is a hardware-agnostic graphics API abstraction that translates a unified set of graphics and compute commands into native instructions for multiple GPU drivers. It provides a common interface for cross-platform rendering and general-purpose GPU compute programming. The project features an intermediate-representation shader translation system that converts source code and SPIR-V into target-specific languages. It employs a data-driven reference test framework to verify that graphics output remains consistent across different hardware platforms. Capabilities include parallel command buffe
ClojureScript is a Lisp-based compiler and runtime that translates Clojure source code into JavaScript. It enables functional programming across different JavaScript engines and platforms, allowing developers to build user interfaces and applications for web browsers and server environments. The project provides a read-eval-print loop for executing code live within a browser or server for immediate feedback. This facilitates an interactive development workflow where code can be written and tested in real time without restarting the application. The system covers a broad capability surface, i
ogl is a WebGL graphics library and 3D scene graph engine designed for rendering three-dimensional scenes. It provides a lightweight framework for managing geometries and coordinating spatial transformations within a hierarchical system. The project includes a PBR shader system for creating realistic materials and a GPGPU computation framework for performing large-scale general-purpose calculations and particle simulations on the graphics processor. It also features a post-processing suite for applying visual filters to rendered scenes via frame buffers. The library covers broader capabiliti
gpu.cpp is a lightweight C++ library for executing low-level general-purpose GPU computation across different hardware vendors and operating systems. It functions as a portable GPU wrapper, kernel orchestrator, and tensor management system using the WebGPU specification to abstract device initialization, buffer transfers, and compute shader dispatching. The library provides a framework for defining compute kernels from shader code and managing their asynchronous dispatch and synchronization. It enables the execution of cross-platform compute shaders and the orchestration of GPU tasks through
Llvm-mingw is an LLVM-based cross-compiler toolchain and MinGW-w64 development suite that builds native Windows executables from non-Windows operating systems using Clang and LLD. It compiles C and C++ source code into native portable executable binaries targeting multiple Windows CPU architectures from a single host environment. The toolchain supports configuring builds to use specific C runtime library targets for compatibility across different operating system versions. It includes capabilities for producing native Windows debug information and CodeView debug symbols alongside compiled bin
Swift is a general purpose, compiled systems programming language designed for building high-performance software. It is a strongly typed language that focuses on memory safety and type safety to prevent runtime errors. The language is designed for native code integration, allowing it to interoperate with C and Objective-C libraries to leverage existing system functions and high-performance APIs. The project covers broad capabilities in type-safe application development and cross-platform toolchain engineering. It includes infrastructure for automated language validation, compiler performanc
Batsh is a cross-platform shell compiler and transpiler that translates a unified scripting syntax into platform-specific commands for Bash and Windows Batch. It functions as a multi-platform script generator, transforming a single source language into executable scripts compatible with Linux, macOS, and Windows. The system utilizes a translation process that maps high-level constructs to an intermediate representation and resolves differences in command flags and variable expansion. It supports conditional target embedding, allowing raw code blocks to be injected into the output for a specif
Haxe is a statically typed, multi-target programming language and open-source compiler toolkit that translates a single codebase into native executables and scripts for JavaScript, C++, C#, Java, Python, Lua, PHP, and Flash targets. It provides a unified type system with automatic type inference, a compile-time macro system for code transformation and generation, conditional compilation directives, and a static analysis engine that enforces null safety and eliminates dead code to produce smaller, safer outputs. The language is supported by the HashLink virtual machine, which executes platform
LLVM is a modular compiler infrastructure and framework consisting of a collection of reusable libraries used to build language front-ends and optimization tools. It functions as a low-level virtual machine that provides an intermediate representation and optimization pipeline to enable language-agnostic code generation. The project provides a toolkit for just-in-time compilation, translating intermediate representations into machine code at runtime for immediate execution. Its modular design allows developers to create custom language front-ends and high-performance runtime environments acro
rust-cuda is a GPU programming framework and device compiler that allows for the development and execution of high-performance kernels on NVIDIA hardware using Rust. It provides a driver wrapper to manage device memory allocation and kernel launching, effectively serving as a system for writing GPU compute logic without relying on C++. The project includes a compute library with hardware-optimized primitives for neural network acceleration and hardware-accelerated raytracing. It utilizes a compilation toolchain that translates source code into a low-level intermediate representation for execu
This is a Kotlin Multiplatform UI framework for building consistent user interfaces across desktop, web, and mobile platforms using a single codebase. It functions as a declarative framework that enables the creation of shared UI components that run across multiple target environments. The project includes a cross-platform desktop toolkit for managing native window features, system notifications, and hardware acceleration. For web targets, it provides a declarative interface library and a rendering engine that executes via WebAssembly to achieve high-performance execution in browsers. The fr
Scala Native is an ahead-of-time compiler that transforms Scala source code into standalone native binaries for direct execution on hardware. It provides a native binary toolchain designed to eliminate virtual machine warm-up times and ensure instant startup by compiling code into optimized executables. The project features a C interoperability interface and foreign function interface that map native C headers to language objects, allowing for the direct execution of external libraries. It includes a low-level memory manager that supports direct pointer manipulation and the use of structs for