11 Repos
Low-level mathematical operations executed via hand-optimized kernels to maximize hardware performance.
Explore 11 awesome GitHub repositories matching software engineering & architecture · Custom Kernel Accelerators. Refine with filters or upvote what's useful.
Unsloth is a high-performance training and inference platform designed to optimize the lifecycle of large language and multimodal models. It provides a comprehensive engine for fine-tuning, executing, and managing models locally, with a focus on reducing memory consumption and increasing compute speed on consumer-grade hardware. The platform distinguishes itself through hand-optimized kernels and automated computational graph techniques that maximize hardware throughput. It supports advanced training methodologies, including reinforcement learning for reasoning and efficient adapter-based fin
Executes low-level mathematical operations using hand-optimized kernels to maximize hardware throughput and minimize memory overhead.
Mamba is a deep learning framework designed for building and training sequence models that process long-range data dependencies with linear-time computational efficiency. By utilizing selective state space modeling, the library enables the construction of neural network architectures that replace traditional attention mechanisms with high-performance state space operations. The framework distinguishes itself through the use of data-dependent state gating, which allows the model to dynamically filter information flow based on the input sequence. To ensure high throughput, it incorporates hardw
Provides hardware-optimized custom kernels to maximize throughput for complex state space calculations.
Open3D is a software toolkit designed for the processing, alignment, and reconstruction of three-dimensional data. It functions as a computer vision geometry engine that enables the manipulation of point clouds, meshes, and volumetric grids derived from sensor inputs. The library distinguishes itself through a high-performance computational core that executes geometric processing tasks in native code, paired with a binding layer that exposes these capabilities to high-level languages for rapid prototyping. It provides specialized algorithms for spatial registration, allowing users to merge mu
Provides high-performance C++ kernels for executing complex geometric processing tasks.
PyTorch3D is a 3D geometric deep learning library and mesh processing toolkit designed for learning from point clouds and complex 3D surface geometries. It provides a collection of reusable components and data structures for deep learning with 3D data, including a framework for training and evaluating neural radiance fields to enable photorealistic view synthesis. The project features a differentiable 3D renderer that converts meshes and point clouds into 2D images while allowing gradients to flow back into the geometry and textures. This enables 3D shape optimization, where mesh geometry, te
Utilizes high-performance CUDA kernels optimized for geometric transformations and sampling on spatial data.
Cutlass is a collection of C++ templates and Python interfaces for implementing high-performance linear algebra operations on NVIDIA GPUs. It provides a kernel composition framework for designing custom GPU kernels and a mixed-precision tensor library capable of executing operations across diverse data formats, ranging from 64-bit floating point to 4-bit integers. The project features a toolkit for operator fusion that integrates activation functions and bias calculations directly into matrix multiplication kernels to reduce memory passes. It also includes a Python-based domain-specific langu
Uses C++ templates to generate specialized GPU kernels by combining modular software components and hardware tuning parameters.
ChatRWKV is an open-source frontend and GPU-accelerated inference engine designed for interacting with RWKV recurrent neural network language models. It provides a self-hosted web chat interface and a specialized client for generating human-like text using a linear-complexity architecture. The project utilizes a GPU-accelerated backend that employs custom CUDA kernels and dynamic model format conversion to increase processing speed and reduce memory overhead. It manages conversation history through state-based context management, updating a fixed-size hidden state to maintain a constant memor
Uses custom CUDA kernels to optimize matrix operations and reduce memory overhead during inference.
This is a cross-platform framework for building, training, and deploying custom machine learning models within the .NET ecosystem. It provides a predictive modeling engine for classification, regression, and forecasting tasks, alongside an inference runtime to generate predictions across different hardware architectures. The framework includes a gradient boosting library and supports interoperability with external models via a standardized open format. It features tools for prediction explainability, allowing the analysis of feature importance to debug model behavior and identify bias. The p
Implements optimized low-level mathematical kernels to accelerate the execution of training algorithms and data processing.
Flashlight ist eine eigenständige C++-Bibliothek für maschinelles Lernen und Tensor-Berechnungen, die zum Erstellen und Trainieren neuronaler Netze verwendet wird. Sie fungiert als umfassendes Framework für neuronale Netze und Engine für automatische Differenzierung und bietet Werkzeuge zur Konstruktion von Berechnungsgraphen und zur Berechnung von Gradienten via Backpropagation. Das Projekt dient als Framework für verteiltes Training und nutzt All-Reduce-Operationen zur Synchronisation von Gradienten und Parametern über mehrere Rechenknoten und Geräte hinweg. Es zeichnet sich durch eine tiefe Integration von leistungsstarker Tensor-Manipulation, nativer Interoperabilität mit Gerätespeichern und einem System zur Synchronisation von Gewichten über verteilte Worker aus, um das Training großskaliger Modelle zu beschleunigen. Das Framework deckt eine breite Palette an Deep-Learning-Funktionen ab, einschließlich modularer Schichtkomposition für den Entwurf komplexer Architekturen wie Residual-Blöcke und rekurrente Zellen. Es bietet umfangreiche Datenmanagement-Utilities für Ingestion und Prefetching sowie Serialisierungssysteme zur Persistierung von Modellzuständen. Zusätzlich enthält es eine Suite an Überwachungs- und Observability-Tools zur Verfolgung von Trainingsmetriken und zur Messung von Sequenzfehlern. Die Bibliothek ist in C++ implementiert.
Integrates hand-optimized GPU kernels by providing direct access to raw tensor memory pointers.
Flashlight ist eine C++-Bibliothek für maschinelles Lernen und ein Deep-Learning-Framework zur Erstellung und zum Training neuronaler Netze. Es fungiert als Tensor-Manipulationsbibliothek und Engine für automatische Differenzierung, die Operationen verfolgt, um Gradienten via Backpropagation für die Modelloptimierung zu berechnen. Das Projekt zeichnet sich durch seine Rolle als Framework für verteiltes Training aus, das All-Reduce-Gradientensynchronisation und verteilte Umgebungen nutzt, um Machine-Learning-Workloads über mehrere Nodes und Geräte hinweg zu skalieren. Es verfügt über eine Backend-agnostische Speicherschnittstelle und RAII-basiertes Management, um Tensor-Operationen von der physischen Hardware zu entkoppeln. Das Framework deckt ein breites Funktionsspektrum ab, einschließlich der Konstruktion neuronaler Netzwerkarchitekturen mit konvolutiven, linearen und rekurrenten Schichten. Es bietet umfangreiche Utilities für Tensor-Algebra, Dataset-Management und Batching, versionierte Binärserialisierung für Modellzustände sowie Überwachungswerkzeuge zur Verfolgung von Trainingsmetriken und Speicherauslastung.
Allows high-performance operations via direct memory pointer access for external accelerator libraries.
statsforecast ist eine statistische Hochleistungs-Bibliothek für Zeitreihenprognosen, die darauf ausgelegt ist, Punktprognosen und Vorhersageintervalle zu generieren. Sie fungiert als verteiltes Zeitreihen-Framework, das eine C-basierte Prognose-Engine und einen automatisierten Modellselektor nutzt, um das optimale statistische Modell für jede einzigartige Serie in einem Datensatz zu identifizieren und anzupassen. Das System enthält zudem einen Zeitreihen-Anomaliedetektor, um ungewöhnliche Datenpunkte durch den Vergleich beobachteter Werte mit probabilistischen Prognoseintervallen zu identifizieren. Das Projekt zeichnet sich durch seine Fähigkeit aus, massiv parallele Prognosen für Millionen individueller Serien zu verarbeiten. Dies erreicht es durch ein verteiltes Computing-Framework, Multi-Core-Parallel-Ausführung und kompilierte C-Kernels, die die Kernlogik von ARIMA und exponentieller Glättung beschleunigen. Das System optimiert die großskalige Verarbeitung weiter unter Verwendung eines Long-Format-Datenlayouts und einer Lazy-Evaluation-Datenpipeline, um den Speicher-Overhead zu reduzieren. Die Bibliothek bietet eine umfassende Suite von Modellen, einschließlich AutoARIMA, verschiedenen Methoden der exponentiellen Glättung für intermittierende oder saisonale Nachfrage, Theta-Dekomposition und GARCH-Volatilitätsmodellierung für finanzielles Risiko. Sie deckt breitere Funktionsbereiche ab, wie multivariate Prognosen mit exogenen Variablen, Zeitreihen-Dekomposition und Modellevaluierung mittels historischer Kreuzvalidierung und Sliding-Window-Analyse. Die Bibliothek integriert sich mit Hochleistungs-Datenstrukturen wie Polars und bietet Dienstprogramme, um gespeicherte Modelle als REST-Endpunkte für netzwerkzugängliche Vorhersagen bereitzustellen.
Uses compiled C source code to accelerate core ARIMA and exponential smoothing operations.
Contiki is an operating system designed for resource-constrained embedded devices and the Internet of Things. It provides a lightweight, event-driven kernel that enables multitasking and low-power wireless network connectivity on hardware with extremely limited memory and processing power. The system distinguishes itself through a stackless threading model that allows for a blocking-style programming interface while maintaining a minimal memory footprint. It supports dynamic module and firmware management, enabling the loading and linking of relocatable binary code at runtime to update applic
Implements communication protocols using static memory allocation and buffer reuse to ensure reliable connectivity in limited RAM environments.