11 个仓库
The act of writing and transpiling compute tasks to run on graphics hardware.
Distinct from GPU Kernel: Existing candidates focus on tile-based models, differentiators, or memory inspectors rather than the general capability of programming GPU kernels.
Explore 11 awesome GitHub repositories matching programming languages & runtimes · GPU Kernel Programming. Refine with filters or upvote what's useful.
AISystem is a comprehensive AI full-stack infrastructure project covering the entire pipeline from AI chip architecture to high-level training frameworks. It encompasses the development of AI compiler frameworks, inference engines, and distributed training orchestrators designed to coordinate workloads across a heterogeneous compute stack of CPUs, GPUs, and NPUs. The project focuses on the deep integration of software and hardware, employing software-hardware co-design to align tensor layouts with physical memory structures. It provides specialized capabilities for accelerating Transformer mo
Writes kernels in C/C++ to execute computationally intensive tasks across a massive array of GPU threads.
GPU-Puzzles is an interactive learning environment and tutorial designed for mastering CUDA GPU kernel development. It serves as an educational tool and lab where users solve coding puzzles to understand how to map high-level logic to low-level GPU hardware instructions. The platform focuses on teaching parallel computing concepts and GPU architecture. Users practice developing parallel algorithms and managing GPU memory through a series of hands-on challenges. The environment utilizes a bridge between Python and CUDA to execute kernels and provide real-time feedback by validating outputs ag
Provides a set of programming challenges designed to teach the mapping of high-level code to GPU hardware.
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
Serves as a primary reference for writing and executing parallel compute kernels on GPU hardware.
本项目是一系列参考实现和基准测试,展示了 Vulkan 图形和计算 API 的使用。它提供了一套跨平台的示例和 GPU 编程模式,专为高性能渲染和硬件加速任务而设计。 该仓库包含一套用于衡量不同硬件环境下 API 行为的性能基准测试。它具有模块化架构,将渲染示例组织为独立单元,并配有用于批量执行示例序列的命令行工具。 该项目涵盖了多个技术领域,包括直接 GPU 内存管理、用于识别渲染瓶颈的实时性能分析,以及无需物理显示器即可捕获帧缓冲区的无头(headless)计算流水线。
Offers practical code demonstrations for writing GPU kernels and compute tasks via low-level interfaces.
rust-cuda 是一个 GPU 编程框架和设备编译器,允许使用 Rust 在 NVIDIA 硬件上开发和执行高性能内核。它提供了一个驱动程序包装器来管理设备内存分配和内核启动,有效地作为一个无需依赖 C++ 即可编写 GPU 计算逻辑的系统。 该项目包含一个计算库,其中包含用于神经网络加速和硬件加速光线追踪的硬件优化原语。它利用一个编译工具链,将源代码转换为用于在图形处理器上执行的低级中间表示。 该框架涵盖了设备资源管理、内核开发以及高精度整数运算的模拟。它还支持设备端随机数生成和特定目标的计算优化。 提供预配置的容器镜像,以简化跨不同硬件架构的编译器工具链和开发环境的配置。
Provides a framework for writing and executing high-performance GPU kernels using Rust.
该项目是一个全面的教育资源和课程,专注于完整机器学习软件和硬件栈的设计与实现。它作为架构机器学习系统的技术参考,涵盖从低级编程接口到大规模部署基础设施的各个方面。 该项目提供关于多个专业领域的教学指导,包括通过中间表示和图优化开发 AI 编译器。它涵盖了跨 GPU 集群进行分布式训练所需的架构模式,以及为优化专用芯片上的工作负载而进行的硬件加速器编程。 该资源还详细介绍了生产环境的模型服务框架实现以及强化学习流水线的构建。其范围扩展到 ML 系统的核心组件,例如自动微分、张量抽象和 GPU 资源的编排。
Teaches the implementation of high-performance kernels for specialized AI accelerators and NPUs.
HIP 是一种 C++ GPU 内核语言和跨平台运行时,专为编写可移植的高性能计算应用而设计。它提供了一个编程接口,允许单个源代码库在 AMD 和 NVIDIA GPU 架构上执行。 该项目作为兼容层,实现了现有 CUDA 源代码的转换和迁移,以在 AMD 硬件上运行。这是通过镜像 CUDA 的语法映射和编译过程中的源到源翻译来实现的。 该工具包涵盖了更广泛的跨平台 GPGPU 开发领域,包括异构计算优化和可移植内核的创建。它利用运行时抽象将统一 API 调用映射到特定于供应商的驱动程序库,以进行内存和内核管理。
Provides a C++ GPU kernel language for writing parallel compute kernels that target multiple hardware backends.
warp-ctc 是一个高性能库,用于计算连接时序分类(CTC)损失,以训练序列到序列(seq2seq)深度学习模型。它通过对数空间计算提供数值稳定性层,防止长序列概率计算过程中的下溢和精度误差。 该库利用硬件加速内核在 CPU 和 GPU 架构上并行计算损失,通过优化 CTC 算法的动态规划步骤来提高训练吞吐量。 这些功能支持语音识别、手写体光学字符识别(OCR)以及通用序列到序列映射模型的训练。该项目还包含在 TensorFlow 中计算损失和进行对齐无关训练的集成方案。
Ships hardware-accelerated kernels that compute CTC loss in parallel across CPU and GPU architectures.
gpu.cpp 是一个轻量级的 C++ 库,用于跨不同硬件供应商和操作系统执行底层通用 GPU 计算。它作为一个便携式 GPU 包装器、内核编排器和张量管理系统,利用 WebGPU 规范来抽象设备初始化、缓冲区传输和计算着色器调度。 该库提供了一个框架,用于从着色器代码定义计算内核,并管理其异步调度与同步。它支持跨平台计算着色器的执行,并通过标准化的图形处理器规范编排 GPU 任务。 该系统处理 GPU 内存的全生命周期,包括多维张量的分配、通过暂存缓冲区在主机与设备之间的双向数据移动,以及防止内存泄漏的资源跟踪。它还支持用于创建非所有权内存段视图的张量切片,并包含系统消息日志记录和严重性过滤工具。
Provides low-level primitives for defining and dispatching compute kernels with custom shader code.
Zen-C is a multi-target systems language and source-to-source compiler that translates high-level logic into human-readable GNU C or C11 code. It functions as a JIT-enabled programming language with an in-process compiler for real-time interactive code evaluation and testing. The project serves as a CUDA GPU kernel generator, mapping specialized syntax to CUDA C++ using device attributes to target graphics hardware. It acts as an interoperability layer capable of emitting compatible code for C++, Objective-C, and Lisp to bridge native system frameworks and libraries. The language includes an
Run compute tasks on graphics hardware by transpiling to specialized syntax and device attributes.
cuda-python provides low-level Python bindings for the CUDA Driver and Runtime APIs. It serves as a programmatic wrapper for controlling device memory, managing hardware toolchains, and orchestrating execution graphs on NVIDIA GPUs, allowing for the compilation and launching of parallel kernels directly from Python. The project enables the development of SIMT kernels and the execution of mathematical algorithms on device memory. It integrates pre-compiled bytecode as custom operators and interfaces with accelerated device libraries to access low-level hardware functions without leaving the la
Supports the development and compilation of SIMT kernels for high-performance workloads on NVIDIA hardware.