Goldy: Modern GPU Library
A modern Rust GPU library that deliberately sheds legacy baggage. Goldy targets only modern GPU APIs (Vulkan 1.3+, DX12, Metal) and can therefore be significantly simpler than libraries that must maintain backward compatibility.
Quick Example
use ;
Features
| Attribute | Description |
|---|---|
| Rust-native | Idiomatic Rust API, not a wrapper around C |
| Modern-only | Vulkan 1.3+, DX12, Metal baseline |
| Slang shaders | Single shader language for all backends |
| Legacy-free | No OpenGL, no Vulkan <1.3, no OpenCL |
| Unified | Graphics and compute in one API |
| Fast-moving | Not a standard—can iterate quickly |
| WASI-ready | Designed for sandboxed GPU access |
Installation
[]
= "0.1"
Documentation
Examples
Run the interactive examples:
See all examples.
Motivation
Goldy is inspired by Sebastian Aaltonen's "No Graphics API" vision of what's possible with modern GPU hardware. By targeting only modern GPUs (2018+), Goldy can:
- Use dynamic rendering (no render pass objects)
- Use bindless descriptors (no descriptor sets)
- Assume coherent caches (simpler synchronization)
- Provide a dramatically simpler API
Goldy is also inspired by:
- Wayland's compositor architecture
- Ralph Levien's "Requiem for piet-gpu-hal"
- Slang's vision for unified shader language
- WGPU
- This paper on GPU abstractions: https://www.kom.tu-darmstadt.de/papers/KCGS17.pdf
Read more in Design Philosophy.
Target Hardware
| Platform | Minimum |
|---|---|
| NVIDIA | RTX 2000 / GTX 1600 (2018+) |
| AMD | RDNA 1 / RX 5000 (2019+) |
| Intel | Xe / Alchemist (2022+) |
| Apple | M1 / A14 (2020+) |
License
MIT License - see LICENSE for details.
Author
Mohamed Koubaa
Contributing
Contributions welcome! See CONTRIBUTING.