awesome-repositories.com
Blog
awesome-repositories.com

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

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

thrust/thrustArchived

0
View on GitHub↗
5,003 estrellas·760 forks·C++·2 vistas

Thrust

Thrust es una biblioteca de computación heterogénea y una biblioteca de plantillas de C++ que proporciona una colección de plantillas de alto nivel para ejecutar operaciones de datos en paralelo. Funciona como una biblioteca de algoritmos paralelos diseñada para trabajar en diferentes backends de hardware, incluyendo CPUs multinúcleo y hardware de GPU NVIDIA.

El framework utiliza una implementación de solo cabeceras y una interfaz de políticas de programación genérica para abstraer las diferencias entre los modelos de memoria y ejecución de CPU y GPU. Emplea una abstracción de datos basada en iteradores para proporcionar una interfaz uniforme para acceder a elementos a través de la RAM del host y la VRAM del dispositivo.

La biblioteca cubre capacidades de procesamiento paralelo, incluyendo la clasificación de datos en paralelo y el procesamiento de reducción agregada para calcular valores en grandes conjuntos de datos. Estas operaciones se gestionan a través de una biblioteca de programación paralela CUDA para computación de alto rendimiento en hardware GPU.

Features

  • Parallel Algorithms - Provides a comprehensive collection of high-level parallel algorithms for data-parallel operations.
  • Device Backends - Provides a specialized CUDA-based backend to offload data-parallel computations to NVIDIA GPUs.
  • C++ Parallel Programming - Enables high-performance C++ programming for data-parallel operations across heterogeneous hardware.
  • C++ Parallelism Libraries - Functions as a specialized C++ parallelism library offering high-level templates for data-parallel operations.
  • Generic Programming - Utilizes generic programming with template parameters to decouple execution strategies from algorithm implementations.
  • Iterator-Based Abstractions - Employs iterator-based abstractions to provide a uniform interface for accessing host and device memory.
  • Template Libraries - Implemented as a C++ template library to ensure generic behavior across different hardware backends.
  • Heterogeneous Computing Libraries - Acts as a heterogeneous computing library that abstracts the differences between CPU and GPU execution models.
  • GPU-Accelerated Processing - Facilitates GPU-accelerated processing by moving large datasets to parallel hardware for fast computation.
  • Parallel Sorting - Implements high-performance parallel data sorting by leveraging GPU and multicore CPU hardware.
  • Header-Only Libraries - Ships as a header-only template library to enable aggressive compiler inlining and optimization.
  • Parallel Reductions - Provides parallel reduction operations to calculate sums, minimums, or maximums across distributed cores.
  • Compile-Time Type Dispatch - Uses C++ templates for compile-time type dispatch to eliminate runtime overhead in performance-critical paths.
  • CUDA Libraries - Provides a robust set of CUDA-based algorithms and data structures for high-performance GPU computing.
  • Aggregate Reductions - Provides parallel aggregate reduction processing for calculating values across large datasets.
  • Asynchronous Execution - Implements non-blocking execution models to overlap data transfers with kernel execution.
  • Procesamiento paralelo - Biblioteca de programación paralela en C++ para sistemas heterogéneos.
  • GPU Acceleration - Parallel programming library for GPU acceleration.
  • Parallel and High-Performance Computing - C++ parallel programming library for heterogeneous systems.

Historial de estrellas

Gráfico del historial de estrellas de thrust/thrustGráfico del historial de estrellas de thrust/thrust

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

Preguntas frecuentes

¿Qué hace thrust/thrust?

Thrust es una biblioteca de computación heterogénea y una biblioteca de plantillas de C++ que proporciona una colección de plantillas de alto nivel para ejecutar operaciones de datos en paralelo. Funciona como una biblioteca de algoritmos paralelos diseñada para trabajar en diferentes backends de hardware, incluyendo CPUs multinúcleo y hardware de GPU NVIDIA.

¿Cuáles son las características principales de thrust/thrust?

Las características principales de thrust/thrust son: Parallel Algorithms, Device Backends, C++ Parallel Programming, C++ Parallelism Libraries, Generic Programming, Iterator-Based Abstractions, Template Libraries, Heterogeneous Computing Libraries.

¿Qué alternativas de código abierto existen para thrust/thrust?

Las alternativas de código abierto para thrust/thrust incluyen: nvidia/thrust — Thrust is a C++ parallel algorithms library that provides a suite of standard-library-inspired interfaces for… nvidia/tensorrt — TensorRT is a deep learning inference engine and software development kit designed to optimize and deploy neural… dask/dask — Dask is a parallel computing framework and distributed task scheduler designed to scale Python data science workflows… oneapi-src/onetbb — oneTBB is a C++ parallelism library and framework designed to add multi-core parallelism to applications. It provides… microsoft/stl — This project is a C++ Standard Library implementation that provides the foundational classes and functions required by… nvidia/isaac-gr00t.

Alternativas open-source a Thrust

Proyectos open-source similares, clasificados según cuántas características comparten con Thrust.
  • nvidia/thrustAvatar de NVIDIA

    NVIDIA/thrust

    5,003Ver en GitHub↗

    Thrust is a C++ parallel algorithms library that provides a suite of standard-library-inspired interfaces for execution on multi-core and accelerator hardware. It serves as a CUDA-accelerated data library and a generic parallel programming interface designed to enable high-performance data processing across GPUs and CPUs. The project implements a portable abstraction layer that allows for heterogeneous computing workflows, enabling the same core algorithm logic to run on different hardware accelerators. This is achieved through a generic programming policy design and a backend-agnostic execut

    C++algorithmscppcpp11
    Ver en GitHub↗5,003
  • nvidia/tensorrtAvatar de NVIDIA

    NVIDIA/TensorRT

    13,076Ver en GitHub↗

    TensorRT is a deep learning inference engine and software development kit designed to optimize and deploy neural networks for high-performance execution on NVIDIA GPUs. It functions as a GPU acceleration framework that reduces latency and increases throughput for trained models during production deployment. The toolkit imports models from the Open Neural Network Exchange format and transforms them into optimized engines. It utilizes graph-based model optimization, layer-fusion kernel generation, and precision-based quantization to convert floating point weights into lower precision formats.

    C++deep-learninggpu-accelerationinference
    Ver en GitHub↗13,076
  • dask/daskAvatar de dask

    dask/dask

    13,746Ver en GitHub↗

    Dask is a parallel computing framework and distributed task scheduler designed to scale Python data science workflows from single machines to large clusters. It functions as a cluster resource manager that orchestrates computational logic by representing tasks and their dependencies as directed acyclic graphs. This architecture allows the system to automate the distribution of workloads across available hardware while managing complex execution requirements. The project distinguishes itself through a lazy evaluation engine that defers data operations until they are explicitly requested, enabl

    Pythondasknumpypandas
    Ver en GitHub↗13,746
  • oneapi-src/onetbbAvatar de oneapi-src

    oneapi-src/oneTBB

    6,683Ver en GitHub↗

    oneTBB is a C++ parallelism library and framework designed to add multi-core parallelism to applications. It provides a task-based parallelism model that maps logical computational tasks to available hardware cores to eliminate the need for manual thread management. The library functions as a multi-core scaling tool, utilizing generic templates to scale data-parallel operations across processors for portable performance. It employs a task-based framework to ensure computational workloads are distributed across hardware resources. The project covers shared memory parallelism, multi-core task

    C++
    Ver en GitHub↗6,683
Ver las 30 alternativas a Thrust→