# nx_vulkan v0.3.0 - Table of Contents

GPU tensor backend for Nx via Vulkan compute (vulkano/Rust, native f32 and f64), forward and backward pass on-device. Validated on Axon training, Scholar linear regression, and the eXMC NUTS sampler. Works on Linux + FreeBSD NVIDIA where CUDA does not exist.

## Pages

- [Nx.Vulkan](readme.md)
- [Why Nx.Vulkan exists](why.md)
- [Nx.Vulkan — 10-Minute Intro](intro_10min.md)
- [Changelog](changelog.md)
- [nx_vulkan roadmap](roadmap.md)
- [Nx.Vulkan.VulkanoBackend — Roadmap](vulkano_backend_roadmap.md)
- [Batched command submission — T1](batched_dispatch.md)
- [MNIST race — EXLA vs VulkanoBackend (eager and fused)](mnist_exla_race.md)
- [Cross-stage CSE race — softmax (full, last-axis)](cse_softmax_race.md)

## Modules

- [Nx.Vulkan](Nx.Vulkan.md): Nx tensor backend on Vulkan compute (vulkano/Rust), in native f32 and f64.
- [Nx.Vulkan.ChainShaderSpecs](Nx.Vulkan.ChainShaderSpecs.md): Catalog of family specs for templated chain-shader synthesis.
- [Nx.Vulkan.Codegen](Nx.Vulkan.Codegen.md): JIT GLSL codegen from `Nx.Defn.Expr` trees — the heart of the thrust-3
fusion compiler.
- [Nx.Vulkan.Compiler](Nx.Vulkan.Compiler.md): `Nx.Defn.Compiler` for the Vulkan backend — thrust 3, the fusion compiler.
- [Nx.Vulkan.Device](Nx.Vulkan.Device.md): GPU device classification for hardware-dependent perf heuristics.
- [Nx.Vulkan.Fallback](Nx.Vulkan.Fallback.md): Counts host fallbacks so a silent one becomes a test failure.
- [Nx.Vulkan.Fast](Nx.Vulkan.Fast.md): Named fused kernels for MCMC hot paths.
- [Nx.Vulkan.NativeV](Nx.Vulkan.NativeV.md): Rustler NIF for the vulkano compute backend.
- [Nx.Vulkan.Node](Nx.Vulkan.Node.md): Long-lived per-machine GPU node. A named `GenServer` that serializes
GPU work and owns the watchdog/timeout layer. Clients submit work via
`with_node/2` (or the lower-level `exec/2`); the node runs it one call
at a time and reports timeouts/dead-server/etc. as error tuples.
- [Nx.Vulkan.PipelineCache](Nx.Vulkan.PipelineCache.md): Pipeline cache stub. The spirit C++ backend (which owned the
VkPipelineCache) has been removed. Vulkano manages its own
pipeline caching internally. These functions are no-ops retained
for API compatibility with callers that haven't been updated.

- [Nx.Vulkan.ShaderTemplate](Nx.Vulkan.ShaderTemplate.md): Phase 1 — templated GLSL shader synthesis.
- [Nx.Vulkan.ShaderTemplate.FamilySpec](Nx.Vulkan.ShaderTemplate.FamilySpec.md): Per-family hooks for the templated chain shader.
- [Nx.Vulkan.Synthesis](Nx.Vulkan.Synthesis.md): Phase 1 — end-to-end shader synthesis driver.
- [Nx.Vulkan.VulkanoBackend](Nx.Vulkan.VulkanoBackend.md): Pure-Rust (vulkano) `Nx.Backend` implementation.

