← Back
Home › Systems › Simulation and scientific computing

lattice-qcd

lattice QCD

MILC, Grid

SystemTechniques · 10Primitives · 36 lattice-qcd Batch checkpoint restartdistributed · medium: Large batch jobs (end-of-day, settlement, payroll runs) that checkpoint and restart idempotentlyHalo exchangedistributed · medium: Each rank stores its block plus a border copy of its neighbours' edge cells, refreshed by small messages every step; communication scales with block surface, not volume.›Parallel file system stripingdistributed · medium: Striping files across object storage targets (Lustre, GPFS); collective I/O and metadata serversKernel autotuningml-training · medium: Searching tile sizes and launch parameters per shape/hardware, caching the best configsGmresnumerics · medium: GMRES with restarts: Arnoldi, Givens rotations, for nonsymmetric sparse systemsHamiltonian monte carlo nutsnumerics · medium: HMC with leapfrog integration and the No-U-Turn sampler; step size and mass-matrix adaptationMarkov chain monte carlonumerics · medium: Metropolis-Hastings and Gibbs sampling: proposals, burn-in, thinning, convergenceMcmc convergence diagnosticsnumerics · low: R-hat, effective sample size and divergence checks for MCMC runsPRNGs (PCG, xoshiro)numerics · low: Small, fast, statistically strong non-cryptographic generators: PCG32 and xoshiro256**, with seeding, parallel streams and unbiased ranges.›Verlet / leapfrognumerics · low: Half-kick, drift, half-kick: a second-order, time-reversible, symplectic integrator with one force evaluation per step whose energy error stays bounded for millions of steps.›Structure of arrays and hot/cold sp…hardware-os · low: Store each field in its own array and keep rarely used fields apart, so a loop reads only the bytes it needs and the compiler can vectorize it.›Gpu memory coalescing bankinghardware-os · low: Coalesced global loads, shared memory bank conflicts, L2 and HBM bandwidth on GPUsSIMD programminghardware-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.›CUDA and GPU languageslanguages · low: Programming GPUs: thousands of lockstep threads, bound by memory bandwidth; libraries first, Triton for fused kernels, CUDA C++ for peak speed.›Collective communicationml-training · low: The family of group exchanges (broadcast, reduce, all-gather, reduce-scatter, all-to-all) and the latency-plus-bytes cost model that picks ring, tree or direct algorithms by message size and topology.›Conjugate gradientnumerics · low: Krylov iteration for symmetric positive definite Ax = b using one matrix-vector product and two dot products per step; converges in about √κ iterations.›Low precision number formatsnumerics · low: Bf16, fp16, fp8 (E4M3, E5M2), MX block formats and int4: ranges, rounding, scalingMultigridnumerics · low: Smooths high-frequency error on the fine grid and solves the smooth remainder on coarser grids; O(n) elliptic solves at any resolution.›Reproducible reductionnumerics · low: Order-independent floating-point sums (fixed order, Kahan, binned) for bit-for-bit reproducibilityBootstrap confidence intervalsstatistics · low: Resampling-based confidence intervals for arbitrary statisticsIdempotency keysfinance · low: Client-chosen unique key per logical operation, stored with a request fingerprint and the final response, so retries replay the first result instead of acting twice.›Write-ahead logstorage · low: Append each change to a checksummed sequential log and fsync it before touching data pages; the basis of crash durability in nearly every database.›Cron schedulingsystems · low: Cron expression parsing and next-fire-time computation, with catch-up and time-zone rules+ 3 more techniques+ 20 more primitives

Similar systems

Share the most building blocks with this one.