2 Repos
Algorithms for organizing data elements into a specific order using parallel hardware acceleration.
Distinct from Parallel Processing: Specializes parallel processing specifically for sorting operations.
Explore 2 awesome GitHub repositories matching data & databases · Parallel Sorting. Refine with filters or upvote what's useful.
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.
Implements high-performance parallel data sorting by leveraging GPU and multicore CPU hardware.
Dieses Projekt ist ein High-Performance-Framework für die Verarbeitung tabellarischer Daten in R, das für die effiziente und schnelle Handhabung massiver Datensätze entwickelt wurde. Es bietet eine erweiterte Datenstruktur, die Referenzsemantik und In-Place-Modifikation nutzt, um komplexe Transformationen ohne den Overhead unnötiger Objektkopien durchzuführen. Die Bibliothek zeichnet sich durch ihre Low-Level-Architekturoptimierungen aus, einschließlich Multi-Threaded-Parallelverarbeitung, Radix-basiertem Sortieren und Memory-Mapped-File-Parsing. Durch das Auslagern kritischer Datenmanipulations- und Aggregationsroutinen in kompilierten C-Code ermöglicht sie die schnelle Ausführung von Aufgaben, die ansonsten rechenintensiv wären. Ihre Core-Engine unterstützt fortgeschrittene relationale Operationen wie Non-Equi-, Rolling- und Overlapping-Interval-Joins sowie automatische sekundäre Indizierung zur Beschleunigung wiederholter Datenzugriffe. Über ihre primären Verarbeitungsfunktionen hinaus bietet das Projekt eine umfassende Suite an Tools für das Datenlebenszyklus-Management. Dies umfasst Hochgeschwindigkeits-Ingestion- und Serialisierungs-Utilities mit automatischer Typenerkennung sowie spezialisierte Unterstützung für Zeitreihenanalysen und mehrdimensionale Aggregation. Das Framework ist auf Skalierbarkeit ausgelegt und ermöglicht Benutzern die Durchführung komplexer Gruppierungs-, Filter- und Reshaping-Operationen auf Datensätzen mit Milliarden von Zeilen bei gleichzeitiger Systemstabilität und Performance.
Orders datasets using multi-threaded radix sort algorithms for high-performance data alignment.