Title: Quiz 9 — Scaling & GPU-Aware Scheduling
Course: AIINFRA 101: Applied Infrastructure & Containerization > Section: Week 09 — Scaling & GPU-Aware Scheduling: HPA and the NVIDIA GPU Operator

Q: What component must be installed in a cluster before HPA can compute CPU or memory utilization?
- The Ingress Controller
- Metrics Server
- The Scheduler
- CoreDNS
A: Metrics Server

Q: If a container has no resources.requests.cpu set, an HPA targeting CPU utilization will still work, just less precisely.
- True
- False
A: False

Q: Write the HPA formula for desiredReplicas.
Feedback: Sample/expected answer: desiredReplicas = ceil\[ currentReplicas \* (currentMetricValue / desiredMetricValue) \]

Q: A Deployment has 3 replicas, a 50% CPU target, and Pods averaging 100% CPU. What does HPA compute as desired replicas?
- 4 B. 5 C. 6 D. 9
A: 4 B. 5 C. 6 D. 9

Q: HPA can fix an application that is crash-looping due to a bug by scaling up more replicas.
- True
- False
A: False

Q: What does the NVIDIA GPU Operator primarily automate on a Kubernetes cluster?
- Only the GPU driver installation
- Deployment of the GPU driver, Container Toolkit, device plugin, GFD, and DCGM Exporter as pods on every GPU node
- Kubernetes cluster networking
- Container image builds
A: Deployment of the GPU driver, Container Toolkit, device plugin, GFD, and DCGM Exporter as pods on every GPU node

Q: What Kubernetes resource field would a Pod spec use to request exactly one GPU?
Feedback: Sample/expected answer: `resources.limits.nvidia.com/gpu: 1`

Q: What is the main risk of enabling GPU time-slicing for a workload with high or unpredictable memory needs?
- It will not be scheduled at all
- It slows down the Kubernetes API server
- Time-slicing provides no memory isolation between workloads sharing the GPU, so one workload could exhaust memory and affect others
- It disables the device plugin
A: Time-slicing provides no memory isolation between workloads sharing the GPU, so one workload could exhaust memory and affect others