awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoServidor MCPAcerca deCómo clasificamosPrensa
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
AnswerDotAI avatar

AnswerDotAI/gpu.cpp

0
View on GitHub↗
3,981 estrellas·195 forks·C++·Apache-2.0·20 vistasgpucpp.answer.ai↗

Gpu.cpp

gpu.cpp is a lightweight C++ library for executing low-level general-purpose GPU computation across different hardware vendors and operating systems. It functions as a portable GPU wrapper, kernel orchestrator, and tensor management system using the WebGPU specification to abstract device initialization, buffer transfers, and compute shader dispatching.

The library provides a framework for defining compute kernels from shader code and managing their asynchronous dispatch and synchronization. It enables the execution of cross-platform compute shaders and the orchestration of GPU tasks through a standardized graphics processor specification.

The system handles the full lifecycle of GPU memory, including the allocation of multi-dimensional tensors, bidirectional data movement between host and device via staging buffers, and resource tracking to prevent memory leaks. It also supports tensor slicing for creating non-owning views of memory segments and includes utilities for system message logging and severity filtering.

Features

  • WebGPU Implementations - Provides a C++ implementation and abstraction layer based on the WebGPU specification for cross-platform GPU compute.
  • GPU Hardware Abstraction Layers - Acts as a portable interface abstracting device initialization and shader dispatch across diverse operating systems and hardware.
  • Compute Shader Programming - Enables the execution of general-purpose compute kernels across different hardware vendors and operating systems.
  • Tensor Lifecycle Management - Provides a system for allocating and managing the lifetime of multi-dimensional memory buffers on graphics hardware.
  • GPU Compute Frameworks - Offers a portable framework for executing parallel mathematical operations across various GPU hardware vendors.
  • GPU Resource Management - Manages the allocation and lifecycle of GPU tensors and buffers for high-speed computation.
  • Compute Shader Dispatchers - Implements mechanisms for executing general-purpose parallel processing tasks on graphics processors across platforms.
  • Tensor Memory Lifetime Management - Tracks and releases hardware tensor buffers to manage the lifetime of GPU assets and prevent memory leaks.
  • GPU Device Initializations - Implements the processes for requesting hardware adapters and creating logical devices to enable GPU access.
  • GPU Memory Orchestration - Orchestrates the transfer of data and synchronization between host memory and GPU memory.
  • GPU Staging Buffers - Coordinates bidirectional data movement between the system processor and graphics processor using intermediate staging buffers.
  • GPU Kernel Orchestration - Manages the full lifecycle of defining, launching, and synchronizing parallel compute kernels on GPU hardware.
  • GPU Kernel Programming - Provides low-level primitives for defining and dispatching compute kernels with custom shader code.
  • Compute Shader Kernels - Defines reusable compute units by binding shader code and workgroup metadata to hardware handles.
  • Kernel Definitions - Creates reusable GPU kernels from shader code by binding input and output tensors and parameters.
  • GPU Command Queues - Provides a non-blocking command queue to dispatch compute kernels for asynchronous GPU execution.
  • Asynchronous Kernel Launchers - Decouples task scheduling from hardware execution by submitting kernels to the GPU queue asynchronously.
  • Tensor Memory Management - Specifies the rank and size of dimensions to determine the structural memory layout of tensors.
  • Manual Memory Management - Allows for the explicit disposal of tensor resources to manually update the resource pool and free memory.
  • Device-to-Host Data Transfers - Coordinates staging buffers and callbacks to move information from hardware memory back to system memory.
  • Host-to-Device Data Transfers - Moves memory from the system processor to the graphics processor to provide inputs for compute kernels.
  • Non-Owning Tensor Views - Creates non-owning views of hardware buffers using offsets and shapes to avoid duplicating GPU memory.
  • Tensor Slicing - Creates non-owning views of tensors using offsets to reference specific data segments without duplicating memory.
  • GPU Operation Synchronizers - Ensures data consistency by waiting for asynchronous graphics processing operations to complete.
  • Shader Metadata Management - Stores compute shader code and metadata such as workgroup size and entry points to prepare for execution.
  • GPU Bind Group Mappings - Implements mechanisms for mapping tensors and parameters to WebGPU bind group indices for kernel access.
  • GPU Buffer Management - Allocates and maintains contiguous blocks of hardware memory for mathematical computation storage.
  • Resource Bindings - Maps buffers and tensors to specific indices so a GPU kernel can access them during execution.
  • GPU Memory Allocators - Creates multi-dimensional memory buffers on the graphics processor for high-speed mathematical calculations.
  • Handle Management - Provides a mechanism to store and reuse compute kernel handles to avoid expensive hardware setup costs.
  • Asynchronous GPU Tasking - Coordinates the dispatch of GPU kernels using asynchronous primitives to manage non-blocking execution.

