18 repositorios
Strategies for managing complex parallelism to maximize hardware utilization during deep learning workloads.
Distinct from Distributed Computing: The candidates focus on general distributed computing or task runners, not specifically the coordination of ML parallelism strategies.
Explore 18 awesome GitHub repositories matching artificial intelligence & ml · Distributed GPU Computing. Refine with filters or upvote what's useful.
Megatron-LM is a distributed transformer training library and large language model training framework designed to scale models across thousands of GPUs. It functions as a GPU-optimized deep learning toolkit and a scaling engine for mixture-of-experts architectures, enabling the training of models with hundreds of billions of parameters. The project implements multi-dimensional model parallelism, combining tensor, pipeline, data, expert, and context-based workload distribution. It specifically optimizes mixture-of-experts architectures through integrated memory and communication improvements t
Manages complex tensor, pipeline, and data parallelism strategies to maximize hardware utilization.
Horovod is a distributed deep learning framework designed to scale machine learning training across multiple GPUs and nodes. It functions as an orchestrator for multi-GPU scaling and a tool for distributed gradient averaging, allowing users to increase compute capacity without rewriting core model logic. The project provides a consistent communication interface that supports multi-framework model distribution across TensorFlow, PyTorch, Keras, and MXNet. It leverages an MPI distributed training library to synchronize gradients across processes using collective communication operations. The s
Expands compute capacity by distributing training scripts across multiple GPU hosts.
This project is a quantized fine-tuning framework for large language models. It implements a low-rank adaptation library and a four-bit quantizer to reduce the GPU memory requirements needed to train large models. The framework utilizes four-bit quantization and low-rank adapters to enable model training on consumer-grade hardware. It further reduces the memory footprint through double quantization and a paged optimizer that offloads states to system RAM. The system supports distributed training across multiple GPUs to handle larger parameter scales and includes utilities for custom dataset
Implements a system for managing parallelism across multiple GPUs to increase the scale of trainable parameters.
Petals is a decentralized framework and inference engine for running large language models across a peer-to-peer network. It enables the execution of models that exceed the memory of any single machine by splitting computations and model layers across a collaborative swarm of GPUs. The system functions as a collaborative compute network where participants share local GPU resources and host model weights. It supports distributed prompt-tuning to adapt massive models to specific tasks and allows for the establishment of private compute swarms to process sensitive data within restricted, trusted
Establishes a decentralized network of connected devices that collectively host model weights and execute inference.
cuDF is a GPU-accelerated dataframe library and data processing engine designed for manipulating and analyzing large tabular datasets. It provides a high-level API for executing filtering, joining, and aggregating operations directly on GPU hardware. The project integrates the Apache Arrow memory format to enable zero-copy data transfers and includes a just-in-time compiler for executing custom user-defined functions on the GPU. The library features specialized acceleration for existing workflows by redirecting standard Pandas dataframe calls and Polars query plans to a GPU backend. It also p
Integrates with Dask to scale tabular datasets across multiple GPU devices for memory-exceeding workloads.
TensorTrade is a reinforcement learning trading framework designed for training and deploying autonomous agents that optimize financial market strategies. It provides an algorithmic trading simulation environment where agents can be tested against market data using simulated broker environments. The framework features a distributed training system using RLlib to optimize decision policies across large datasets. It includes a walk-forward validation tool that evaluates trading strategies through windowed performance analysis to prevent overfitting and measure real-world viability. The project
Scales the optimization of trading policies across large datasets using RLlib for distributed training.
Este proyecto es una implementación en PyTorch de un transformer de texto a imagen. Es un modelo de IA generativa diseñado para mapear tokens de texto discretos a píxeles de imagen utilizando una red transformer para crear contenido visual a partir de descripciones textuales. El sistema utiliza un codificador de imagen VAE discreto para comprimir datos visuales en tokens para el procesamiento del transformer. Admite guía libre de clasificador (classifier-free guidance) para ajustar la influencia de los prompts de texto durante la inferencia e incluye capacidades para clasificar las imágenes generadas según su similitud con los prompts de texto. La arquitectura incorpora mecanismos de atención dispersa y redes residuales reversibles para optimizar la complejidad computacional y el consumo de memoria. Las capacidades de entrenamiento incluyen escalado distribuido en GPU y frameworks para gestionar cargas de trabajo a gran escala a través de múltiples procesadores gráficos para asociar imágenes con descripciones de texto. La implementación proporciona soporte para la tokenización de texto personalizada mediante la integración de tokenizadores pre-entrenados o modelos de lenguaje.
Employs distributed GPU computing strategies to maximize hardware utilization during the training of large vision models.
Esta es una implementación de aprendizaje profundo en PyTorch para entrenar modelos de lenguaje basados en transformers. Funciona como un framework y entrenador distribuido en GPU diseñado para optimizar modelos de predicción de texto para una mayor velocidad y eficiencia de muestreo. El proyecto se distingue por su uso del optimizador de pesos Newton-Schulz. Este método aplica un proceso iterativo para mantener actualizaciones de parámetros semi-ortogonales y matrices de pesos, lo que mejora la eficiencia de muestreo y reduce la sobrecarga de memoria durante el proceso de entrenamiento. El framework cubre amplias capacidades en computación distribuida en GPU, incluyendo paralelismo de datos para escalar cargas de trabajo a través de múltiples procesadores gráficos. También incorpora técnicas de optimización de redes neuronales como la optimización de momentum iterativa y el procesamiento de lotes de alto rendimiento.
Coordinates complex parallelism across multiple GPUs to maximize hardware utilization during deep learning workloads.
cuml es una librería y framework de aprendizaje automático acelerado por GPU que utiliza CUDA para acelerar el preprocesamiento de datos tabulares y la ejecución de modelos. Proporciona un conjunto de herramientas para entrenar y desplegar modelos de clasificación, regresión y agrupamiento en GPUs de NVIDIA y clústeres de GPU. La librería está diseñada para la escalabilidad, ofreciendo un entorno de aprendizaje automático de GPU distribuido que puede repartir la computación y los datos a través de múltiples aceleradores de hardware y nodos para manejar conjuntos de datos que exceden la memoria de un solo dispositivo. Refleja las interfaces de estimador estándar para permitir el reemplazo de modelos basados en CPU con versiones aceleradas por GPU dentro de los flujos de trabajo existentes. El proyecto cubre una amplia gama de capacidades de aprendizaje automático, incluyendo aprendizaje supervisado, agrupamiento no supervisado, búsqueda de vecinos más cercanos y reducción de dimensionalidad de alta dimensión. También incluye preprocesamiento de datos tabulares acelerado por hardware para escalado y codificación de características, extracción de características de texto, análisis de series temporales y explicabilidad de predicción de modelos. Las utilidades de soporte incluyen herramientas para la generación de conjuntos de datos sintéticos, serialización del estado del modelo y el cálculo de métricas de rendimiento del modelo.
Scales machine learning workloads across multiple GPUs and compute nodes to process datasets exceeding single-device memory.
TransformerLab es una plataforma de orquestación MLOps y entorno de investigación diseñado para el entrenamiento, ajuste fino (fine-tuning) y evaluación de modelos de lenguaje grandes. Sirve como un plano de control centralizado para gestionar trabajos de aprendizaje automático y coordinar el cómputo distribuido en GPU a través de proveedores de nube híbrida y locales (on-premise). La plataforma se distingue por la optimización de modelos impulsada por agentes, utilizando asistentes de IA para analizar métricas y proponer y poner en cola automáticamente experimentos de hiperparámetros. Proporciona un entorno de desarrollo remoto que permite a los usuarios lanzar notebooks interactivos, editores de código y sesiones de shell seguro directamente en nodos de cómputo remotos. El sistema cubre una amplia gama de capacidades de flujo de trabajo de aprendizaje automático, incluyendo coordinación de tareas distribuidas, barridos de hiperparámetros automatizados y seguimiento integral de experimentos. Cuenta con registros integrados para el versionado de datasets y artefactos de modelos, así como herramientas para la evaluación del rendimiento del modelo y el despliegue de servidores de inferencia. Se proporciona una interfaz de línea de comandos para el control de la plataforma, monitoreo de trabajos y gestión de la instalación y actualizaciones de la instancia del servidor local.
Coordinates training workloads and provisions ephemeral instances across multiple cloud and on-premise providers.
StableSwarmUI es una interfaz web y orquestador de backend para la generación de imágenes con Stable Diffusion. Funciona como un generador de imágenes GPU distribuido y un pipeline de imágenes de IA modular, proporcionando un controlador centralizado para gestionar las solicitudes de generación de imágenes. El sistema se distingue por la capacidad de dividir las tareas de generación entre múltiples procesadores gráficos para aumentar el rendimiento por lotes. Utiliza una interfaz agnóstica al backend para conectarse a servidores locales, servidores remotos y APIs en la nube, e incluye un diseñador de flujos de trabajo visual basado en grafos para definir operaciones complejas de procesamiento de imágenes. La plataforma incluye un sistema de extensión de plugins dinámico para añadir funciones personalizadas y utilidades automatizadas para el aprovisionamiento de dependencias a nivel de sistema. Combina herramientas de generación modulares e interfaces de edición rápida con la capacidad de enrutar cargas de trabajo a través de hardware distribuido.
Manages computational parallelism across multiple GPUs to maximize hardware utilization during image generation.
NCCL es una biblioteca de comunicación de alto rendimiento y un framework de computación distribuida en GPU diseñado para ejecutar intercambios de datos colectivos y punto a punto a través de múltiples GPUs en sistemas de uno o varios nodos. Sirve como capa de transporte RDMA para GPU y orquestador de memoria, facilitando la sincronización de gran ancho de banda de datos y gradientes de modelos para el entrenamiento e inferencia distribuida en GPU. La biblioteca se distingue por su capacidad para ejecutar primitivas de comunicación directamente desde kernels de GPU, eliminando la CPU anfitriona del camino crítico. Utiliza la selección de rutas consciente de la topología para optimizar el movimiento de datos y emplea transporte de red basado en RDMA, incluyendo InfiniBand y NVLink, para permitir el acceso a memoria de copia cero entre dispositivos a través de diferentes nodos físicos. El proyecto cubre una amplia gama de patrones de comunicación colectiva, incluyendo reducciones, broadcasts, gathers e intercambios all-to-all, junto con acceso remoto a memoria punto a punto. Proporciona una gestión integral de comunicadores para inicializar, particionar y redimensionar grupos de GPU, así como una gestión de memoria especializada para registrar buffers y coordinar memoria compartida de dispositivo. El sistema incluye un conjunto de herramientas de monitoreo y observabilidad para el seguimiento de la salud, registro de diagnósticos y monitoreo de eventos en tiempo real, así como interfaces de integración para frameworks de aprendizaje automático, CUDA graphs, MPI y Python.
A low-level communication layer that synchronizes data and manages device communicators for large-scale distributed training and inference.
Amazon DSSTNE es un kit de herramientas de machine learning y librería de redes de tensores dispersos diseñada para modelos de deep learning con entradas y salidas dispersas. Proporciona un framework de entrenamiento paralelo al modelo y un motor disperso acelerado por GPU para soportar redes intensivas en memoria. El framework está diseñado específicamente para el entrenamiento de sistemas de recomendación y aprendizaje disperso a gran escala. Permite la distribución de grandes matrices de pesos y tablas de embedding a través de múltiples dispositivos GPU para manejar modelos que exceden la capacidad de memoria de un solo procesador. El proyecto cubre una amplia gama de capacidades, incluyendo computación distribuida en GPU, procesamiento de datasets dispersos y la construcción de redes de tensores dispersos escalables. Estas utilidades permiten la ejecución de operaciones de machine learning de alto rendimiento y el escalado de modelos a través de clústeres de GPU.
Distributes training and prediction tasks across multiple GPUs to increase processing speed and memory capacity.
SLIME is a distributed reinforcement learning framework for large language model post-training that bridges Megatron training with SGLang inference servers. It orchestrates scalable RL loops across GPU clusters, decoupling training and inference into independent processes that communicate over HTTP and NCCL for independent scaling and fault tolerance. The system supports multi-agent reinforcement learning workflows with parallel agent instances, customizable rollout strategies, and personalized agent serving that improves models from prior conversations without disrupting API serving. The fra
A pipeline that decouples training and inference engines across GPU clusters to optimize throughput and memory for large-scale RL workloads.
CML es una herramienta de automatización de pipelines para entrenar y evaluar modelos de machine learning, funcionando como un sistema CI/CD para machine learning. Sirve como orquestador de computación en la nube y gestor de flujos de trabajo basado en Git que automatiza los ciclos de entrenamiento de modelos mediante la gestión de ramas, commits automatizados e informes integrados. El proyecto se distingue por aprovisionar instancias de nube efímeras o nodos de Kubernetes para proporcionar hardware especializado para tareas de computación intensiva. También gestiona runners de computación remota, permitiendo la conexión de clusters de GPU autohospedados o máquinas on-premise para ejecutar flujos de trabajo de machine learning contenerizados. El sistema cubre una amplia gama de capacidades, incluyendo el seguimiento de experimentos de ML, donde las métricas de rendimiento y visualizaciones se publican directamente en los pull requests de control de versiones. Maneja la automatización de pipelines de ML desde la importación y versionado inicial de datos hasta la generación de informes de flujo de trabajo formateados y enlaces de visualización externos. La herramienta proporciona utilidad adicional para la gestión de infraestructura a través de depuración remota basada en SSH y la capacidad de reanudar trabajos interrumpidos.
Orchestrates the lifecycle of ephemeral compute instances across hybrid cloud and on-premise providers for ML workloads.
Acme es un framework de aprendizaje por refuerzo y motor de ejecución diseñado para desarrollar y realizar benchmarks de algoritmos de aprendizaje. Proporciona una biblioteca de componentes modulares e implementaciones de referencia utilizadas para construir agentes y establecer líneas base de rendimiento. El sistema permite escalar arquitecturas de agentes desde la ejecución de flujo único hasta grandes entornos distribuidos. Esto facilita la transición desde el prototipado inicial hasta la ejecución distribuida para entrenamiento y evaluación. El framework cubre el desarrollo de aprendizaje por refuerzo y el prototipado de arquitecturas de agentes, proporcionando los bloques de construcción necesarios para comparar nuevos modelos frente a agentes de referencia estándar.
Acts as an execution engine for scaling reinforcement learning training and rollout generation across distributed GPU nodes.
IsaacGymEnvs is a GPU-accelerated physics sandbox and robotics policy training suite designed for reinforcement learning. It serves as a vectorized robotic simulator that runs thousands of parallel environments on GPUs to accelerate the training of neural networks. The project provides a sim-to-real transfer framework that utilizes domain randomization and physics variations to ensure policies trained in simulation are robust enough for deployment on real hardware. It distinguishes itself through a high-performance architecture that uses tensor-based state management to handle observations an
Scales reinforcement learning training loops and rollout generation across multiple GPU nodes to maximize throughput.
RLinf is a distributed reinforcement learning orchestrator and embodied AI training framework. It provides the infrastructure to train vision-language-action models and robotic policies using a combination of reinforcement learning and supervised fine-tuning. The system is designed for scaling workloads across GPU clusters, managing the placement of actors, rollout workers, and environment components. It features a specialized robotics data collection pipeline for gathering teleoperated demonstrations and simulation trajectories into standardized replay buffers, alongside a hardware interface
Scales reinforcement learning workloads across GPU clusters by managing worker placement and asynchronous data exchange.