23 repository-uri
Technologies for partitioning physical GPU hardware into multiple virtual devices for shared use across virtual machines.
Distinct from Virtual Machines: None of the candidates cover hardware-level GPU virtualization; they focus on general VM management or OS internals.
Explore 23 awesome GitHub repositories matching operating systems & systems programming · GPU Resource Virtualization. Refine with filters or upvote what's useful.
OSX-KVM is a project that enables running macOS as a virtualized guest operating system on non-Apple hardware using QEMU/KVM and the OpenCore bootloader. It provides the core capability to install and boot macOS on a Linux host, supporting GPU passthrough for improved graphics performance and remote access via SSH and VNC for headless management. The project distinguishes itself by offering a complete virtualization stack for macOS, including hardware passthrough for physical GPUs and other devices, integration with libvirt and virt-manager for graphical VM management, and the ability to boot
Assigns physical GPUs to a macOS virtual machine for hardware-accelerated graphics performance.
AISystem is a comprehensive AI full-stack infrastructure project covering the entire pipeline from AI chip architecture to high-level training frameworks. It encompasses the development of AI compiler frameworks, inference engines, and distributed training orchestrators designed to coordinate workloads across a heterogeneous compute stack of CPUs, GPUs, and NPUs. The project focuses on the deep integration of software and hardware, employing software-hardware co-design to align tensor layouts with physical memory structures. It provides specialized capabilities for accelerating Transformer mo
Divides physical GPU hardware into isolated virtual GPUs to ensure predictable throughput across tasks.
This project is a collection of shell-based automation scripts designed to automate the deployment and configuration of Linux containers and virtual machines on Proxmox VE hosts. It provides toolsets for the scripted provisioning of virtual machine infrastructure and the creation of pre-defined containers for various applications. The toolset includes specialized utilities for Proxmox host management, such as automating post-installation setup, managing system backups, and cleaning up old kernels to reclaim disk space. It further provides automated configurations for hardware passthrough, ena
Configures hardware passthrough and manages resource allocation to optimize virtualization efficiency.
vcluster is a Kubernetes virtual cluster platform that creates fully isolated Kubernetes environments with dedicated control planes, API servers, and RBAC on shared physical infrastructure. It virtualizes Kubernetes control planes by running them as pods inside a host cluster, as standalone binaries on bare metal or virtual machines, or within Docker containers, providing each tenant their own isolated Kubernetes environment without the overhead of managing separate physical clusters. The platform enables multi-tenant Kubernetes isolation through multiple tenancy models, from shared node pool
Provides secure kernel-level isolation for workloads using seccomp, cgroups, and namespaces.
WasmEdge is an extensible WebAssembly runtime that executes WebAssembly bytecode in a secure sandbox for cloud, edge, and embedded applications. It functions as a multi-language compiler, compiling applications written in Rust, JavaScript, Go, and Python into WebAssembly bytecode for sandboxed execution, and as a server-side JavaScript runtime that runs JavaScript programs with ES6 modules, NPM packages, and Node.js-compatible APIs. The runtime also serves as an AI inference runtime, executing AI models from JavaScript using WASI-NN plug-ins for inference tasks on personal devices and edge har
Orchestrates large language model inference tasks on GPU hardware within a Kubernetes cluster.
jetson-inference is a set of libraries and tools for executing optimized deep learning models on embedded GPU hardware. Its primary purpose is to enable real-time computer vision and AI inference at the edge with low latency and high throughput. The project distinguishes itself through high-performance streaming analytics and the ability to execute concurrent AI pipelines on auto-grade silicon. It provides specialized support for multi-sensor stream processing, utilizing zero-copy data transport to load camera frames directly into GPU memory. The codebase covers a broad surface of capabiliti
NVIDIA creates virtual GPUs from a physical device to share performance across multiple virtual machines.
Nebullvm is an AI inference accelerator, GPU resource orchestrator, and performance optimization library for large language models. It functions as an optimization layer designed to lower operational costs by aligning model execution with underlying hardware architectures. The system maximizes cluster efficiency through real-time dynamic partitioning and elastic quotas for shared hardware resources. It employs alignment methods and techniques to reduce the hardware and data requirements necessary for tuning large language models. The project covers broad capability areas including AI infrast
Provides real-time dynamic partitioning of shared GPU hardware to maximize cluster efficiency and prevent underutilization.
This project is an Android container runtime that enables the deployment of GPU-accelerated Android instances on Linux hosts across multiple hardware architectures. It provides a cloud-based environment for virtualized Android devices, functioning as a containerized implementation of the Android operating system to support scalable device instances. The system distinguishes itself through a cross-architecture runtime capable of executing ARM-based Android applications on x86 hardware via binary translation layers. It further utilizes host GPU resources to provide high-performance graphics ren
Provides a virtualization layer that leverages host GPU resources for high-performance Android graphics rendering.
Assigns a physical GPU to a macOS virtual machine for hardware-accelerated graphics with BIOS and kernel tweaks.
Provides virtualization and containerization for managing GPU workloads.
Easy-GPU-PV este un set de instrumente administrative pentru verificarea compatibilității hardware și automatizarea implementării accelerării grafice partiționate în medii Windows virtualizate. Funcționează ca un orchestrator și manager de resurse pentru provizionarea mașinilor virtuale cu unități de procesare grafică partiționate. Proiectul se concentrează pe partiționarea GPU în Windows, permițând unei singure plăci grafice fizice să partajeze accelerarea hardware între mai multe sisteme virtualizate. Realizează acest lucru prin automatizarea configurării hardware-ului și software-ului gazdă pentru a permite mediilor virtualizate să acceseze unitățile de procesare grafică. Sistemul gestionează procesul de provizionare end-to-end, acoperind verificarea compatibilității hardware, configurarea graficii mașinii virtuale și sincronizarea driverelor între sistemele gazdă și cele invitate. Utilizează partiționarea bazată pe regiștri și automatizarea sistemului prin scripturi pentru a gestiona alocarea resurselor și validarea precondițiilor.
Divides a single physical graphics card to share hardware acceleration across multiple virtual machines on Windows.
LXD is a unified platform for managing both system containers and virtual machines through a single REST API and command-line interface. It provides a programmatic HTTP interface for controlling the full lifecycle of instances, enabling automation and integration with external tools. The system runs unprivileged containers with per-instance UID/GID mappings, seccomp filters, and AppArmor profiles for kernel-level isolation, while supporting multiple storage backends including directory, Btrfs, LVM, ZFS, Ceph, LINSTOR, and TrueNAS through a unified driver interface. The platform distinguishes
Creates and passes a virtual GPU into a virtual machine using mediated device profiles.
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
Volcano schedules across x86, Arm, and GPU architectures, supporting GPU virtualization for fine-grained sharing and dynamic partitioning with MIG.
vgpu_unlock este un set de instrumente software și modificări de drivere concepute pentru a debloca funcționalitățile de virtualizare de nivel enterprise pe hardware grafic de consum. Funcționează ca un instrument de deblocare vGPU și un spoofer de ID de dispozitiv hardware care permite partajarea unei singure plăci grafice între mai multe mașini virtuale. Proiectul realizează acest lucru prin utilizarea hooking-ului la nivel de driver, patching-ului dinamic al memoriei și spoofing-ului de dispozitiv la nivel de kernel. Aceste tehnici interceptează interogările de identificare hardware și modifică starea operațională a driverului GPU în timpul execuției pentru a ocoli restricțiile software impuse de producător. Capabilitățile rezultate oferă grafică accelerată hardware sistemelor de operare guest și permit partajarea GPU-ului virtual pe hardware care nu suportă nativ aceste funcții.
Enables the partitioning of a single physical GPU into multiple virtual devices for shared use across virtual machines.
gpustack este o platformă de gestionare a clusterelor GPU și un orchestrator de inferență LLM. Acesta funcționează ca un sistem centralizat pentru pooling-ul și orchestrarea unităților de procesare grafică pe servere locale și medii cloud, servind drept manager de calcul eterogen pentru diverse configurații hardware și software. Sistemul oferă un gateway securizat de implementare a modelelor AI care servește modelele ca servicii scalabile folosind autentificarea bazată pe chei. Include un scheduler de resurse GPU care echilibrează sarcinile de lucru pe acceleratoare și coordonează mai multe motoare de inferență pentru a mapa modele AI specifice pe hardware compatibil. Platforma acoperă orchestrarea cuprinzătoare a clusterelor, inclusiv recuperarea automată în caz de eșec, monitorizarea resurselor în timp real și scalarea inferenței distribuite. Încorporează optimizarea performanței prin cuantizare și decodare speculativă pentru a maximiza throughput-ul și a reduce latența. Configurațiile sistemului și starea clusterului sunt menținute prin persistența stării într-o bază de date relațională externă.
Coordinates and deploys inference engines like vLLM and SGLang to serve AI models.
JimsGarage is a collection of shell scripts and automation tools designed to help individuals deploy and manage a wide range of self-hosted services on their own hardware. It provides a structured approach to setting up containerized applications, from media servers and document management systems to VPNs and monitoring stacks, all through automated Docker-based configurations. The project distinguishes itself by offering a comprehensive library of deployment recipes that cover the full lifecycle of a home server environment. This includes not just the services themselves, but also the suppor
Provides scripts to create toolbox containers with GPU access for running compute workloads.
ExHyperV is a suite of administrative tools designed for managing advanced Hyper-V configurations, specifically focusing on GPU partitioning, device passthrough, and virtual network switches. It provides a graphical interface to configure virtual machine resources and optimize hypervisor settings. The project is distinguished by its ability to share physical graphics card resources across multiple virtual machines using paravirtualization and partitioning. It also provides specialized utilities for assigning PCIe devices and USB peripherals directly to guest machines for exclusive access. Th
Shares physical graphics card resources across multiple virtual machines using Hyper-V GPU partitioning.
Acest proiect este un manual tehnic cuprinzător pentru instalarea macOS pe hardware x86 non-Apple folosind bootloader-ul OpenCore. Servește ca un ghid de configurare pentru emularea hardware-ului Apple și patch-uirea firmware-ului de sistem pentru a obține compatibilitatea sistemului de operare pe PC-uri. Documentația oferă instrucțiuni detaliate pentru emularea hardware SMBIOS, inclusiv generarea identificatorilor de sistem și a profilurilor de model. Acoperă aplicarea patch-urilor pentru tabelele ACPI pentru a activa gestionarea nativă a energiei și modificarea serviciilor de runtime UEFI pentru a rezolva problemele de mapare a memoriei și de protecție la scriere. Resursa detaliază în continuare compatibilitatea hardware pentru componentele de rețea, grafică și audio, precum și gestionarea extensiilor de kernel. Include îndrumări privind configurarea bootloader-ului, crearea de instalatoare bootabile și utilizarea logării verbose și a kiturilor de depanare pentru a diagnostica kernel panic-urile.
Generates graphics connector and memory patches to resolve boot panics and enable acceleration on unsupported GPUs.
CRIU is a Linux process checkpointing tool and state manager used to freeze running applications and save their memory and state to disk for later restoration. It functions as a container migration engine and an OCI checkpoint image converter, allowing the live state of running containers to be transferred between different hosts. The project distinguishes itself through its ability to persist network connectivity, acting as a TCP connection state persister that saves and reconstructs network socket states to maintain active communication after a restart. It further enables the distribution o
Captures and restores the state of applications using GPU acceleration to enable failure recovery and workload migration.
Hackintool is a hardware configuration tool designed to make non-native computer hardware compatible with macOS. It functions as a suite of utilities for spoofing device identifiers and patching system components to ensure the operating system recognizes unsupported hardware. The project provides specialized tools for graphics, audio, and USB configurations. This includes a framebuffer patcher for resolving display issues on unsupported GPUs, an audio layout configurator for enabling sound via device ID spoofing, and a USB port mapping tool that identifies connected devices to generate custom
Generates graphics connector and memory patches to fix display issues and enable hardware acceleration on unsupported GPUs.