mhtirogla
Home
Systems
API
Pricing
About
Log in
← Back
Home
›
Systems
›
Simulation and scientific computing
quantum-stack
quantum compiler and simulator
Qiskit, Cirq
System
Techniques · 7
Primitives · 19
quantum-stack
Quantum circuit optimization
numerics · medium: Gate cancellation, commutation and resynthesis passes over circuit DAGs
Quantum gate synthesis
numerics · medium: Decompose unitaries into native gates (KAK, Solovay-Kitaev, Clifford+T synthesis)
Qubit routing
numerics · medium: Map logical qubits to a device coupling graph and insert SWAPs (SABRE)
Stabilizer simulation
numerics · medium: Simulate Clifford circuits in polynomial time with stabilizer tableaus (Gottesman-Knill, Stim)
State vector simulation
numerics · medium: Simulate qubits as a 2^n amplitude vector with gate kernels, SIMD and GPU
Tensor network contraction
numerics · medium: Contract tensor networks with good contraction orders; MPS and slicing for circuit simulation
Graph partitioning
graphs · medium: Split a graph into k balanced parts with few edges between them; multilevel coarsen-partition-refine (METIS, KaHIP) for quality, streaming heuristics (LDG, Fennel) for one-pass scale.
›
Topological sort
graphs · low: Order the vertices of a DAG so every edge points forward; the core of build systems, schedulers and dependency resolution, with cycle detection for free.
›
SIMD programming
hardware-os · low: Process 4-16 lanes per instruction with AVX2, AVX-512 or NEON via Rust std::arch, with runtime dispatch and a portable fallback.
›
PRNGs (PCG, xoshiro)
numerics · low: Small, fast, statistically strong non-cryptographic generators: PCG32 and xoshiro256**, with seeding, parallel streams and unbiased ranges.
›
Recursive-descent parsing
compilers · low: Hand-written top-down parser with one function per grammar rule; simple, fast, with full control over error messages and recovery.
›
CUDA and GPU languages
languages · low: Programming GPUs: thousands of lockstep threads, bound by memory bandwidth; libraries first, Triton for fused kernels, CUDA C++ for peak speed.
›
E graphs
compilers · low: Equality saturation: e-graphs compactly hold many equivalent programs, then extract the cheapest
Peephole optimization
compilers · low: Local pattern rewrites on short instruction windows or IR
BFS and DFS
graphs · low: The two basic graph traversals; BFS gives hop distances and levels, DFS gives discovery/finish order for cycles, components and topological order.
›
PCA and SVD
machine-learning · low: Find orthogonal directions of maximum variance by an SVD of the centred data; randomized SVD gets the top k components in a few passes.
›
Floating-point error
numerics · low: How IEEE 754 rounding error accumulates and how to contain it: compensated (Kahan/Neumaier) and pairwise summation, error-free transformations with FMA, ULP comparisons.
›
A* search
graphs · low: Dijkstra ordered by cost-so-far plus an admissible estimate of the remaining cost; optimal paths while exploring far fewer nodes toward the goal.
›
Finite field arithmetic
numerics · low: Prime-field and extension-field arithmetic (Montgomery form, Goldilocks, BabyBear), vectorized
Numa aware allocation
hardware-os · low: Allocate memory and pin threads on the local NUMA node; first-touch and interleave policies
GPU compute shaders
ml-training · low: The vendor-neutral GPU launch model of Metal, Vulkan and WebGPU: a grid of workgroups, shared memory, barriers and subgroups, driven by recorded command buffers.
›
Tiled matrix multiplication
ml-training · low: Block GEMM into tiles held in shared memory and registers, so each byte loaded from DRAM feeds many FMAs; the core of fast GEMM.
›
d-ary heap
data-structures · low: Array heap with d children per node (d = 4 typical): half the binary heap's depth, siblings in one cache line, faster priority queues.
›
+ 3 more primitives
System
Techniques · 7
Primitives · 19
quantum-stack
Quantum circuit optimization
numerics · medium: Gate cancellation, commutation and resynthesis passes over circuit DAGs
Quantum gate synthesis
numerics · medium: Decompose unitaries into native gates (KAK, Solovay-Kitaev, Clifford+T synthesis)
Qubit routing
numerics · medium: Map logical qubits to a device coupling graph and insert SWAPs (SABRE)
Stabilizer simulation
numerics · medium: Simulate Clifford circuits in polynomial time with stabilizer tableaus (Gottesman-Knill, Stim)
State vector simulation
numerics · medium: Simulate qubits as a 2^n amplitude vector with gate kernels, SIMD and GPU
Tensor network contraction
numerics · medium: Contract tensor networks with good contraction orders; MPS and slicing for circuit simulation
Graph partitioning
graphs · medium: Split a graph into k balanced parts with few edges between them; multilevel coarsen-partition-refine (METIS, KaHIP) for quality, streaming heuristics (LDG, Fennel) for one-pass scale.
›
Topological sort
graphs · low: Order the vertices of a DAG so every edge points forward; the core of build systems, schedulers and dependency resolution, with cycle detection for free.
›
SIMD programming
hardware-os · low: Process 4-16 lanes per instruction with AVX2, AVX-512 or NEON via Rust std::arch, with runtime dispatch and a portable fallback.
›
PRNGs (PCG, xoshiro)
numerics · low: Small, fast, statistically strong non-cryptographic generators: PCG32 and xoshiro256**, with seeding, parallel streams and unbiased ranges.
›
Recursive-descent parsing
compilers · low: Hand-written top-down parser with one function per grammar rule; simple, fast, with full control over error messages and recovery.
›
CUDA and GPU languages
languages · low: Programming GPUs: thousands of lockstep threads, bound by memory bandwidth; libraries first, Triton for fused kernels, CUDA C++ for peak speed.
›
E graphs
compilers · low: Equality saturation: e-graphs compactly hold many equivalent programs, then extract the cheapest
Peephole optimization
compilers · low: Local pattern rewrites on short instruction windows or IR
BFS and DFS
graphs · low: The two basic graph traversals; BFS gives hop distances and levels, DFS gives discovery/finish order for cycles, components and topological order.
›
PCA and SVD
machine-learning · low: Find orthogonal directions of maximum variance by an SVD of the centred data; randomized SVD gets the top k components in a few passes.
›
Floating-point error
numerics · low: How IEEE 754 rounding error accumulates and how to contain it: compensated (Kahan/Neumaier) and pairwise summation, error-free transformations with FMA, ULP comparisons.
›
A* search
graphs · low: Dijkstra ordered by cost-so-far plus an admissible estimate of the remaining cost; optimal paths while exploring far fewer nodes toward the goal.
›
Finite field arithmetic
numerics · low: Prime-field and extension-field arithmetic (Montgomery form, Goldilocks, BabyBear), vectorized
Numa aware allocation
hardware-os · low: Allocate memory and pin threads on the local NUMA node; first-touch and interleave policies
GPU compute shaders
ml-training · low: The vendor-neutral GPU launch model of Metal, Vulkan and WebGPU: a grid of workgroups, shared memory, barriers and subgroups, driven by recorded command buffers.
›
Tiled matrix multiplication
ml-training · low: Block GEMM into tiles held in shared memory and registers, so each byte loaded from DRAM feeds many FMAs; the core of fast GEMM.
›
d-ary heap
data-structures · low: Array heap with d children per node (d = 4 typical): half the binary heap's depth, siblings in one cache line, faster priority queues.
›
Sparse matrices (CSR)
numerics · low: Compressed sparse row stores only nonzeros as row pointers, column indices and values; SpMV streams them once, so it is memory-bandwidth bound.
›
Dijkstra's algorithm
graphs · low: Single-source shortest paths with non-negative edge weights by settling vertices in order of distance with a priority queue.
›
Gpu memory coalescing banking
hardware-os · low: Coalesced global loads, shared memory bank conflicts, L2 and HBM bandwidth on GPUs
Copy for AI