Cooper: Task Colocation with Cooperative Games Qiuyun Llull, Songchun Fan, Seyed Majid Zahedi, Benjamin C. Lee Presented by: Qiuyun Llull Duke University HPCA – Feb 7, 2017 1
Task Colocation in Datacenters Datacenters colocate applications to increase server utilization 2
Colocation Contention Colocation interference can lead to performance degradation 3
System Setting • Alvin, Ben, and Dan are working towards HPCA papers. • They share a cluster and divide processors equally. • Ben’s applications are memory intensive. • Alvin and Dan’s applications are not memory intensive. 4
System Setting 5
Strategic Behavior • Alvin, Ben, and Dan are strategic. • Can smaller, separate clusters improve performance? • Alvin and Dan share separate cluster to improve performance. 6
Strategic Behavior 7
Strategic Behavior Without incentives, strategic users may… • Bypass common management policy • Migrate tasks for better colocations • Procure private machines Strategic action fragments cluster and harms efficiency 8
Prior Research Pursues Performance • Predicts contention quickly and accurately • Colocates tasks for system performance • Colocates tasks with complementary demands Neglects Incentives • Overlooks strategic behavior • Fails to encourage users to colocate 9
Incentivizing Colocation Stability • No group of users break away to form separate system Satisfied Preferences • More users colocate with preferred tasks Fair Attribution of Costs • Users that contribute more to contention suffer higher losses 10
Example Preferences A : B > C > D B : A > C > D C : A > B > D D : C > A > B 11
Example Preferences A : B > C > D B : A > C > D C : A > B > D D : C > A > B 12
Cooper A framework that incentivizes strategic users to colocate by providing desirable system outcomes: • Stability • Satisfied Preferences • Fair Attribution of Costs 13
Agenda • System Setting • Incentivizing Colocation • Cooper Colocation Framework • Evaluation 14
Cooperative Game • Strategic agents are users and tasks • Utility is task performance • Colocation preferences describe preferred co-runners • If u(A,B) > u(A,C), then A prefers B over C • Actions are -- participate or break away 15
Game Equilibrium Colocations are stable when no group of users can improve their performance by changing colocation. 16
Cooper Framework Machines Agents Coordinator System Profiler Query Interface Colocation Preference Policies Predictor Users Job Action Dispatcher Recommender 17
Colocation Policies Machines Agents Coordinator System Pro fi ler Query Interface Colocation Preference Policies Predictor Users Job Action Dispatcher Recommender 18
Matching people in life 19
Stable Matching Algorithm partitions tasks into two sets • Tasks in one set propose. • Tasks in other set accepts, rejects. Task updates co-runners • Accept proposal if performance improves Algorithm terminates when all tasks matched [1] D. Gale and L. Shapley, “College admissions and the stability of marriage,” American Mathematical Monthly , 1962. [2] R.W .Irving, “ An efficient algorithm for the stable roommates problem,” Journal of Algorithms , pp. 577–595, 1985. 20
Stable Matching A D A>B>C D>F>E E B A>C>B E>F>D F C C>B>A E>D>F 21
Stable Policies Stable Marriage Random (SMR) • Partition tasks randomly Stable Marriage Partition (SMP) • Partition tasks with domain-specific knowledge • Memory-intensive tasks propose Stable Roommate (SR) • No partition • Any task proposes to any other. 22
Baseline Policies Greedy (GR) • Colocate tasks to minimize performance loss Complementary (CO) • Colocate tasks with complementary resource demands 23
Preference Predictor Machines Agents Coordinator System Query Interface Profiler Colocation Preference Policies Predictor Users Job Action Dispatcher Recommender 24
Preference Predictor • Profile colocation performance with sparse samples • Rate co-runners with profiles • Predict ratings with collaborative filtering • Infer ratings based on task similarity • Suppose A: B > C and A is similar to D • Then D: B > C • Construct preference list per task based on ratings 25
Action Recommender Machines Agents Coordinator System Profiler Query Interface Colocation Preference Policies Predictor Users Job Action Dispatcher Recommender 26
Action Recommender • Assess assigned matches for each task • Search preference list for better co-runners • Suppose X: A > B, and X matched to B • X messages A to suggest new match • Recommend break away • Suppose A also prefers X over assigned match. • X, A should break away 27
Cooper Recap Machines Agents Coordinator System Profiler Query Interface Colocation Preference Policies Predictor Users Job Action Dispatcher Recommender 28
Agenda • System Setting • Incentivizing Colocation • Cooper Colocation Framework • Evaluation 29
Experimental Methods Workloads • PARSEC for multithreaded benchmarks • Spark for task-parallel machine learning System Measurements • 10 nodes, each with 2 processors and 24 cores • Two tasks share a processor each with half the cores System Simulation • 500 nodes with varied task populations • Simulate colocations with system profiles 30
Fair Attribution of Costs Tasks that contribute more to contention suffer higher penalties Throughput Penalty 0.00 0.05 0.10 0.15 0.20 0.25 s w a p t b . o d y t r Complementary (CO) d . e x-axis sorts applications by memory intensity d u p c a n e a l s v m l i n e a s r t r e a m d c e . c i s i o g n r a d i e n n t a i v e c o r r e l a t . Throughput Penalty 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 Stable Marriage Random (SMR) swapt. bodytr. dedup caneal svm linear streamc. decision gradient naive correlat. 31
Satisfied Preferences 1000 Number of Agents 600 200 0 SR/CO SMR/CO SMP/CO Degraded Performance Unchanged Performance Improved Performance More users colocate with preferred tasks. 32
Stability CO SMR GR 800 800 800 # users breaking away 600 600 600 400 400 400 200 200 200 0 0 0 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 x-axis: gains (%) for which tasks break away Fewer users break away to form separate system 33
Performance stable matches 0.5 Loss Relative to Stand-Alone 0.4 0.3 0.2 0.1 0.0 � 0.1 Stable colocations preserve system performance 34
More in the paper … Cooper Implementation • Profiler and preference predictor • Adapted matching algorithms • Action recommender and job dispatcher Cooperative Game Theory • Shapely value for fair division • Extending beyond pairs Experimental Results • Sensitivity to system scale and job mix • Comprehensive policy comparisons 35
Conclusion Cooperative Games for Shared Systems • Formalize interactions between strategic users • Incentivize user participation • Enable fair task colocation Management Desiderata • Fair attribution of costs • Satisfied preferences • Stability Fairness versus Performance • Stable colocations satisfy more users • Stable colocations preserve system performance 36
Q & A Thank you! 35
Recommend
More recommend