
Quadrants — Quadrants 1.0.3 documentation
Quadrants # Quadrants is a high-performance parallel programming framework for GPU and CPU computing. Write Python-like code that compiles to optimized GPU kernels for CUDA, Metal, and …
User guide — Quadrants 1.0.3 documentation
Core concepts Tensor types Scalar tensors Matrix and Vector Advanced Per-thread matrix and vector operations Per-thread linear algebra Tensors Compound types BufferView qd.static Sub-functions …
Getting started — Quadrants 1.0.3 documentation
Getting started # Installation # Pre-requisites # a supported platform (MacOS ARM64, Linux x64, Windows x64), see Supported systems a supported Python version installed, see Supported systems …
Algorithms — Quadrants 1.0.3 documentation
Algorithms # Device-wide algorithms are primitives that consume and produce whole arrays, executed as one or more kernel launches under the hood. They sit one tier above block and subgroup …
Automatic differentiation — Quadrants 1.1.0 documentation
Automatic differentiation # Automatic differentiation (autodiff) computes the exact gradient of a kernel’s output with respect to its inputs, without the user writing the derivative formulas by hand. Gradient …
Matrix and Vector — Quadrants 1.0.3 documentation
Matrix and Vector # Quadrants provides qd.Matrix and qd.Vector types for small, fixed-size linear algebra inside kernels. These are stored in GPU registers and are unrolled at compile time, so they …
Matrix decompositions and solvers — Quadrants 0.7.9 documentation
Matrix decompositions and solvers # Small matrix decompositions and linear solvers — the kinds of operations a thread does on a 2×2 or 3×3 matrix held in registers. They are a different category from …
Block primitives — Quadrants 1.0.1 documentation
Block primitives # Block-level primitives operate on the threads of a single CUDA thread block (CTA) / AMDGPU workgroup / Vulkan or Metal workgroup. They include thread barriers, memory fences, …
Per-thread matrix and vector operations — Quadrants 1.0.1 …
Per-thread matrix and vector operations # Element-wise arithmetic and closed-form helpers on qd.Matrix / qd.Vector — every op below runs per thread, in registers, with no cross-thread cooperation. A …
qd.init options — Quadrants 1.0.3 documentation
Metal and Vulkan lack the assertion extension that the field-bounds check relies on; check_out_of_bound=True is silently reset to False on those backends at qd.init time and a warning …
Graph — Quadrants 1.0.3 documentation
Graph # Graphs reduce kernel launch overhead by capturing a sequence of GPU operations into a graph, then replaying it in a single launch. Backend support # Both features run on every backend. …