awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
NVIDIA avatar

NVIDIA/thrustArchived

0
View on GitHub↗
5,003 星标·760 分支·C++·3 次浏览

Thrust

Thrust 是一个 C++ 并行算法库,提供了一套受标准库启发的接口,用于在多核和加速器硬件上执行。它作为一个 CUDA 加速数据库和通用并行编程接口,旨在实现跨 GPU 和 CPU 的高性能数据处理。

该项目实现了一个便携式抽象层,允许异构计算工作流,使相同的核心算法逻辑能够在不同的硬件加速器上运行。这是通过通用编程策略设计和后端无关的执行模型实现的,该模型将高级函数调用映射到并行硬件。

该库涵盖了广泛的高性能计算能力,包括并行数据操作、数值归约和设备内存管理。它提供了专门的工具,用于在主机系统内存和离散设备内存之间传输数据,以促进排序和搜索等大规模操作。

Features

  • C++ Parallelism Libraries - Provides a comprehensive library of parallel primitives and data-parallel templates for high-performance GPU programming in C++.
  • Kernel Dispatchers - Maps high-level functional calls to parallel grids of threads on GPU hardware accelerators.
  • Cross-Platform Compute Abstractions - Enables a heterogeneous computing workflow where the same core algorithm logic runs on different hardware accelerators.
  • Host-to-Device Data Transfers - Provides specialized tools for moving data between host system memory and parallel device memory.
  • CPU-GPU Backend Switching Abstractions - Provides abstractions that allow algorithms to switch execution between CPU and GPU backends through a unified interface.
  • Device Memory Abstraction Layers - Offers abstraction layers to manage data transfers between system RAM and GPU memory for fast parallel processing.
  • Iterator-Based Abstractions - Uses specialized iterator classes to provide a unified interface for varying memory layouts across different hardware.
  • Policy-Based Design - Utilizes policy-based design to configure hardware-specific execution and memory models at compile time.
  • Parallel Algorithms - Provides fundamental data-parallel operations such as sorting and reduction for high-performance computing.
  • Standard C++ Parallel Algorithm Offloads - Provides parallel versions of C++ Standard Template Library (STL) algorithms optimized for device-side execution.
  • Parallel Programming Interfaces - Implements a portable abstraction layer for parallel reductions and data transformations across different hardware accelerators.
  • CUDA-Accelerated Libraries - Provides a suite of tools for managing memory transfers and executing computations specifically on NVIDIA CUDA hardware.
  • Accelerator-Based Data Parallelism - Implements large-scale parallel operations like sorting and searching across massive datasets using hardware accelerators.
  • Parallel Reductions - Provides parallel reduction operations to calculate aggregate values like sums and maximums across many processor cores.
  • Device-Specific Memory Allocators - Implements customizable memory allocators to decouple memory management from algorithm logic for different device spaces.
  • Compile-Time Metaprogramming - Employs compile-time metaprogramming to resolve hardware-specific types and dispatching logic without runtime overhead.

Star 历史

nvidia/thrust 的 Star 历史图表nvidia/thrust 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Thrust 的开源替代方案

相似的开源项目,按与 Thrust 的功能重合度排序。
  • thrust/thrustthrust 的头像

    thrust/thrust

    5,003在 GitHub 上查看↗

    Thrust is a heterogeneous computing library and C++ template library that provides a collection of high-level templates for executing data-parallel operations. It functions as a parallel algorithms library designed to work across different hardware backends, including multicore CPUs and NVIDIA GPU hardware. The framework utilizes a header-only implementation and a generic-programming policy interface to abstract the differences between CPU and GPU memory and execution models. It employs an iterator-based data abstraction to provide a uniform interface for accessing elements across host RAM an

    C++
    在 GitHub 上查看↗5,003
  • nvidia/isaac-gr00tNVIDIA 的头像

    NVIDIA/Isaac-GR00T

    6,222在 GitHub 上查看↗
    Jupyter Notebook
    在 GitHub 上查看↗6,222
  • arrayfire/arrayfirearrayfire 的头像

    arrayfire/arrayfire

    4,888在 GitHub 上查看↗

    ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance numerical computing. It serves as a GPU numerical computing library and parallel signal processing toolkit that abstracts hardware backends, allowing the same codebase to execute across various GPU architectures and CPUs. The project distinguishes itself through a JIT engine that uses expression compilation to fuse operations and minimize memory overhead. It employs a deferred execution graph to optimize computation chains and provides interoperability primitives to share data and e

    C++arrayfirecc-plus-plus
    在 GitHub 上查看↗4,888
  • boostorg/boostboostorg 的头像

    boostorg/boost

    8,493在 GitHub 上查看↗

    Boost is a collection of portable, high-performance source libraries that extend the C++ standard library. It provides a wide range of reusable components, data structures, and algorithms designed to add capabilities to the base language across different platforms. The project is distinguished by its extensive focus on compile-time template metaprogramming and generic programming. It implements advanced architectural patterns such as policy-based design, concept-based type validation, and the use of SFINAE for conditional template resolution to minimize runtime overhead. The library covers a

    HTML
    在 GitHub 上查看↗8,493
查看 Thrust 的所有 30 个替代方案→

常见问题解答

nvidia/thrust 是做什么的?

Thrust 是一个 C++ 并行算法库,提供了一套受标准库启发的接口,用于在多核和加速器硬件上执行。它作为一个 CUDA 加速数据库和通用并行编程接口,旨在实现跨 GPU 和 CPU 的高性能数据处理。

nvidia/thrust 的主要功能有哪些?

nvidia/thrust 的主要功能包括:C++ Parallelism Libraries, Kernel Dispatchers, Cross-Platform Compute Abstractions, Host-to-Device Data Transfers, CPU-GPU Backend Switching Abstractions, Device Memory Abstraction Layers, Iterator-Based Abstractions, Policy-Based Design。

nvidia/thrust 有哪些开源替代品?

nvidia/thrust 的开源替代品包括: thrust/thrust — Thrust is a heterogeneous computing library and C++ template library that provides a collection of high-level… nvidia/isaac-gr00t. arrayfire/arrayfire — ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance… boostorg/boost — Boost is a collection of portable, high-performance source libraries that extend the C++ standard library. It provides… taskflow/taskflow — Taskflow is a C++ task-parallel framework designed to build high-performance parallel workflows and complex dependency… juliagpu/cuda.jl — CUDA.jl provides a programming interface for executing custom kernels and performing parallel array computing directly…