8 repository-uri
Executes multiple data operations in a single instruction cycle to maximize throughput for high-bandwidth multimedia processing tasks.
Distinct from SIMD-Accelerated Arithmetic: Distinct from SIMD-Accelerated Arithmetic: focuses on the broader application of SIMD for data parallelism in multimedia rather than just arithmetic operations.
Explore 8 awesome GitHub repositories matching data & databases · SIMD-Based Data Parallelism. 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
Applies a single instruction across multiple data elements simultaneously to accelerate vector operations.
This project serves as an educational resource for learning and implementing low-level assembly language optimizations. It provides a structured guide for developers to master hardware-specific instructions and manual performance tuning, focusing on the translation of high-level code into efficient machine-level operations for resource-constrained environments. The materials emphasize techniques for maximizing computational throughput in multimedia processing. By covering instruction-level parallelism, register management, and data parallelism, the project enables the development of software
Executes multiple data operations in a single instruction cycle to maximize throughput for high-bandwidth multimedia processing tasks.
xxHash is a high-performance, non-cryptographic hash library designed for rapid checksum generation and data integrity verification. It functions as an incremental hashing engine, allowing for the processing of large or streaming data inputs by maintaining a persistent internal state across sequential chunks. The library is engineered as a computational framework that maximizes throughput by utilizing wide CPU registers and branchless instruction pipelining. It achieves high-speed performance by aligning data access with CPU cache lines and employing multi-stage mixing functions that ensure c
Processes data in parallel using wide CPU registers to maximize throughput during large memory block hashing operations.
BLAKE3 este o implementare de înaltă performanță a algoritmului de hashing criptografic BLAKE3, utilizat pentru calcularea digest-urilor de date securizate și a amprentelor digitale. Funcționează ca un instrument de hashing criptografic paralel care distribuie sarcinile de lucru pe mai multe fire de execuție ale procesorului pentru a procesa rapid seturi de date mari. Proiectul oferă instrumente specializate pentru hashing cu cheie și generarea de coduri de autentificare a mesajelor. Include, de asemenea, funcționalitate pentru derivarea cheilor criptografice, permițând crearea de sub-chei secrete unice dintr-o cheie master și șiruri de context. Implementarea suportă verificarea integrității datelor prin calculul hash paralel și streaming-ul verificat al datelor. Aceste capabilități sunt oferite ca o bibliotecă cross-language pentru medii Rust și C și includ o interfață de linie de comandă pentru calcularea digest-urilor fișierelor sau a input-ului standard.
Maximizes CPU throughput by processing multiple data blocks simultaneously using SIMD lanes.
Highway este o bibliotecă C++ portabilă și un strat de abstractizare hardware conceput pentru scrierea codului de tip SIMD (Single Instruction Multiple Data). Oferă o interfață unificată care mapează logica de procesare paralelă a datelor către diverse seturi de instrucțiuni CPU, permițând dezvoltarea de software de înaltă performanță care rulează pe diferite arhitecturi de procesoare fără a necesita assembly specific arhitecturii. Proiectul dispune de un dispecer dinamic de instrucțiuni care selectează cel mai eficient set de instrucțiuni CPU la runtime, pe baza hardware-ului detectat. De asemenea, suportă specializarea statică a țintei și mecanisme extensibile pentru adăugarea de noi ținte hardware sau operații SIMD personalizate. Biblioteca acoperă o gamă largă de operații vectoriale, inclusiv aritmetică pe elemente, reducerea benzilor, shuffling și execuție condiționată mascată. Include o bibliotecă matematică vectorizată, un manager de memorie pentru alocare aliniată și operații de load-store mascate, precum și primitive pentru criptografie accelerată hardware. Sunt oferite instrumente pentru compilarea și validarea automată a instrucțiunilor accelerate hardware pe mai multe arhitecturi de procesoare.
Provides a portable interface to write data-parallel code that maps to hardware-accelerated SIMD instructions.
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Executes parallel arithmetic and logical operations on hardware-backed vectors to maximize computational throughput.
Rack este un emulator de sintetizator modular Eurorack virtual și un SDK de sinteză modulară. Oferă un mediu digital pentru crearea și rutarea semnalelor muzicale electronice folosind module virtuale, oscilatoare și filtre, simulând comportamentul hardware-ului analogic prin rutarea semnalului bazată pe voltaj. Sistemul funcționează ca un convertor MIDI și CV, traducând semnalele între software și hardware-ul extern, și poate opera ca un plugin VST sau instrument standard în industrie în cadrul stațiilor de lucru audio digitale (DAW). De asemenea, acționează ca un host de plugin-uri VST, încorporând instrumente și efecte virtuale externe pentru a extinde instrumentele de procesare a sunetului disponibile. Platforma include o gamă cuprinzătoare de capabilități de procesare audio, inclusiv sinteza prin modelare fizică, procesarea spectrală și efecte bazate pe timp. Oferă instrumente pentru generarea voltajului de control, secvențierea notelor și procesarea semnalului polifonic, alături de un kit de dezvoltare pentru construirea de module audio personalizate cu generare de interfață bazată pe SVG. O interfață în linie de comandă este disponibilă pentru lansarea aplicațiilor, inițializarea proiectelor și automatizarea producției de fișiere sursă din grafică vectorială.
Utilizes SIMD vector instructions to process multiple audio channels in parallel for CPU efficiency.
perf-ninja is a collection of educational resources and curricula focused on CPU architecture, memory hierarchies, SIMD programming, and low-level performance engineering. It provides instructional material and practical labs for identifying and fixing CPU bottlenecks, such as cache misses and branch mispredictions. The project differentiates itself through specialized training in hardware-level optimizations, including the use of compiler intrinsics for SIMD vectorization and the implementation of branchless predicate execution to eliminate pipeline stalls. It also covers advanced binary-lev
Provides guidance on replacing scalar operations with hardware-specific vector instructions to process multiple data elements simultaneously.