Graduate Researcher (M.S. Thesis)
University of Georgia
Aug 2024 – Aug 2026 · Athens, GA
CONTEXT
Serverless workloads on cloud spot instances offer 70–90% cost savings but suffer frequent preemptions. Every prior system achieved reliability by blending in on-demand nodes, negating the cost advantage that motivated spot in the first place.
THE WORK
WHAT I TOOK ON
Three compounding problems had to be solved: reactive checkpointing was too slow and created too much overhead to be useful; reactive autoscaling triggered after preemptions had already landed; and the retry service was single-threaded - retries queued linearly and hurt success rates rather than recovering them.
WHAT I DELIVERED
Switched to proactive scaling: Kaplan-Meier survival curves fit on emulator preemption traces give early warning, gating a Thompson Sampling bandit on live failure and cost data to scale before preemptions hit without overprovisioning. Rebuilt the retry service as a 50–100 thread concurrent executor - this single change delivered a 40–50% success rate boost. DAG-aware selective checkpointing kept overhead manageable. Result: 39% → 89.03% success at $0.018/run. Accepted at ACM Middleware '26.
KEY CONTRIBUTIONS
- Designed and built FaaSpot (ACM Middleware '26): ~17.5K lines of Python running serverless DAG workflows on spot
- Built FaaSpot's Kubernetes platform from scratch: 16-node kubeadm VM cluster on bare metal running Fission, with NodePort routing and per-task ConfigMaps
- Wrote FaaSpot's two-layer autoscaler: Kaplan-Meier survival model gates a Thompson Sampling contextual bandit that scales Deployment replicas onto safer nodes, beating the best fixed policy by 11–17pp on success
- Built checkpoint and lineage-based retry controllers on transactional MySQL, resuming failed runs from the nearest checkpoint
- Raised workflow success from 39% (naive spot) to 89.03% at $0.018 per run - under half the best baseline's cost, 2.3× lower latency
EQUIPMENT MANIFEST