← Back
Home › Systems › Engineering design and CAx

topology-optimization

topology optimization for design

TopOpt, nTop

SystemTechniques · 11Primitives · 25 topology-optimization Halo 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.›B rep topologygeometry · medium: Boundary representation: solids as shells, faces, loops, edges and vertices with geometry attachedMarching cubesgraphics · medium: Extract triangle meshes from scalar fields (marching cubes, dual contouring)Mesh simplification quadricgraphics · medium: Edge collapse with quadric error metrics to build mesh LODsFinite elementsnumerics · medium: Writes the PDE in weak form, approximates it with piecewise polynomials on a mesh and assembles a sparse system; handles any geometry.›Level set methodsnumerics · medium: Implicit surfaces as signed distance fields: advection, reinitialization, fast marchingSparse direct solvernumerics · medium: Solve sparse Ax = b exactly by reordering, symbolic analysis, numeric LLᵀ/LU and triangular solves; fill-in, not flops per entry, decides the cost.›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.›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.›Unstructured mesh representationnumerics · low: Cell-face-node connectivity in CSR form for FEM and FVM meshes; partition-friendly orderingConvolution image filtersgraphics · low: Separable 2D convolution kernels for blur, sharpen (unsharp mask) and edges with border handlingCUDA 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.›Multigridnumerics · low: Smooths high-frequency error on the fine grid and solves the smooth remainder on coarser grids; O(n) elliptic solves at any resolution.›Eager rendezvous protocoldistributed · low: MPI point-to-point: eager sends for small messages, rendezvous handshake for large onesRdmanetworking · low: RDMA verbs over InfiniBand/RoCE: queue pairs, memory registration, one-sided opsZero-copy I/Onetworking · low: Move bytes between files, sockets and NICs by passing page references instead of copying through user space: sendfile, splice, MSG_ZEROCOPY, kTLS.›Exact geometric predicatesgeometry · low: Robust orient and incircle tests with adaptive-precision floats (Shewchuk) or exact arithmeticHalf edge meshgraphics · low: Half-edge mesh connectivity for editable polygon meshesFinite differencesnumerics · low: Replace derivatives with weighted differences of grid values; simple stencils plus a stability condition (CFL) turn PDEs like heat, advection and waves into array loops.›Spatial hashingphysics · low: Uniform grid stored in a hash table: bucket objects by cell, test only neighbouring cells; O(n) neighbour search for many similar-sized objects such as particles.›d-ary heapdata-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.›LU and Cholesky factorizationnumerics · low: Factor A = PLU (any square matrix, partial pivoting) or A = LLᵀ (SPD) once in O(n³), then solve each right-hand side in O(n²).›+ 4 more techniques+ 9 more primitives

Similar systems

Share the most building blocks with this one.