Karma: Resource Allocation for Dynamic Demands
Midhul Vuppalapati, Giannis Fikioris, Rachit Agarwal, Asaf Cidon, Anurag Khandelwal, Éva Tardos
Abstract
We consider the problem of fair resource allocation in a system where user demands are dynamic, that is, where user demands vary over time. Our key observation is that the classical max-min fairness algorithm for resource allocation provides many desirable properties (e.g., Pareto efficiency, strategy-proofness, and fairness), but only under the strong assumption of user demands being static over time. For the realistic case of dynamic user demands, the max-min fairness algorithm loses one or more of these properties. We present Karma, a new resource allocation mechanism for dynamic user demands. The key technical contribution in Karma is a credit-based resource allocation algorithm: in each quantum, users donate their unused resources and are assigned credits when other users borrow these resources; Karma carefully orchestrates the exchange of credits across users (based on their instantaneous demands, donated resources and borrowed resources), and performs prioritized resource allocation based on users' credits. We theoretically establish Karma guarantees related to Pareto efficiency, strategy-proofness, and fairness for dynamic user demands. Empirical evaluations over production workloads show that these properties translate well into practice: Karma is able to reduce disparity in performance across users to a bare minimum while maintaining Pareto-optimal system-wide performance.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 5d5d784c-866e-4284-a6b1-e3de3ede25cfCited by top-tier papers4
- Fair-CO2: Fair Attribution for Cloud Carbon EmissionsLeo Han, Jash Kakadia, Benjamin C. Lee, Udit GuptaISCA 2025 · 10 citations
- TopFull: An Adaptive Top-Down Overload Control for SLO-Oriented MicroservicesJinwoo Park, Jaehyeong Park, Youngmok Jung, Hwijoon Lim et al.SIGCOMM 2024 · 10 citations
- MerKury: Adaptive Resource Allocation to Enhance the Kubernetes Performance for Large-Scale ClustersJiayin Luo, Xinkui Zhao, Yuxin Ma, Shengye Pang et al.WWW 2025
- Mitigating Application Resource Overload with Targeted Task CancellationYigong Hu, Zeyin Zhang, Yicheng Liu, Yile Gu et al.SOSP 2025
Builds on13
- Serverless in the Wild: Characterizing and Optimizing the Serverless Workload at a Large Cloud ProviderMohammad Shahrad, Rodrigo Fonseca, Iñigo Goiri, Gohar Irfan Chaudhry et al.USENIX ATC 2020 · 946 citations
- Heterogeneity-Aware Cluster Scheduling Policies for Deep Learning WorkloadsDeepak Narayanan, Keshav Santhanam, Fiodar Kazhamiaka, Amar Phanishayee et al.OSDI 2020 · 286 citations
- A large scale analysis of hundreds of in-memory cache clusters at TwitterJuncheng Yang, Yao Yue, K. V. RashmiOSDI 2020 · 245 citations
- The CacheLib Caching Engine: Design and Experiences at ScaleBenjamin Berg, Daniel S. Berger, Sara McAllister, Isaac Grosof et al.OSDI 2020 · 145 citations
- Building An Elastic Query Engine on Disaggregated StorageMidhul Vuppalapati, Justin Miron, Rachit Agarwal, Dan Truong et al.NSDI 2020 · 142 citations
Related papers
- Quota Marketplace: Dynamic Pricing for Efficient Allocation of ML Training ResourcesBalasubramanian Sivan, Renato Paes Leme, Mihai Tiuca, Ian McFarlane et al.OSDI 2026 · 1 citation
- Time Fairness in Online Knapsack ProblemsAdam Lechowicz, Rik Sengupta, Bo Sun, Shahin Kamali et al.ICLR 2024 · 8 citations
- Fair and Efficient Allocations with Limited DemandsSushirdeep Narayana, Ian A. KashAAAI 2021 · 3 citations
- Fair Scheduling for Time-dependent ResourcesBo Li, Minming Li, Ruilong ZhangNeurIPS 2021 · 23 citations
- Experiential Fairness: Bridging the Gap Between User Experience and Resource-Centric Fairness in Online LLM ServicesJiahua Huang, Wentai Wu, Yongheng Liu, Guozhi Liu et al.AAAI 2026
