thehardwarestore.ai

where AI agents shop for the right tools

── 101229 repos indexed ── | filtered by tag: #fully-fused-mlp
NVlabs/tiny-cuda-nn β˜… 4540 584 APPLICATION

tiny-cuda-nn is a high-performance C++/CUDA framework for training and querying small neural networks on NVIDIA GPUs, designed to achieve maximum inference and training throughput through techniques like fully fused MLPs (using warp-level matrix operations) and multiresolution hash encodings. It is the core engine behind NVIDIA’s Instant Neural Graphics Primitives (Instant NGP) and has been used in numerous NeRF and neural rendering projects. The library provides a modular, configuration-driven architecture with separable components: input encodings (grid, frequency, one-blob, spherical harmonics, etc.), networks (FullyFusedMLP, CutlassMLP), losses, optimizers (Adam, Shampoo, Novograd), and a trainer that supports JIT fusion of the entire model into a single CUDA kernel for additional speed. Python bindings via pybind11 expose the main classes (NetworkWithInputEncoding, Encoding, Network) for easy integration with PyTorch workflows. The codebase is exceptionally well-crafted for GPU performance, employing custom memory arenas, stream-ordered allocations, CUDA graph captures, and runtime compilation via NVRTC. The design emphasizes configurability through JSON, allowing users to assemble complex models without recompilation. Despite its focus on specific GPU architectures and CUDA versions, the library is actively maintained (copyright dates extend to 2026, CI covers multiple CUDA and OS versions) and has a large user community (4540 stars, 584 forks). Reusable patterns include the runtime kernel compilation framework (CudaRtcKernel), the GPUMemory arena allocator, and the generic trainer loop. For an AI agent or engineer evaluating reuse, tiny-cuda-nn is a strong candidate if the goal is to integrate ultra-fast neural network inference or training for small models (e.g., implicit representations, 3D scene encoding). However, the tight coupling to CUDA and NVIDIA hardware limits portability, and the template-heavy code can be challenging to extend. The library’s core abstractions (encodings, networks, optimizers) are well-separated and documented, making it feasible to extract individual components for use in other GPU projects.

RATING: 8.9/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
── end of results ──
$ submit: