22 Repos
General-purpose data processing on graphics hardware.
Explore 22 awesome GitHub repositories matching hardware & iot · GPU Computations. Refine with filters or upvote what's useful.
This project is a high-level 3D graphics engine designed to render complex, hardware-accelerated environments within web browsers. It provides a comprehensive abstraction layer that manages scene graphs, cameras, and lighting, mapping high-level scene definitions onto low-level graphics APIs. By decoupling these definitions from specific hardware targets, the engine ensures consistent performance across diverse browsers and devices. The framework distinguishes itself through a robust architecture that includes a unified math library for high-frequency spatial calculations and a physically bas
Executes general-purpose data processing tasks directly on graphics hardware to accelerate complex mathematical calculations.
This project is a cross-platform graphics and compute framework that provides a unified, hardware-agnostic abstraction layer for rendering and parallel processing. It enables developers to build high-performance applications that execute consistently across diverse operating systems and hardware backends, including Vulkan, Metal, and DirectX. By mapping high-level graphics commands to native APIs, it serves as a portable foundation for both real-time 3D rendering and general-purpose GPU computing. The framework distinguishes itself through a robust architecture that supports both native deskt
A parallel processing interface that allows developers to execute general-purpose code and complex mathematical calculations directly on graphics hardware.
bgfx is a cross-platform, graphics rendering abstraction layer designed for high-performance applications. It provides a unified interface that maps high-level rendering commands to native graphics APIs, allowing developers to maintain a single codebase that executes consistently across diverse operating systems and hardware architectures. The library distinguishes itself through a multi-threaded command submission model that decouples rendering logic from the main application thread, effectively minimizing CPU bottlenecks. It utilizes a backend-agnostic command buffer and a deferred resource
Executes general-purpose parallel calculations and offline rendering tasks on the graphics processor without requiring a display window.
ZLUDA is a middleware and translation engine designed to enable the execution of unmodified proprietary compute binaries on non-native graphics hardware. It functions as a compatibility layer that bridges vendor-specific compute interfaces with open standards, allowing software originally restricted to a single hardware ecosystem to operate on alternative graphics processing units. The project achieves this through a combination of dynamic library interception and runtime instruction translation. By replacing standard system libraries and mapping proprietary compute calls to open standards, t
Enables high-performance compute applications to execute on diverse hardware by translating proprietary instructions at runtime.
Cpp-taskflow is a C++ task-parallelism framework and task graph scheduler designed to manage and execute complex dependency graphs of parallel tasks across CPU and GPU hardware. It provides a parallel algorithm library for high-performance implementations of reductions, sorts, pipelines, and iterations. The framework distinguishes itself through its ability to offload heavy computational workloads from a task graph to graphics processors for acceleration. It also includes a task profiling tool and a performance analysis interface for visualizing task execution flow and dependency structures t
Accelerates scientific workloads by executing general-purpose parallel calculations on the GPU without a display window.
This project serves as a comprehensive educational framework and reference library for mastering high-performance graphics programming and parallel compute resource management. It provides a collection of practical implementations designed to demonstrate the explicit control required by the Vulkan API, covering the fundamental mechanics of modern graphics pipelines and cross-platform hardware interaction. The repository distinguishes itself by focusing on the low-level architectural requirements of modern GPU development, including manual memory allocation, multi-threaded command recording, a
Provides functional implementations for executing parallel data processing tasks and compute-driven geometry operations on graphics hardware.
Numba ist ein Just-in-Time-Compiler, der hochsprachliche Python-Funktionen zur Laufzeit in optimierten Maschinencode übersetzt. Durch die Nutzung der LLVM-Compiler-Infrastruktur bietet es ein Framework zur Beschleunigung numerischer Datenverarbeitung und mathematischer Berechnungen, was Leistungsniveaus ermöglicht, die mit statisch kompilierten Sprachen vergleichbar sind. Das Projekt zeichnet sich durch seine Fähigkeit zur typinferenzbasierten Spezialisierung aus, die Maschinenbefehle generiert, welche auf die während der Ausführung verwendeten Datentypen zugeschnitten sind. Es verwendet eine Lazy-Compilation-Pipeline, die die Übersetzung bis zum Moment des Aufrufs verzögert, wodurch der Start-Overhead minimiert und eine konsistente Leistung über verschiedene Prozessorarchitekturen und Betriebssysteme hinweg beibehalten wird. Über die reine Kompilierung hinaus bietet das Toolkit umfassende Unterstützung für Hardwarebeschleunigung durch die Verteilung iterativer Operationen und Array-Ausdrücke auf mehrere CPU-Kerne und Grafikprozessoren. Es nutzt Vektorisierungs- und Parallelisierungsstrategien, um den Durchsatz für große numerische Datensätze zu maximieren, wodurch Entwickler spezialisierte Hardware direkt aus Standardcode ansprechen können.
Executes parallel algorithms on graphics hardware by targeting processing units directly within standard code.
Sokol is a C hardware abstraction layer and cross-platform graphics library designed for managing windowing, input, and audio across different operating systems. It functions as a GPU resource manager and multimedia application framework, providing a unified API for rendering 2D and 3D graphics across WebGL, Metal, Direct3D, and OpenGL. The project is distinguished by its single-header implementation, which simplifies integration and portability. It utilizes a stateless render pass definition and a one-update-per-frame model to synchronize CPU data to GPU memory and manage resource lifecycles
Enables general-purpose data processing on the GPU using compute shaders and storage buffers.
jetson-inference is a set of libraries and tools for executing optimized deep learning models on embedded GPU hardware. Its primary purpose is to enable real-time computer vision and AI inference at the edge with low latency and high throughput. The project distinguishes itself through high-performance streaming analytics and the ability to execute concurrent AI pipelines on auto-grade silicon. It provides specialized support for multi-sensor stream processing, utilizing zero-copy data transport to load camera frames directly into GPU memory. The codebase covers a broad surface of capabiliti
Leverages parallel processing power on GPUs to execute computationally intensive tasks through Python applications.
This project is a collection of reference implementations and technical guides for building high-performance 3D applications and graphics experiments on Windows. It provides a library of samples covering the implementation of GPU compute frameworks, raytracing reference models, and shader optimization techniques. The repository includes specific demonstrations for modeling physical light behavior to create reflections and lighting effects, as well as tools for analyzing memory dumps and tracking real-time execution metrics on graphics hardware. It further provides guidance on managing shader
Offloads heavy mathematical processing to graphics hardware using compute shaders and work graphs.
Offloads pipeline stages to GPU compute APIs such as CUDA, Metal, or DirectX 12.
Runs parallel workloads on NVIDIA hardware using a programming model and libraries for GPU computation.
Gorgonia is a Go library that provides an automatic differentiation engine and a computation graph framework for building and training neural networks. It functions as a CUDA-accelerated tensor library and a SIMD-optimized math library, enabling machine learning workflows entirely within the Go ecosystem. The library distinguishes itself through a dual-backend architecture that dispatches neural network operations to either a GPU or CPU depending on CUDA availability at runtime. It constructs differentiable directed acyclic graphs of tensor operations, supports reverse-mode automatic gradient
Creates hardware-specific CUDA bindings using a code generation tool to enable GPU-accelerated computation.
gfx ist eine Hardware-agnostische Grafik-API-Abstraktion, die einen einheitlichen Satz von Grafik- und Compute-Befehlen in native Anweisungen für mehrere GPU-Treiber übersetzt. Sie bietet eine gemeinsame Schnittstelle für plattformübergreifendes Rendering und allgemeine GPU-Compute-Programmierung. Das Projekt bietet ein Shader-Übersetzungssystem für Zwischenrepräsentationen, das Quellcode und SPIR-V in zielspezifische Sprachen konvertiert. Es verwendet ein datengesteuertes Referenz-Test-Framework, um zu verifizieren, dass die Grafikausgabe über verschiedene Hardwareplattformen hinweg konsistent bleibt. Die Funktionen umfassen paralleles Command-Buffer-Encoding über mehrere Threads hinweg und die Kapselung von Pipeline-Zuständen in einzelne Objekte, um redundante Zustandsänderungen zu minimieren. Das System verwaltet Low-Level-GPU-Ressourcen, einschließlich Speicherallokation, asynchronem Buffer-Mapping und expliziter Frame-Präsentation via Swapchains. Die Implementierung zielt auf native Umgebungen und Webbrowser mittels WebAssembly ab und bietet Übersetzungsschichten für WebGL und WebGL2.
Enables execution of general-purpose computing tasks and data processing workloads on GPUs across different platforms.
This project is a collection of reference implementations and benchmarks demonstrating the use of the Vulkan graphics and compute API. It provides a set of cross-platform examples and GPU programming patterns designed for high-performance rendering and hardware-accelerated tasks. The repository includes a suite of performance benchmarks used to measure API behavior across different hardware environments. It features a modular architecture that organizes rendering examples into isolated units, along with command-line utilities for the batch execution of sample sequences. The project covers se
Executes compute tasks and captures output in environments without a physical display.
Orillusion ist eine WebGPU-3D-Rendering-Engine, die für hochauflösende Szenen und visuelle Effekte im Browser entwickelt wurde. Sie fungiert als GPU-Compute-Framework für parallele mathematische Operationen und als physikalisch basierte Rendering-Grafik-Pipeline für realistische Materialien und Oberflächen. Das System enthält zudem ein Web-basiertes 3D-Animationstoolkit zur Steuerung von Skelettanimationen und zur Interpolation von Vertex-Positionen. Die Engine zeichnet sich durch die Verwendung eines Entity-Component-Systems für Szenenlogik und ein Makro-basiertes Shader-Generierungssystem aus, das mehrere Shader-Varianten erstellt. Sie optimiert die Leistung durch speicherabgebildetes Puffer-Management, um den Datenaustausch-Overhead zwischen CPU und GPU zu reduzieren. Das Projekt deckt eine breite Palette an Grafikfunktionen ab, einschließlich Clustered Forward Rendering, Sonden-basierter globaler Beleuchtung und einer Post-Processing-Pipeline mit Effekten wie volumetrischen God Rays und Tiefenschärfe. Es integriert zudem GPU-beschleunigte Physik für Partikel und Flüssigkeiten, Kollisionserkennung und hardwarebeschleunigte Benutzeroberflächen.
Runs complex mathematical operations and GPGPU tasks outside the standard graphics rendering pipeline.
LWJGL is a cross-platform library that provides Java bindings to native APIs for graphics, audio, compute, windowing, and input. It enables Java applications to access low-level hardware-accelerated capabilities such as OpenGL and Vulkan rendering, OpenAL 3D audio, OpenCL GPU compute, and GLFW windowing and input handling. Under the hood, LWJGL dynamically resolves native function pointers at runtime, loads platform-specific shared libraries, and uses generated JNI bindings to bridge Java and native code. It offers explicit memory management through direct buffer access and stack-allocated me
Offloads parallel computation tasks to GPUs via OpenCL or Vulkan compute from a Java runtime.
Dieses Projekt ist eine GPU-Feature-Kompatibilitätsschicht und ein Frame-Generation-Mod. Es fungiert als DLL-API-Emulator und Wrapper, der proprietäre Nvidia DLSS Frame Generation-Aufrufe abfängt und an eine alternative Implementierung umleitet. Die Software ermöglicht AMD FSR 3 Frame Generation in Spielen, die nativ nur Nvidia DLSS Frame Generation unterstützen. Sie übersetzt proprietäre Grafikanfragen in einen offenen Standard, wodurch Frame-Interpolation auf Grafikkarten ausgeführt werden kann, die ansonsten nicht mit den ursprünglichen Herstellerstandards kompatibel sind. Das System verwendet DLL-Proxy-Wrapping und dynamische Bibliotheksumleitung, um erwartete Funktionssignaturen nachzuahmen und Anwendungsabstürze zu verhindern. Dieser Prozess bildet proprietäre-zu-offene Übersetzungen durch Runtime-Hooking und API-Oberflächenemulation ab.
Translates proprietary DLSS frame generation requests into AMD FSR 3 compatible calls.
HIP ist eine C++-GPU-Kernelsprache und eine plattformübergreifende Laufzeitumgebung, die für das Schreiben portabler Hochleistungs-Rechenanwendungen entwickelt wurde. Sie bietet eine Programmierschnittstelle, die es ermöglicht, eine einzelne Quellcodebasis sowohl auf AMD- als auch auf NVIDIA-GPU-Architekturen auszuführen. Das Projekt fungiert als Kompatibilitätsschicht, die die Konvertierung und Migration bestehender CUDA-Quellcodes zur Ausführung auf AMD-Hardware ermöglicht. Dies wird durch ein Syntax-Mapping erreicht, das CUDA widerspiegelt, sowie durch einen Source-to-Source-Übersetzungsprozess während der Kompilierung. Das Toolkit deckt die breitere Oberfläche der plattformübergreifenden GPGPU-Entwicklung ab, einschließlich heterogener Rechenoptimierung und der Erstellung portabler Kernels. Es nutzt eine Laufzeitabstraktion, um einheitliche API-Aufrufe auf herstellerspezifische Treiberbibliotheken für Speicher- und Kernel-Management abzubilden.
Functions as a cross-platform runtime allowing compute applications to run on different GPU manufacturers.
oneDNN is a cross-architecture compute library and hardware acceleration framework designed as a oneAPI deep learning library. It functions as a neural network inference engine that provides optimized primitives to accelerate deep learning operations across diverse CPU and GPU architectures. The project distinguishes itself through a combination of just-in-time instruction generation based on detected processor features and microarchitecture-specific tuning. It utilizes graph-based operation compilation to minimize overhead and manages layout-aware tensors to optimize data access patterns acr
Provides a set of high-performance compute building blocks for AI deployment across different hardware vendors and runtimes.