awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
thrust avatar

thrust/thrustArchived

0
View on GitHub↗
5,003 Stars·760 Forks·C++·2 Aufrufe

Thrust

Thrust ist eine Bibliothek für heterogenes Computing und eine C++ Template-Bibliothek, die eine Sammlung hochsprachlicher Templates für die Ausführung datenparalleler Operationen bereitstellt. Sie fungiert als Bibliothek für parallele Algorithmen, die über verschiedene Hardware-Backends hinweg funktioniert, einschließlich Multicore-CPUs und NVIDIA GPU-Hardware.

Das Framework nutzt eine Header-only-Implementierung und eine generische Programmier-Schnittstelle, um die Unterschiede zwischen CPU- und GPU-Speicher- sowie Ausführungsmodellen zu abstrahieren. Es verwendet eine Iterator-basierte Datenabstraktion, um eine einheitliche Schnittstelle für den Zugriff auf Elemente im Host-RAM und Geräte-VRAM bereitzustellen.

Die Bibliothek deckt parallele Verarbeitungsfähigkeiten ab, einschließlich paralleler Datensortierung und aggregierter Reduktionsverarbeitung zur Berechnung von Werten über große Datensätze hinweg. Diese Operationen werden durch eine CUDA-Bibliothek für parallele Programmierung für das Hochleistungsrechnen auf GPU-Hardware verwaltet.

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.
  • Parallele Verarbeitung - C++-Bibliothek für parallele Programmierung in heterogenen Systemen.
  • GPU Acceleration - Parallel programming library for GPU acceleration.
  • Parallel and High-Performance Computing - C++ parallel programming library for heterogeneous systems.

Star-Verlauf

Star-Verlauf für thrust/thrustStar-Verlauf für thrust/thrust

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Häufig gestellte Fragen

Was macht thrust/thrust?

Thrust ist eine Bibliothek für heterogenes Computing und eine C++ Template-Bibliothek, die eine Sammlung hochsprachlicher Templates für die Ausführung datenparalleler Operationen bereitstellt. Sie fungiert als Bibliothek für parallele Algorithmen, die über verschiedene Hardware-Backends hinweg funktioniert, einschließlich Multicore-CPUs und NVIDIA GPU-Hardware.

Was sind die Hauptfunktionen von thrust/thrust?

Die Hauptfunktionen von thrust/thrust sind: Parallel Algorithms, Device Backends, C++ Parallel Programming, C++ Parallelism Libraries, Generic Programming, Iterator-Based Abstractions, Template Libraries, Heterogeneous Computing Libraries.

Welche Open-Source-Alternativen gibt es zu thrust/thrust?

Open-Source-Alternativen zu thrust/thrust sind unter anderem: 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.

Open-Source-Alternativen zu Thrust

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Thrust.
  • nvidia/thrustAvatar von NVIDIA

    NVIDIA/thrust

    5,003Auf GitHub ansehen↗

    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
    Auf GitHub ansehen↗5,003
  • nvidia/tensorrtAvatar von NVIDIA

    NVIDIA/TensorRT

    13,076Auf GitHub ansehen↗

    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
    Auf GitHub ansehen↗13,076
  • dask/daskAvatar von dask

    dask/dask

    13,746Auf GitHub ansehen↗

    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
    Auf GitHub ansehen↗13,746
  • oneapi-src/onetbbAvatar von oneapi-src

    oneapi-src/oneTBB

    6,683Auf GitHub ansehen↗

    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++
    Auf GitHub ansehen↗6,683
Alle 30 Alternativen zu Thrust anzeigen→