15 dépôts
Techniques that improve computational performance by distributing tasks across multiple CPU cores or utilizing vector instructions.
Explore 15 awesome GitHub repositories matching software engineering & architecture · Parallel Processing. Refine with filters or upvote what's useful.
This project is a general-purpose command-line filter that provides an interactive interface for processing standard input streams. It enables real-time fuzzy searching, data selection, and transformation, allowing users to navigate complex information or file systems directly within their terminal. By utilizing a pipe-oriented architecture, it integrates into existing shell pipelines and workflows to facilitate efficient data exploration. What distinguishes this tool is its highly extensible, event-driven design that allows for deep integration with external processes. It supports asynchrono
Work queues distribute search tasks across multiple CPU cores to maximize computational throughput.
Tesseract is a neural network-based optical character recognition engine designed to convert scanned images and digital documents into machine-readable, searchable text. It functions as both a command-line utility for automating large-scale digitization workflows and a cross-platform library that can be embedded into desktop, mobile, or server-side applications. By utilizing long short-term memory networks, the engine provides robust text extraction across more than one hundred languages and dozens of scripts. The project distinguishes itself through a sophisticated document layout analysis f
Distribute recognition workloads across multiple CPU cores using multi-threading to accelerate large-scale document processing tasks.
This project is a comprehensive, curated directory of high-quality libraries, tools, and educational resources for C and C++ development. It serves as an ecosystem discovery index, helping developers navigate the vast landscape of third-party components, frameworks, and technical documentation available for the language. The collection is distinguished by its focus on high-performance systems programming and technical mastery. It provides deep coverage of specialized domains including SIMD-accelerated data processing, compile-time template metaprogramming, and asynchronous event-driven archit
Highlights performance-critical libraries that leverage processor-level instructions to execute parallel operations on data.
ripgrep is a command-line utility designed for searching through large file trees and source code repositories. It functions as a recursive text processor that traverses directories to locate and display matching patterns, serving as a high-performance alternative to traditional search tools. The tool distinguishes itself through a focus on execution speed and intelligent file handling. It utilizes a finite automata-based regular expression engine to ensure linear time complexity and employs hardware-level acceleration for literal byte sequence scanning. By integrating with version control sy
Distributes search workloads across multiple CPU cores to maximize throughput during intensive text processing tasks.
This is a Python facial recognition library designed to detect, encode, and identify human faces in images and video. It functions as a biometric identification tool that converts facial features into numerical encodings to compare and match identities. The library provides a computer vision command line interface for batch processing face detection and recognition tasks across image directories. It also supports a GPU accelerated vision API that utilizes CUDA and NVIDIA hardware to increase the speed of facial analysis and identification. Its capabilities cover human face detection and faci
Distributes image processing tasks across multiple CPU cores or GPU hardware to increase total throughput.
This project is a Chinese text segmentation library and tokenizer designed to split Chinese sentences into individual words. It serves as a natural language processing tool for splitting characters into words, tagging parts of speech, and extracting keywords using statistical analysis. The library distinguishes itself through support for custom dictionary configuration and vocabulary file management, allowing users to override default segmentation rules for domain-specific accuracy. It also includes a TF-IDF keyword extractor to identify significant words and core topics within documents. Th
Implements multi-process parallel execution to distribute heavy text segmentation workloads across multiple CPU cores.
Facefusion is a modular framework designed for automated image and video manipulation, specializing in tasks such as face swapping, enhancement, and restoration. It functions as a computer vision processing pipeline that chains independent machine learning modules to perform complex transformations, including facial animation, age modification, and lip synchronization. The system is built to handle both real-time interactive feeds and large-scale batch processing tasks. The platform distinguishes itself through a highly extensible architecture that supports custom processing modules and inter
Balances processing speed and system resources by adjusting concurrent execution threads.
ImageMagick is a comprehensive software suite for the creation, editing, composition, and conversion of digital images. It functions as both a command-line utility for batch processing and automation, and as a programming library that allows developers to integrate advanced image manipulation capabilities into external applications. The project is distinguished by its modular architecture, which supports hundreds of image formats through a pluggable coder system and external delegate libraries. It is designed for high-performance environments, utilizing memory-mapped pixel caching, stream-ori
Supports large-scale processing by offloading storage to remote servers and parallelizing tasks across hardware.
YAPF est un formateur de code Python et un outil de conformité de style. Il fonctionne comme un reformateur basé sur AST qui utilise des arbres de syntaxe concrets pour assurer la cohérence structurelle et une présentation visuelle uniforme à travers les fichiers sources. Le moteur utilise un optimiseur de mise en page basé sur des pénalités pour déterminer les meilleurs sauts de ligne en calculant des coûts numériques pour différents choix de formatage. Il emploie un processeur de code multi-processus pour distribuer le formatage de plusieurs fichiers à travers plusieurs cœurs de CPU. L'outil couvre le reformatage du code source par des modifications de fichiers sur place, l'analyse des différences et le traitement de fragments de code partiels. Il inclut un système de configuration basé sur des règles pour gérer les préréglages de style, les règles de mise en page et les paramètres au niveau du projet. Les capacités d'intégration incluent la vérification de la conformité au style pour les pipelines d'intégration continue, l'automatisation des hooks git et la fonctionnalité de formatage à la sauvegarde basée sur l'éditeur.
Improves performance by distributing the formatting of multiple Python files across several CPU cores.
Numba est un compilateur juste-à-temps (JIT) qui traduit des fonctions Python de haut niveau en code machine optimisé lors de l'exécution. En tirant parti de l'infrastructure de compilation LLVM, il fournit un framework pour accélérer le traitement des données numériques et les calculs mathématiques, permettant des niveaux de performance comparables aux langages compilés statiquement. Le projet se distingue par sa capacité à effectuer une spécialisation basée sur l'inférence de type, qui génère des instructions machine adaptées aux types de données spécifiques utilisés lors de l'exécution. Il emploie un pipeline de compilation paresseuse qui diffère la traduction jusqu'au moment de l'invocation, minimisant la surcharge au démarrage tout en maintenant des performances constantes sur diverses architectures de processeurs et systèmes d'exploitation. Au-delà de la compilation de base, le toolkit offre un support étendu pour l'accélération matérielle en distribuant les opérations itératives et les expressions de tableaux sur plusieurs cœurs CPU et unités de traitement graphique. Il utilise des stratégies de vectorisation et de parallélisation pour maximiser le débit pour les grands jeux de données numériques, permettant aux développeurs de cibler du matériel spécialisé directement depuis du code standard.
Distributes iterative operations across multiple processor cores and utilizes SIMD instructions to maximize throughput.
Rector is an automated PHP refactoring and modernization tool designed to upgrade language versions and modernize syntax using predefined rules. It functions as a static analysis engine that inspects code structures and types to identify refactoring targets without executing the code. The project provides a framework for defining custom transformation logic to automate project-specific changes. It distinguishes itself by offering specialized capabilities for migrating legacy or custom frameworks to modern alternatives and converting docblock annotations into native language attributes. The s
Reduces processing time for large codebases by running tasks simultaneously across multiple CPU cores.
Trape is a browser-based remote access tool and exploit framework designed for gathering device geolocation, hardware profiles, and network data. It functions as an open-source intelligence platform and a system for executing custom scripts and triggering browser vulnerabilities to capture credentials or monitor device activity. The project features a real-time geolocation tracker capable of retrieving precise physical coordinates and monitoring individual movement, including silent acquisition that bypasses standard location prompts. It further provides a network tunneling service to make lo
Distributes intensive computing operations across multiple CPU cores to increase processing efficiency.
This repository is a collection of reference implementations and sample projects demonstrating data-oriented design using the Unity Entities package. It provides a suite of examples for implementing an entity component system that separates game data into components and logic into systems. The collection includes specialized demonstrations for rendering large volumes of entities via graphics pipelines, implementing high-performance collision and rigid body dynamics through data-oriented physics, and managing multiplayer state synchronization using the network framework for entities. It also p
Distributes computationally expensive tasks across multiple CPU cores using a job-based system.
This project is a Python data science curriculum and programming tutorial collection. It provides a structured set of educational notebooks and scripts designed to teach data analysis, machine learning, and deep learning. The repository serves as a learning path for building and tuning predictive models, including regression, decision trees, and neural networks. It includes a data visualization guide for creating financial time-series plots and a multiprocessing reference for implementing parallel task execution and shared memory synchronization. The curriculum covers broader capability area
Implements parallel task execution using process pools and shared memory synchronization in Python.
Coconut est un langage de programmation fonctionnel qui compile vers Python. Il fonctionne comme un compilateur source-à-source, traduisant une syntaxe fonctionnelle de haut niveau en code Python compatible pour maintenir la compatibilité à l'exécution. Le langage introduit un système logique pour le pattern matching et la déstructuration de structures de données complexes. Il fournit un mécanisme d'optimisation des appels terminaux (tail call optimization) pour éviter les erreurs de débordement de pile lors d'appels de fonctions récursives profondes et emploie un moteur d'évaluation paresseuse pour différer les calculs jusqu'à ce que les résultats soient explicitement requis. Le projet inclut la prise en charge des types de données algébriques, des opérateurs de pipeline et de l'application partielle. Il fournit également un framework pour le traitement parallèle des données en distribuant les opérations de mapping sur plusieurs cœurs de CPU.
Improves computational performance by distributing mapping tasks across multiple CPU cores.