Historial de estrellas

Gráfico del historial de estrellas de answerdotai/gpu.cppGráfico del historial de estrellas de answerdotai/gpu.cpp

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Gpu.cpp

Proyectos open-source similares, clasificados según cuántas características comparten con Gpu.cpp.
  • overv/vulkantutorialAvatar de Overv

    Overv/VulkanTutorial

    3,675Ver en GitHub↗

    VulkanTutorial is a comprehensive educational guide and instructional resource for implementing low-level rendering and compute pipelines using the Vulkan API. It serves as a GPU programming course and a step-by-step guide for building high-performance graphics applications from scratch. The project provides detailed instruction on the full graphics pipeline, including the compilation of shaders to SPIR-V bytecode, the configuration of rasterization states, and the implementation of 3D graphics pipelines. It also covers general-purpose GPU compute programming, focusing on the execution of par

    C++computer-graphicscppgraphics-programming
    Ver en GitHub↗3,675
  • gpuweb/gpuwebAvatar de gpuweb

    gpuweb/gpuweb

    5,414Ver en GitHub↗

    This project provides a comprehensive toolset for WebGPU, serving as a graphics API wrapper, compute shader framework, resource manager, and shader toolchain. It enables browser-based GPU acceleration by offloading memory-intensive tasks and data processing from the CPU to the GPU. The framework manages the full lifecycle of GPU operations, from requesting physical hardware adapters and initializing logical devices to configuring programmable render and compute pipelines. It specifically supports the coordination of parallel workgroups and collective subgroup operations for general-purpose co

    Bikeshedgpgpu-computinggpuw3c
    Ver en GitHub↗5,414
  • iree-org/ireeAvatar de iree-org

    iree-org/iree

    3,819Ver en GitHub↗

    IREE is an MLIR-based compiler toolchain and runtime designed to translate machine learning models from various frameworks into optimized binaries for execution across diverse hardware targets. It provides a unified pipeline to ingest models from PyTorch, TensorFlow, JAX, and ONNX, lowering them into a common intermediate representation for deployment on CPUs, GPUs, and bare-metal embedded systems. The project distinguishes itself through a bytecode virtual machine and a hardware abstraction layer that decouple high-level model logic from specific hardware instruction sets. It supports sophis

    C++compilercudajax
    Ver en GitHub↗3,819
  • nvidia/cuda-samplesAvatar de NVIDIA

    NVIDIA/cuda-samples

    9,319Ver en GitHub↗

    This repository is a collection of reference implementations and programming examples for the CUDA Toolkit. It serves as a GPGPU implementation guide and a parallel computing reference, providing code for using graphics hardware to perform general-purpose calculations and high-performance parallel processing. The project provides specific samples for GPU kernel development and resource management. These include demonstrations of multi-GPU communication, peer-to-peer memory access, and system hardware inspection to coordinate distributed GPU resources. The codebase covers a wide range of capa

    C++cudacuda-driver-apicuda-kernels
    Ver en GitHub↗9,319
Ver las 30 alternativas a Gpu.cpp→

Preguntas frecuentes

¿Qué hace answerdotai/gpu.cpp?

gpu.cpp is a lightweight C++ library for executing low-level general-purpose GPU computation across different hardware vendors and operating systems. It functions as a portable GPU wrapper, kernel orchestrator, and tensor management system using the WebGPU specification to abstract device initialization, buffer transfers, and compute shader dispatching.

¿Cuáles son las características principales de answerdotai/gpu.cpp?

Las características principales de answerdotai/gpu.cpp son: WebGPU Implementations, GPU Hardware Abstraction Layers, Compute Shader Programming, Tensor Lifecycle Management, GPU Compute Frameworks, GPU Resource Management, Compute Shader Dispatchers, Tensor Memory Lifetime Management.

¿Qué alternativas de código abierto existen para answerdotai/gpu.cpp?

Las alternativas de código abierto para answerdotai/gpu.cpp incluyen: overv/vulkantutorial — VulkanTutorial is a comprehensive educational guide and instructional resource for implementing low-level rendering… gpuweb/gpuweb — This project provides a comprehensive toolset for WebGPU, serving as a graphics API wrapper, compute shader framework,… iree-org/iree — IREE is an MLIR-based compiler toolchain and runtime designed to translate machine learning models from various… nvidia/cuda-samples — This repository is a collection of reference implementations and programming examples for the CUDA Toolkit. It serves… gfx-rs/gfx — gfx is a hardware-agnostic graphics API abstraction that translates a unified set of graphics and compute commands… juliagpu/cuda.jl — CUDA.jl provides a programming interface for executing custom kernels and performing parallel array computing directly…