20 dépôts
Tools for managing system memory and hardware resource assignment.
Distinguishing note: Focuses on resource management for model execution.
Explore 20 awesome GitHub repositories matching devops & infrastructure · Resource Allocation. Refine with filters or upvote what's useful.
ChatGLM-6B is a generative AI inference engine designed for local execution of transformer-based language models. It provides a comprehensive runtime environment that allows users to load and run pre-trained neural network weights directly on their own hardware, ensuring data privacy and independence from external cloud services. The project distinguishes itself through a hardware-agnostic execution backend that supports deployment across diverse environments, including standard processors, Apple Silicon, and multi-GPU configurations. It incorporates advanced optimization techniques such as w
Assigns necessary system memory and graphics processing resources for efficient operation.
This project is a distributed training infrastructure designed for aligning large language models through reinforcement learning. It functions as an end-to-end engine for complex alignment tasks, including proximal policy optimization, direct preference optimization, and iterative self-play. By providing a unified framework for multi-turn interactions and tool-use scenarios, it enables the development of models capable of reasoning and external environment engagement. The framework distinguishes itself through a decoupled architecture that separates model training from sample generation. This
Partitions compute resources between generation and training tasks to optimize hardware usage and prevent bottlenecks.
Parlant is an agentic workflow engine and orchestration framework designed for building conversational AI that adheres to strict behavioral guidelines. It provides a platform for managing multi-turn interactions through state-machine-based logic, allowing developers to define complex, hierarchical conversational flows that can adapt, skip, or revisit steps based on real-time user input. The framework distinguishes itself through its focus on behavioral governance and observability. It enables developers to define precise domain terminology and enforce instruction compliance through prioritize
Prioritizes computational tasks based on importance to ensure essential agent operations receive sufficient processing capacity.
Waifu2x-Extension-GUI is a desktop application designed for high-fidelity media restoration and enhancement. It functions as a graphical interface that orchestrates specialized deep learning engines to upscale, denoise, and interpolate images and videos, improving visual clarity and motion smoothness. The software distinguishes itself through its ability to manage complex, automated media processing pipelines. Users can chain multiple tasks—such as format conversion, scene detection, and frame rate interpolation—into sequential workflows that execute without manual intervention. It provides g
Manages hardware resource allocation to optimize throughput during intensive media enhancement operations.
systemd is a comprehensive system and service manager for Linux that orchestrates the entire operating system lifecycle. It functions as the primary init system, managing the transition from firmware to a fully initialized user space while providing a unified framework for service orchestration, hardware management, and resource control. The project distinguishes itself through its declarative, unit-based configuration model and dynamic dependency resolution, which allow for efficient, on-demand service activation and socket-based process management. It integrates deep system observability th
Adjusts CPU controller settings and performance budgets for individual services to manage scheduling constraints.
Horovod is a distributed deep learning framework and gradient synchronizer designed to scale model training across multiple GPUs and compute nodes. It functions as a distributed training orchestrator and an elastic training engine, utilizing an MPI collective communication library to synchronize weights and gradients across TensorFlow, PyTorch, Keras, and MXNet models. The system distinguishes itself through dynamic elastic scaling, which allows it to adjust the number of active workers at runtime and recover from node failures. It optimizes communication efficiency using tensor fusion batchi
Allocates specific CPU and GPU hardware resources to training processes to optimize hardware utilization.
Dask est un framework de calcul parallèle et un planificateur de tâches distribué conçu pour mettre à l'échelle les flux de travail de science des données Python, des machines uniques aux grands clusters. Il fonctionne comme un gestionnaire de ressources de cluster qui orchestre la logique computationnelle en représentant les tâches et leurs dépendances sous forme de graphes acycliques dirigés. Cette architecture permet au système d'automatiser la distribution des charges de travail sur le matériel disponible tout en gérant des exigences d'exécution complexes. Le projet se distingue par un moteur d'évaluation paresseuse qui diffère les opérations sur les données jusqu'à ce qu'elles soient explicitement demandées, permettant une optimisation globale du graphe et une allocation efficace des ressources. Il intègre le déversement de données conscient de la mémoire pour éviter les plantages du système lors du traitement de jeux de données dépassant la mémoire disponible, et il utilise la fusion de graphes de tâches pour combiner des séquences d'opérations en étapes d'exécution uniques, minimisant la surcharge de planification et la communication entre nœuds. La plateforme fournit une surface de capacités complète pour l'analyse de données à grande échelle, incluant le support pour l'apprentissage automatique distribué, l'intégration du calcul haute performance et le traitement de données parallèle. Elle offre des outils étendus pour la gestion du cycle de vie des clusters, le profilage des performances et la surveillance en temps réel de l'exécution des tâches. Les utilisateurs peuvent déployer ces environnements sur diverses infrastructures, incluant le matériel local, les fournisseurs cloud, les systèmes conteneurisés et les clusters de calcul haute performance.
Limits concurrent task execution and pins workers to specific GPU devices to optimize hardware utilization.
kohya_ss is a graphical user interface and workbench for fine-tuning diffusion models, specifically designed for Stable Diffusion. It provides a suite of tools for training generative AI models, including specialized interfaces for creating Low-Rank Adaptation weights and training ControlNet spatial control networks. The project distinguishes itself through integrated VRAM usage optimization and hardware acceleration, featuring specific support for Intel GPUs via XPU-accelerated libraries. It implements parameter-efficient training methods and memory-saving techniques like gradient checkpoint
Allows for the allocation of GPU resources and precision levels to maximize compute performance.
ShardSphere-ElasticJob is a Java-based distributed scheduling framework designed to manage workloads across multiple nodes. It provides a system for splitting scheduled tasks into shards and distributing them across a cluster to achieve high-throughput execution. The framework includes a distributed task failover system that detects node failures and automatically reassigns missed job executions to healthy cluster instances. It also features a cluster resource manager to dynamically allocate execution resources based on system load and capacity. The system covers high-availability task execu
Manages the allocation of execution resources to jobs and dynamically adjusts them based on system load.
OpenCost is an open-source tool for monitoring and allocating Kubernetes and cloud infrastructure costs. It provides real-time visibility into spending by distributing asset costs to workloads based on resource requests and usage, breaking down spend by namespace, deployment, pod, and label. The system functions as both a Kubernetes cost allocation engine and a multi-cloud cost analyzer, ingesting billing data from AWS, Azure, and GCP to present unified cost metrics alongside cluster costs. The tool distinguishes itself through its allocation-based cost model, which compares requested versus
Sets CPU and memory requests and limits for the cost monitoring pod to ensure stable performance in production clusters.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Reserves hardware resources across process boundaries using a Protocol Buffer RPC protocol for distributed allocation.
This project provides a comprehensive technical guide and framework for engineering large-scale machine learning systems. It covers the full lifecycle of model development, focusing on the infrastructure and computational principles required to build, train, and serve generative AI models across distributed GPU clusters. The repository distinguishes itself by offering deep-dive tutorials and implementation strategies for complex system challenges. It emphasizes high-performance architectural primitives, such as collective communication orchestration, distributed tensor sharding, and static gr
Manages hardware resource distribution and process placement across distributed training and inference clusters.
Ce projet est le site web officiel de documentation de Kubernetes, servant de ressource technique complète pour la gestion d'applications conteneurisées. Il fonctionne comme un portail de documentation technique open-source qui fournit des guides, des tutoriels et des matériaux de référence pour les logiciels de systèmes distribués. Le site est construit en utilisant un générateur de site statique avec une architecture de template basée sur des composants pour maintenir des modèles de design cohérents. Il dispose d'un générateur de documentation OpenAPI qui analyse les spécifications techniques pour construire et mettre à jour automatiquement les pages de référence d'API structurées. Pour soutenir une audience mondiale, il emploie un routage de contenu conscient de l'internationalisation pour gérer les versions localisées des manuels. Le workflow de développement inclut un serveur à rechargement à chaud pour prévisualiser les changements du site et un rendu de langue ciblé pour accélérer les temps de build. Le projet couvre un large éventail de domaines techniques, incluant l'orchestration de cluster, la configuration réseau et la gestion des ressources.
Optimizes hardware utilization by placing containers on specific nodes based on resource requirements and constraints.
Volcano is a Kubernetes-native batch scheduler specialized for AI, machine learning, and high-performance computing workloads. It provides gang scheduling to atomically allocate resources for all tasks of a distributed job, preventing deadlocks from partial allocation, and supports hierarchical queue management for multi-tenant resource isolation with configurable quotas, borrowing, and preemption. Topology-aware placement optimizes communication-intensive workloads by modeling network hierarchy to minimize cross-switch latency. Volcano differentiates itself with automated orchestration of di
Detects idle allocated resources and makes them available to lower-priority workloads without impacting latency-sensitive services.
Seldon Core est un serveur de modèles de machine learning basé sur Kubernetes et un framework d'inférence MLOps. Il fonctionne comme un moteur de service multi-modèles et un orchestrateur de pipelines, empaquetant les modèles sous forme de microservices scalables exposés via des API REST et gRPC standardisées. Le projet se distingue par des pipelines d'inférence basés sur des graphes qui enchaînent les modèles et les transformateurs de données dans des flux de travail séquentiels. Il optimise l'utilisation du matériel via le service partagé multi-modèles et des stratégies de sur-allocation dynamique de mémoire, tout en prenant en charge l'expérimentation en production via le routage de trafic pondéré, les tests A/B et les déploiements fantômes. Le framework couvre un large éventail de capacités MLOps, notamment l'autoscaling basé sur la demande, le traitement asynchrone des requêtes via des bus de messages, et une surveillance complète pour la dérive des données, les valeurs aberrantes et l'explicabilité des prédictions. Il fournit également une gestion de l'infrastructure pour la configuration du runtime des modèles et une communication sécurisée utilisant le chiffrement TLS sur les plans de contrôle et de données.
Optimizes hardware utilization by loading more models than available RAM through dynamic memory overcommit strategies.
Slurm est un gestionnaire de charge de travail de cluster et un planificateur de tâches conçu pour les environnements de calcul haute performance. Il fonctionne comme un orchestrateur de calcul distribué qui met en file d'attente et exécute des tâches computationnelles à grande échelle sur plusieurs nœuds de calcul dans un cluster. Le système agit comme un arbitre de ressources, distribuant les nœuds matériels et les processeurs entre les utilisateurs simultanés pour éviter les conflits de ressources et maximiser l'efficacité. Il coordonne le lancement simultané de multiples processus sur différents serveurs physiques pour exécuter des jobs parallèles et des charges de travail scientifiques. La plateforme couvre de vastes domaines de capacités, notamment la planification de jobs par lots, l'allocation de ressources de calcul et l'exécution de charges de travail parallèles. Il gère le timing et l'exécution des jobs en fonction de la disponibilité des ressources et de la priorité.
Distributes hardware nodes and processors across a cluster to ensure efficient utilization.
jStorm is a distributed stream processing engine designed for executing low-latency computations on high-volume data streams using Apache Storm topologies. It functions as a real-time data analytics platform and distributed task orchestrator that manages complex data pipelines via directed acyclic graph execution. The system provides a scalable framework for data pipeline management, incorporating backpressure-aware flow control to regulate ingestion rates and dynamic resource allocation to adjust computing resources based on real-time demand. It maintains compatibility with Apache Storm conf
Adjusts computing resources assigned to specific tasks based on real-time processing demand and load.
Turbopilot is a local large language model inference server designed to provide private code completions. It functions as a self-hosted engine that executes models on local hardware, ensuring development workflows remain offline and source code does not leave the machine. The system includes a quantization tool and model manager used to compress weights and merge sharded data into a unified binary format. This optimization reduces memory footprints and accelerates loading for execution on consumer-grade hardware. Performance is managed through a GPU accelerated inference engine that offloads
Provides a system for adjusting processor threads and hardware layers to optimize performance based on available system capacity.
This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical guide for the design and implementation of network layers, protocols, and hardware architecture, covering the spectrum from physical links to application-layer protocols. The content provides a detailed study of standards for congestion control, reliable data delivery, and internetwork routing. It includes specialized technical material on network security, public-key infrastructure, and the operation of modern cloud infrastructure and data centers. The material covers a broad ra
Explains how congestion management burdens are shared between routers and hosts using feedback and reservations.
CloudStack is an infrastructure-as-a-service orchestration engine designed to automate the deployment and lifecycle of computing, storage, and networking resources within a software-defined data center. It serves as a management layer for provisioning private clouds and managing the delivery of virtual machines and persistent storage across virtualized physical infrastructure. The platform features a multi-hypervisor orchestrator that utilizes a hypervisor-agnostic abstraction layer to control diverse virtualization technologies through a unified set of standardized API calls. It further prov
Organizes physical hardware into nested zones, pods, and clusters to manage resource allocation and geographic scaling.