6 repository-uri
Utilities for transforming standard sequential loops into parallel versions for concurrent execution.
Distinct from Sequential Iterators: Distinct from Sequential Iterators: focuses on the transformation of loop constructs into parallel versions.
Explore 6 awesome GitHub repositories matching data & databases · Parallel Loop Transformers. Refine with filters or upvote what's useful.
Genesis is an embodied AI simulation platform and parallelized robotics simulator designed for training general-purpose robotic agents. It integrates a physics engine for robotics that calculates collisions and movements for rigid bodies, soft tissues, and fluids, alongside a photorealistic 3D rendering engine. The platform features a domain randomization framework to vary environment parameters across parallel simulations, aiding in sim-to-real transfer. It supports the integration of real-world captured light fields and Gaussian splatting to provide photorealistic backgrounds within simulat
Automatically distributes top-level execution loops across available hardware threads to improve performance.
Rayon is a data parallelism library for Rust that provides a framework for converting sequential computations into parallel operations. It enables the transformation of standard data structures and loops into parallel iterators, allowing workloads to be distributed across multiple processor cores. By utilizing a work-stealing scheduler, the library dynamically balances tasks to maximize throughput and minimize execution time. The library distinguishes itself through its focus on safe, scoped task synchronization, which ensures that all spawned operations complete before a scope exits to preve
Transforms standard sequential loops into parallel versions to process collection elements concurrently.
TileLang is a Python-embedded domain-specific language compiler that JIT-compiles and autotunes GPU kernels. It uses a tile-based DSL, automatic software pipelining, and parallel autotuning to generate optimized GPU kernels at runtime. It supports tensor core operations with Pythonic syntax, automatic memory management, and thread mapping. The compiler searches over tile sizes, thread counts, and scheduling policies, compiling and benchmarking candidates in parallel to find the fastest kernel. It also caches compiled binaries and tuning results to disk for reuse across sessions. TileLang inc
Enforces restrictions on parallel loops over local fragment buffers to ensure correctness in GPU kernels.
Async este o bibliotecă Swift care oferă un wrapper pentru Grand Central Dispatch pentru a simplifica gestionarea sarcinilor și cozilor asincrone. Funcționează ca un scheduler de sarcini pentru execuția, temporizarea și orchestrarea blocurilor de cod. Proiectul include un chainer de sarcini pentru a secvenția operațiunile pe diferite thread-uri fără structuri de callback imbricate și un wrapper de buclă concurentă care distribuie iterațiile pe mai multe thread-uri. De asemenea, dispune de un sistem de anulare bazat pe token-uri pentru a urmări și elimina operațiunile în așteptare din coada de execuție înainte ca acestea să ruleze. Biblioteca acoperă gestionarea concurenței prin coordonarea grupurilor asincrone și sincronizarea mai multor sarcini pentru a declanșa acțiuni la finalizarea colectivă.
Transforms standard sequential loops into parallel versions for concurrent execution across multiple threads.
Joblib este o suită de utilitare pentru paralelizarea sarcinilor de calcul și optimizarea stocării seturilor de date numerice mari și a rezultatelor funcțiilor. Acesta funcționează ca o bibliotecă de calcul paralel și un wrapper de multiprocesare care distribuie execuția funcțiilor pe mai multe nuclee CPU pentru a accelera sarcinile independente și buclele de calcul. Proiectul oferă un framework de caching pe disc care persistă output-urile funcțiilor costisitoare pe sistemul de fișiere, reevaluându-le doar atunci când argumentele de intrare se modifică. Se specializează în continuare în serializarea matricelor numerice mari, utilizând compresia eficientă și maparea memoriei pentru a optimiza stocarea și recuperarea seturilor de date masive. Toolkit-ul include capabilități pentru maparea funcțiilor paralele și utilizarea backend-urilor de execuție pluggable pentru a controla modul în care sarcinile sunt distribuite pe hardware-ul disponibil. Stratul său de stocare acoperă persistența obiectelor complexe și compresia transparentă pentru datele serializate.
Enables the transformation of standard sequential loops into parallel versions for execution across multiple CPU cores.
Acest proiect este un framework cuprinzător pentru dezvoltarea aplicațiilor iOS, axat pe construirea de aplicații mobile care dispun de componente UI personalizate, gestionarea sarcinilor asincrone și persistența datelor locale. Servește drept bază de cunoștințe tehnice pentru ingineria software, oferind instrumente pentru a organiza și publica analize arhitecturale și note în format Markdown. Framework-ul se distinge printr-un strat de stocare robust bazat pe documente, care utilizează înregistrări formatate BSON pentru a efectua operațiuni CRUD într-un magazin de documente NoSQL. Oferă capabilități extinse de integrare a sistemului, inclusiv comunicarea specializată prin extensii de aplicație, trecerea mesajelor între sandbox-uri și prezentarea nativă a share sheet-ului, permițând o interacțiune fluidă între aplicația gazdă și serviciile la nivel de sistem. Proiectul acoperă o suprafață largă de capabilități, inclusiv gestionarea avansată a concurenței cu sincronizare thread-safe, descărcarea randării UI în fundal pentru a menține responsivitatea și suport cuprinzător pentru internaționalizare. Include, de asemenea, utilitare axate pe dezvoltatori pentru generarea de tipuri statice, maparea automată a resurselor și construcția de prototipuri interactive, alături de instrumente specializate pentru monitorizarea beacon-urilor geografice și generarea adaptivă de grafice.
Executes loop bodies in parallel across multiple threads to improve performance on large collections.