3 repository-uri
Specialized compilation of pure functions into optimized kernels for hardware accelerators.
Distinct from GPU-Accelerated Compilers: Distinct from GPU-Accelerated Compilers: specifically targets the transformation of pure functional logic into kernels.
Explore 3 awesome GitHub repositories matching operating systems & systems programming · Pure Function Kernels. Refine with filters or upvote what's useful.
JAX is a hardware-accelerated array library and automatic differentiation system for numerical computing. It provides a framework compatible with NumPy that extends array operations with a just-in-time compiler to transform Python functions into optimized kernels for execution on GPU and TPU accelerators. The system differentiates itself through the use of an XLA-based compiler and a single program multiple data sharding model. These capabilities allow the library to distribute large-scale computations across multiple hardware accelerators using both automatic parallelization and manual shard
Converts pure functions into optimized kernels for high-performance execution on specialized accelerators.
TileLang is a Python-embedded domain-specific language compiler that JIT-compiles and autotunes GPU kernels. It uses a tile-based DSL, automatic software pipelining, and parallel autotuning to generate optimized GPU kernels at runtime. It supports tensor core operations with Pythonic syntax, automatic memory management, and thread mapping. The compiler searches over tile sizes, thread counts, and scheduling policies, compiling and benchmarking candidates in parallel to find the fastest kernel. It also caches compiled binaries and tuning results to disk for reuse across sessions. TileLang inc
Binds kernel functions to hardware-aware templates for targeted configuration generation.
gpu.cpp este o bibliotecă C++ ușoară pentru executarea calculului GPU general-purpose de nivel scăzut pe diferite furnizori de hardware și sisteme de operare. Acesta funcționează ca un wrapper GPU portabil, orchestrator de kernel și sistem de gestionare a tensorilor folosind specificația WebGPU pentru a abstractiza inițializarea dispozitivului, transferurile de buffer și dispatching-ul compute shader-elor. Biblioteca oferă un framework pentru definirea compute kernel-urilor din codul shader și gestionarea dispatch-ului și sincronizării lor asincrone. Permite executarea compute shader-elor multi-platformă și orchestrarea sarcinilor GPU printr-o specificație standardizată a procesorului grafic. Sistemul gestionează întregul ciclu de viață al memoriei GPU, incluzând alocarea tensorilor multidimensionali, mișcarea bidirecțională a datelor între gazdă și dispozitiv prin staging buffers și urmărirea resurselor pentru a preveni scurgerile de memorie. De asemenea, suportă slicing-ul tensorilor pentru crearea de vizualizări non-owning ale segmentelor de memorie și include utilitare pentru logarea mesajelor de sistem și filtrarea severității.
Maps buffers and tensors to specific indices so a GPU kernel can access them during execution.