15 repositorios
Systems for scheduling and executing non-blocking tasks within a specific execution context or event loop.
Distinct from Task Execution: The candidates focus on high-level automation, script execution, or AI workflows, whereas this is a low-level systems programming capability for event-loop task dispatching.
Explore 15 awesome GitHub repositories matching operating systems & systems programming · Asynchronous Task Execution. Refine with filters or upvote what's useful.
gnet es un framework de redes de alto rendimiento basado en eventos para Go, diseñado para construir servidores escalables de TCP, UDP y sockets Unix. Funciona como un gestor de sockets no bloqueantes y un motor de red multi-reactor que maneja miles de conexiones simultáneas con un bajo consumo de memoria. El framework se distingue por utilizar una arquitectura multi-reactor que distribuye la E/S a través de múltiples bucles de eventos vinculados a hilos del sistema operativo para minimizar el cambio de contexto. Emplea polling activado por flancos (edge-triggered) para reducir la frecuencia de llamadas al sistema y utiliza buffers circulares elásticos para minimizar los costes de asignación y la presión sobre el recolector de basura. La biblioteca cubre una amplia gama de capacidades de red, incluyendo la distribución de conexiones con balanceo de carga entre núcleos de CPU, la ejecución asíncrona de tareas mediante pools de trabajadores y un sistema estructurado para la gestión del ciclo de vida de las conexiones. También proporciona primitivas para implementar protocolos binarios personalizados y gestionar opciones de sockets de bajo nivel.
Schedules and executes non-blocking tasks within the event loop using a priority-based poller.
pysheeet es una biblioteca de referencia técnica que proporciona una colección curada de fragmentos de código y patrones de implementación para el desarrollo avanzado en Python, integración de sistemas y computación de alto rendimiento. Sirve como una guía completa para implementar programación de red de bajo nivel, extensiones nativas en C y programación asíncrona y concurrente. El proyecto proporciona frameworks especializados para el desarrollo y despliegue de modelos de lenguaje de gran tamaño, incluyendo herramientas para inferencia distribuida en GPU y servicio de alto rendimiento. También incluye patrones detallados para la orquestación de clústeres de computación de alto rendimiento, cubriendo la asignación de recursos de GPU y la gestión de cargas de trabajo en múltiples nodos. La biblioteca cubre una amplia superficie de capacidades, incluyendo comunicación de red segura y criptografía, mapeo objeto-relacional y gestión de bases de datos, y la implementación de estructuras de datos y algoritmos complejos. También proporciona utilidades para la gestión de memoria, interoperabilidad nativa a través de interfaces de funciones externas e integración de sistemas operativos a nivel de sistema.
Implements systems for scheduling and executing non-blocking tasks within Python event loops.
fio es una herramienta de benchmarking de rendimiento de almacenamiento y generador de cargas de trabajo de E/S sintéticas. Funciona como un perfilador de dispositivos de almacenamiento y motor de reproducción de trazas de E/S, permitiendo la medición del throughput y la latencia para dispositivos de almacenamiento y sistemas de archivos. El proyecto se distingue por su capacidad para actuar como un estresador de almacenamiento distribuido, gestionando múltiples backends de servidores remotos a través de un único controlador para evaluar el almacenamiento en red. También incluye capacidades especializadas para el análisis de deduplicación de almacenamiento mediante la generación de buffers de datos redundantes para probar la eficiencia de los subsistemas de deduplicación. La herramienta cubre un amplio rango de capacidades, incluyendo la simulación de cargas de trabajo de E/S complejas con tamaños de bloque y profundidad de E/S controlables, el análisis de inactividad de CPU y la recolección de estadísticas de dispositivos. Proporciona observabilidad mediante visualización de métricas de rendimiento, histogramas de latencia y monitoreo de estado estable. Las cargas de trabajo pueden dispararse mediante argumentos de línea de comandos o archivos de configuración detallados para automatizar escenarios de benchmarking complejos.
Executes asynchronous operations on dedicated threads to prevent the main execution path from blocking.
Flashlight es una biblioteca de aprendizaje automático en C++ y un framework de aprendizaje profundo diseñado para construir y entrenar redes neuronales. Funciona como una biblioteca de manipulación de tensores y un motor de diferenciación automática que rastrea operaciones para calcular gradientes mediante retropropagación (backpropagation) para la optimización de modelos. El proyecto se distingue por su rol como framework de entrenamiento distribuido, utilizando sincronización de gradientes all-reduce y entornos distribuidos para escalar cargas de trabajo de aprendizaje automático a través de múltiples nodos y dispositivos. Cuenta con una interfaz de memoria agnóstica al backend y gestión basada en RAII para desacoplar las operaciones de tensores del hardware físico. El framework cubre una amplia superficie de capacidades, incluyendo la construcción de arquitecturas de redes neuronales con capas convolucionales, lineales y recurrentes. Proporciona utilidades extensas para álgebra de tensores, gestión y batching de datasets, serialización binaria versionada para estados de modelos y herramientas de monitorización para rastrear métricas de entrenamiento y uso de memoria.
Distributes computational work across multiple CPU cores using a thread pool for simultaneous operation processing.
Reactor Core es un kit de herramientas de programación reactiva y una base no bloqueante para componer pipelines de datos asíncronos en la JVM. Sirve como framework de procesamiento de flujos asíncronos y sistema de gestión de contrapresión (backpressure), permitiendo a los desarrolladores transformar, filtrar y combinar secuencias de eventos mientras regulan el flujo de datos entre productores y consumidores para evitar el agotamiento de recursos. La biblioteca se diferencia por un sofisticado sistema de planificación de concurrencia y control de flujo basado en la demanda. Desacopla el procesamiento de señales de hilos específicos utilizando un registro de planificadores y proporciona mecanismos para la propagación de metadatos inmutables conscientes del contexto a través de límites asíncronos. También cuenta con herramientas especializadas para la captura de trazas en tiempo de ensamblaje y planificación de tiempo virtual para facilitar la prueba de operadores basados en el tiempo. El proyecto cubre una amplia gama de capacidades, incluyendo procesamiento funcional de datos para agregación y ventanas de secuencias, una variedad de estrategias de recuperación de errores como reintentos con retroceso exponencial y utilidades para conectar API de callback heredadas o síncronas en flujos reactivos. Además, proporciona instrumentación para el monitoreo de pipelines y un conjunto de herramientas de prueba para verificar secuencias de señales.
Executes asynchronous tasks using a specialized work-stealing scheduler for high-performance task dispatching.
opencv4nodejs es un conjunto de wrappers de JavaScript y un addon nativo de C++ que proporciona bindings de Node.js para la biblioteca OpenCV. Funciona como una biblioteca de visión artificial y framework de procesamiento de imágenes, exponiendo algoritmos de C++ de alto rendimiento a un entorno JavaScript. El proyecto permite la ejecución de algoritmos de visión para detectar rostros, rastrear objetos y analizar datos visuales utilizando redes neuronales profundas. Incluye capacidades para clasificación de patrones de datos, reconocimiento de patrones de texto e identificación de puntos de referencia faciales y gestos. El framework cubre una amplia superficie de capacidades, incluyendo procesamiento de imágenes automatizado, reconocimiento óptico de caracteres (OCR) y análisis de vídeo en tiempo real. Proporciona herramientas para operaciones aritméticas de matrices, acceso a datos de píxeles y gestión de archivos de imagen y captura de vídeo en vivo. La gestión de recursos se maneja mediante la ejecución de tareas asíncronas y el seguimiento de memoria externa para mantener la capacidad de respuesta del bucle de eventos.
Offloads heavy computer vision computations to background threads to prevent blocking the Node.js event loop.
CliWrap es una biblioteca de gestión de procesos asíncronos y envoltorio de procesos hijos, utilizada para ejecutar comandos externos e integrar interfaces de línea de comandos en aplicaciones. Proporciona un framework para lanzar programas externos mediante patrones asíncronos, gestionar procesos hijos y validar códigos de salida. La biblioteca destaca por su capacidad para enrutar flujos de entrada, salida y error estándar hacia buffers de memoria o flujos de eventos en tiempo real. Permite el monitoreo en tiempo real de las líneas de salida del proceso y admite la terminación de procesos mediante tokens de cancelación. El proyecto cubre una amplia gama de capacidades de gestión de procesos externos, incluyendo la configuración de variables de entorno, la redirección de flujos estándar y la captura de la salida del proceso para su uso como datos dentro de una aplicación.
Executes non-blocking system tasks within an asynchronous event loop context.
Amp es un framework de concurrencia no bloqueante para PHP. Proporciona una infraestructura central para escribir aplicaciones asíncronas utilizando un bucle de eventos para programar operaciones, temporizadores y señales dentro de un solo proceso. El proyecto implementa una librería de corrutinas que utiliza fibras para suspender y reanudar la ejecución de funciones. Esto permite al sistema manejar tareas concurrentes sin bloquear el hilo de ejecución principal, optimizando el uso de CPU durante operaciones de entrada y salida. Además, gestiona los resultados de operaciones pendientes a través de una implementación de futuros y promesas. El framework cubre una amplia gama de capacidades de coordinación, incluyendo multiplexación de E/S no bloqueante, cancelación de tareas basada en tokens para abortar operaciones de larga duración y estrategias para esperar la finalización de múltiples tareas concurrentes. También incluye mecanismos para la programación de tareas recurrentes y pausas de ejecución.
Executes functions as interruptible units of work to allow other operations to run during waits.
Failsafe is a JVM fault tolerance library and resilience pattern framework. It provides a toolkit for implementing circuit breakers, rate limiters, and other stability patterns within Java Virtual Machine applications to prevent cascading failures in distributed systems. The project is distinguished by its policy-based execution pipeline, which allows for the composition of multiple resilience patterns into a sequential flow. It features a state-machine circuit breaker to manage service recovery and a leaky-bucket rate limiter to control operation frequency. The library covers a broad range
Executes tasks in the background using resilience policies to prevent the main execution thread from blocking.
This project is a translated historical chronicle and programming language reference documenting the technical evolution and standardization of JavaScript over two decades. It serves as a software engineering archive that tracks version drafts and the influence of various standards bodies on the development of the language. The repository provides a Chinese translation of a comprehensive history, analyzing the socio-political and technical milestones of the ecosystem. It maps language milestones and chronicles the development of official specifications to provide historical context on how the
Explains the mechanism of asynchronous task execution via the JavaScript event loop.
Este proyecto es un recurso educativo que proporciona un tutorial de desarrollo integral para escribir y cargar programas eBPF utilizando C, Go y Rust dentro del kernel de Linux. Sirve como una guía técnica para desarrollar lógica personalizada para ejecutar directamente en el kernel. Los materiales cubren dominios especializados incluyendo observabilidad y rastreo del kernel, implementación de seguridad para detección de intrusiones e ingeniería de red de alto rendimiento para filtrado de paquetes y balanceo de carga. También incluye manuales dedicados para el rastreo del kernel de Linux y el uso de kprobes, uprobes y tracepoints. El proyecto abarca una amplia gama de áreas de capacidad, como instrumentación del kernel, monitoreo y observabilidad del sistema, análisis de red y aplicación de seguridad. Además, se extiende a la depuración a nivel de hardware para GPUs y controladores, así como a la manipulación de sistemas de bajo nivel y gestión de recursos.
Executes background work and memory allocations using workqueues to prevent blocking the main execution path.
async-std is a Rust asynchronous runtime and non-blocking I/O library. It serves as an asynchronous standard library, providing a set of alternatives to the core Rust library for managing concurrent tasks, networking, and file system access. The project implements a standard-library-mirrored API, offering asynchronous versions of existing synchronous types to maintain a familiar interface. This approach allows for asynchronous Rust development using an interface that reflects the ergonomics of the language's standard library. The runtime includes a task executor for scheduling and executing
Enables the execution of non-blocking system tasks like networking and file access.
This project is a comprehensive framework for iOS application development, centered on building mobile applications that feature custom user interface components, asynchronous task management, and local data persistence. It serves as a technical knowledge base for software engineering, providing tools to organize and publish architectural analyses and notes in Markdown format. The framework distinguishes itself through a robust document-based storage layer that utilizes BSON-formatted records to perform CRUD operations within a NoSQL document store. It provides extensive system integration ca
Submits tasks to queues and returns control to the calling thread immediately to maintain responsiveness.
Este proyecto proporciona un envoltorio de C++ solo de cabecera para la Node-API, sirviendo como marco para construir complementos nativos de alto rendimiento para Node.js. Actúa como un puente entre C++ y JavaScript, ofreciendo una interfaz orientada a objetos que simplifica la creación de extensiones compiladas mientras gestiona las complejidades del límite del lenguaje. La biblioteca se distingue por proporcionar abstracciones seguras de tipos para la organización de datos y la gestión de memoria, asegurando que los objetos nativos y del lado del script sean rastreados y reclamados correctamente. Incluye mecanismos para coordinar tareas asíncronas entre hilos en segundo plano y el bucle de eventos principal, evitando la corrupción de datos mientras se descargan cálculos intensivos. Además, mapea las excepciones nativas a tipos de error de script estándar, asegurando informes de diagnóstico consistentes y manejo de fallas. Más allá de sus capacidades de puente central, el proyecto admite el ciclo de vida completo del desarrollo nativo, incluida la exposición de clases y métodos de C++ al tiempo de ejecución de JavaScript. Proporciona herramientas para gestionar ciclos de vida de entornos, automatizar migraciones de código y ejecutar puntos de referencia de rendimiento para evaluar el comportamiento de los componentes nativos.
Offloads computationally expensive operations to background threads and returns results to the main event loop.
This repository provides a comprehensive collection of functional code samples designed to demonstrate modern development patterns and architectural practices for the Android platform using Kotlin. It serves as a practical guide for implementing standard design patterns that decouple business logic from user interface components, ensuring that applications remain maintainable and testable. The project distinguishes itself by offering isolated, hands-on implementations of complex mobile programming tasks. It covers a wide range of capabilities, including asynchronous networking, local database
Performs multiple background operations simultaneously and manages execution flow.