gpu-resource-management

Manage and scale GPU NodePools on EKS using Karpenter and KEDA with MIG partitioning.

18|4|Updated Apr 29, 2026
One-click install
npx skills add https://github.com/aws-samples/sample-oh-my-aidlcops --skill gpu-resource-management
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gpu-resource-management
Source: https://github.com/aws-samples/sample-oh-my-aidlcops/tree/main/plugins/ai-infra/skills/gpu-resource-management
Command: npx skills add https://github.com/aws-samples/sample-oh-my-aidlcops --skill gpu-resource-management

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires karpenter.sh, keda.sh, mcp__eks, mcp__aws-pricing, mcp__aws-documentation, mcp__prometheus, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill helps optimize GPU resource management on EKS by utilizing Karpenter and KEDA for efficient NodePool scaling and GPU partitioning.

Core Features & Use Cases

  • GPU Orchestration: Design and manage GPU NodePools with Karpenter.
  • Auto-scaling: Implement KEDA for scaling-to-zero and HPA for pod-level scaling.
  • GPU Partitioning: Use DRA for Multi-Instance GPU (MIG) partitioning.
  • Use Case: Ideal for environments with mixed instance types and need to manage spot and on-demand instances effectively.

Quick Start

Design a GPU NodePool using Karpenter and implement scaling strategies with KEDA.

Frequently Asked Questions about gpu-resource-management

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scale GPU workloads on EKS to zero when not in use?

You can scale GPU workloads on EKS to zero by implementing KEDA for event-driven autoscaling alongside Karpenter, which manages NodePool termination. This combination ensures GPU nodes are provisioned on demand and decommissioned when idle.

What is the best way to manage MIG partitions on Kubernetes?

Managing MIG partitions on Kubernetes is best handled using Dynamic Resource Allocation (DRA) to partition GPUs. This approach works with Karpenter NodePools to allocate specific GPU compute slices to individual pods.

Can I use Karpenter to balance spot and on-demand GPU instances on EKS?

Yes, Karpenter can balance spot and on-demand GPU instances on EKS by configuring NodePools with mixed capacity requirements. This allows your cluster to optimize costs by utilizing spot instances while maintaining on-demand instances for critical workloads.

How does KEDA integrate with Karpenter for GPU autoscaling?

KEDA integrates with Karpenter for GPU autoscaling by using KEDA to scale workloads to zero and trigger Horizontal Pod Autoscaler (HPA) scaling. Karpenter then provisions the necessary GPU NodePools based on the pending pod requests.

Do I need DRA for Multi-Instance GPU partitioning on EKS?

Yes, DRA (Dynamic Resource Allocation) is required for Multi-Instance GPU (MIG) partitioning on EKS. It allows the cluster to request and allocate specific MIG profiles as distinct resources, enabling efficient sharing of a single physical GPU across workloads.