FairRide: Near-Optimal Fair Cache Sharing

Size: px
Start display at page:

Download "FairRide: Near-Optimal Fair Cache Sharing"

Transcription

1 UC BERKELEY FairRide: Near-Optimal Fair Cache Sharing Qifan Pu, Haoyuan Li, Matei Zaharia, Ali Ghodsi, Ion Stoica 1

2 Caches are crucial 2

3 Caches are crucial 2

4 Caches are crucial 2

5 Caches are crucial 2

6 Cache sharing 3

7 Cache sharing Increasingly, caches are shared among multiple users 3

8 Cache sharing Increasingly, caches are shared among multiple users Especially with the advent of cloud 3

9 Cache sharing Increasingly, caches are shared among multiple users Especially with the advent of cloud Backend (storage/network) 3

10 Cache sharing Increasingly, caches are shared among multiple users Especially with the advent of cloud Backend (storage/network) 3

11 Cache sharing Increasingly, caches are shared among multiple users Especially with the advent of cloud Benefits: Provide low latency Reduce backend load Backend (storage/network) 3

12 Cache sharing Increasingly, caches are shared among multiple users Especially with the advent of cloud Benefits: Provide low latency Reduce backend load * Cache Backend (storage/network) 3

13 Problems with cache algorithms Cache * Backend (storage/network) 4

14 Problems with cache algorithms LRU, LFU, LRU-K Cache * Backend (storage/network) 4

15 Problems with cache algorithms LRU, LFU, LRU-K Cache * Backend (storage/network) 4

16 Problems with cache algorithms LRU, LFU, LRU-K Cache * Backend (storage/network) 4

17 Problems with cache algorithms LRU, LFU, LRU-K Cache * Backend (storage/network) 4

18 Problems with cache algorithms LRU, LFU, LRU-K Cache data likely to be accessed in the future Cache * Backend (storage/network) 4

19 Problems with cache algorithms Cache LRU, LFU, LRU-K Cache data likely to be accessed in the future Optimize global efficiency * Backend (storage/network) 4

20 Problems with cache algorithms Cache * Backend (storage/network) LRU, LFU, LRU-K Cache data likely to be accessed in the future Optimize global efficiency Single user gets arbitrarily small cache 4

21 Problems with cache algorithms Cache * Backend (storage/network) LRU, LFU, LRU-K Cache data likely to be accessed in the future Optimize global efficiency Single user gets arbitrarily small cache 4

22 Problems with cache algorithms Cache * Backend (storage/network) LRU, LFU, LRU-K Cache data likely to be accessed in the future Optimize global efficiency Single user gets arbitrarily small cache 4

23 Problems with cache algorithms Cache * Backend (storage/network) LRU, LFU, LRU-K Cache data likely to be accessed in the future Optimize global efficiency Single user gets arbitrarily small cache Prone to strategic behavior 4

24 Problems with cache algorithms Cache * Backend (storage/network) LRU, LFU, LRU-K Cache data likely to be accessed in the future Optimize global efficiency Single user gets arbitrarily small cache Prone to strategic behavior 4

25 Problems with cache algorithms Cache * Backend (storage/network) LRU, LFU, LRU-K Cache data likely to be accessed in the future Optimize global efficiency Single user gets arbitrarily small cache Prone to strategic behavior 4

26 Solution? Statically allocated Cache Cache Cache Backend (storage/network)

27 Solution? Statically allocated Cache Cache Cache Backend (storage/network) Isolation Strategy-proof

28 What we want Statically allocated Globally shared Cache Cache Cache Cache * Backend (storage/network) Isolation Strategy-proof Backend (storage/network) 6

29 What we want Statically allocated Globally shared Cache Cache Cache Cache * Backend (storage/network) Isolation Strategy-proof Backend (storage/network) Higher utilization Share data 6

30 What we want Statically allocated Globally shared Cache Cache Cache Cache * Backend (storage/network) Isolation Strategy-proof Backend (storage/network) Higher utilization Share data 6

31 Our contribution 7

32 Our contribution First analysis of cache allocation policies with well defined resource-sharing properties. 7

33 Our contribution First analysis of cache allocation policies with well defined resource-sharing properties. Impossibility result: no policy achieves all good properties! 7

34 Our contribution First analysis of cache allocation policies with well defined resource-sharing properties. Impossibility result: no policy achieves all good properties! A new policy that is near-optimal and outperforms other policies when users cheat. 7

35 A simple model 8

36 A simple model Users access equal-sized files at constant rates r ij the rate user i accesses file j 8

37 A simple model Users access equal-sized files at constant rates r ij the rate user i accesses file j A allocation policy decides which files to cache p j the % of file j put in cache 8

38 A simple model Users access equal-sized files at constant rates r ij the rate user i accesses file j A allocation policy decides which files to cache p j the % of file j put in cache Users care their hit ratio user i s hit ratio: 8

39 A simple model Users access equal-sized files at constant rates r ij the rate user i accesses file j A allocation policy decides which files to cache p j the % of file j put in cache Users care their hit ratio user i s hit ratio: HR i = total _ hits total _ accesses = å j år ij j p j r ij 8

40 A simple model Users access equal-sized files at constant rates r ij the rate user i accesses file j A allocation policy decides which files to cache p j the % of file j put in cache Users care their hit ratio user i s hit ratio: HR i = total _ hits total _ accesses = å j år ij j p j r ij Results hold with varied file sizes, access partial files, p j is binary, etc. 8

41 Outline What properties do we want? Can we extend max-min to solve the problem? How do we solve it? (FairRide) How well does FairRide work in practice? 9

42 Properties Isolation Guarantee No user should be worse off than static allocation 10

43 Properties Isolation Guarantee No user should be worse off than static allocation Strategy-Proofness No user can improve by cheating 10

44 Properties Isolation Guarantee No user should be worse off than static allocation Strategy-Proofness No user can improve by cheating Pareto Efficiency Can t improve a user without hurting others 10

45 Strategy proofness 11

46 Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses 11

47 Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice 11

48 Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site2 MySQL Instance 11

49 Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site2 Amazon Elasticache * MySQL Instance 11

50 miss ratio (%) Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site Amazon Elasticache * MySQL Instance 6 0 site1 site time (min) 11

51 miss ratio (%) Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site Amazon Elasticache * MySQL Instance 6 0 site1 site time (min) 11

52 miss ratio (%) Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site Amazon Elasticache * MySQL Instance 6 0 site1 site time (min) 11

53 miss ratio (%) Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site Amazon Elasticache * MySQL Instance 6 0 site1 site time (min) 11

54 miss ratio (%) Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site Amazon Elasticache * MySQL Instance 6 0 site1 site time (min) 11

55 miss ratio (%) Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site Amazon Elasticache * MySQL Instance 6 0 site1 site time (min) 11

56 miss ratio (%) Strategy proofness Very easy to cheat, hard to detect e.g., by making spurious accesses Can happen in practice Site1 Site2 18 Amazon Elasticache * MySQL Instance site1 site2 2x time (min) 11

57 Properties Isolation Guarantee No user should be worse off than static allocation Strategy-Proofness No user can improve by cheating Pareto Efficiency Can t improve a user without hurting others 12

58 Outline What properties do we want? Can we extend max-min fairness to solve the problem? How do we solve it? (FairRide) How well does FairRide work in practice? 13

59 What is max-min fairness? 14

60 What is max-min fairness? Maximize the the user with minimum allocation Solution: allocate each 1/n (fair share) 33% 33% 33% 14

61 What is max-min fairness? Maximize the the user with minimum allocation Solution: allocate each 1/n (fair share) 33% 33% 33% Handles if some users want less than fair share 20% 40% 40% 14

62 What is max-min fairness? Maximize the the user with minimum allocation Solution: allocate each 1/n (fair share) 33% 33% 33% Handles if some users want less than fair share 20% 40% 40% Widely successful to other resources: OS: round robin, prop sharing, lottery sched Networking: fair queueing, wfq, wf2q, csfq, drr Datacenter: DRF, Hadoop fair sched, Quincy 14

63 An example 15

64 An example A B C 15

65 An example Alice A B Bob C 15

66 An example Alice 5 req/sec A B Bob 5 req/sec C 15

67 An example Alice 5 req/sec A GB Bob 5 req/sec B C file sizes = 1GB, total cache = 2GB 15

68 An example Alice 5 req/sec A GB Bob 5 req/sec B 100% C file sizes = 1GB, total cache = 2GB 15

69 An example Alice 5 req/sec A B GB Bob 5 req/sec B 100% C file sizes = 1GB, total cache = 2GB 15

70 An example Alice 5 req/sec A A B GB Bob 5 req/sec B 100% C file sizes = 1GB, total cache = 2GB 15

71 An example Alice A B GB 5 req/sec A 50% B 100% Bob 5 req/sec C file sizes = 1GB, total cache = 2GB 15

72 An example Alice 5 req/sec A 50% A Bob B C GB 5 req/sec B 100% C 50% file sizes = 1GB, total cache = 2GB 15

73 An example Alice HR = 83.3% A Bob B C GB 5 req/sec A 5 req/sec 50% B 100% C 50% file sizes = 1GB, total cache = 2GB 15

74 An example Alice HR = 83.3% A Bob HR = 83.3% B C GB 5 req/sec A 5 req/sec 50% B 100% C 50% file sizes = 1GB, total cache = 2GB 15

75 Properties max-min fairness Isolation Guarantee Strategy Proofness Pareto Efficiency 16

76 Properties max-min fairness Isolation Guarantee Strategy Proofness Pareto Efficiency 16

77 Properties Isolation Guarantee max-min fairness? Strategy Proofness Pareto Efficiency 16

78 An example Alice HR = 83.3% A B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec 50% B 100% C 50% file sizes = 1GB, total cache = 2GB 17

79 An example Alice HR = 83.3% A B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec 50% B 100% C 50% file sizes = 1GB, total cache = 2GB 17

80 An example Alice HR = 83.3% Bob HR = 83.3% 5 req/sec A Is it possible for a strategic Bob to 5 req/sec 50% get higher hit rate from the system? B A B C GB 100% C 50% file sizes = 1GB, total cache = 2GB 17

81 An example Alice HR = 83.3% A B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec 50% B 100% C 50% file sizes = 1GB, total cache = 2GB 17

82 An example Alice HR = 83.3% A B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec +10 req/sec 50% B 100% C 50% file sizes = 1GB, total cache = 2GB 17

83 An example Alice HR = 83.3% A B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec +10 req/sec 50% B 100% C 100% 50% file sizes = 1GB, total cache = 2GB 17

84 An example Alice HR = 83.3% A B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec +10 req/sec 50% B 50% 100% C 100% 50% file sizes = 1GB, total cache = 2GB 17

85 An example Alice HR = 83.3% B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec +10 req/sec B 100% 50% 100% C 100% 50% file sizes = 1GB, total cache = 2GB 17

86 An example Alice HR = 83.3% B C GB Bob HR = 83.3% 5 req/sec A 5 req/sec +10 req/sec B 100% 50% 100% C 100% 50% file sizes = 1GB, total cache = 2GB 17

87 An example Alice HR = 83.3% B C GB Bob HR = 83.3% 100% 5 req/sec A 5 req/sec +10 req/sec B 100% 50% 100% C 100% 50% file sizes = 1GB, total cache = 2GB 17

88 An example Alice HR = 83.3% B C GB Bob HR = 83.3% 100% 5 req/sec A 5 req/sec +10 req/sec B 100% 50% 100% C 100% 50% file sizes = 1GB, total cache = 2GB 17

89 An example Alice HR = 83.3% 66.7% B C GB Bob HR = 83.3% 100% 5 req/sec A 5 req/sec +10 req/sec B 100% 50% 100% C 100% 50% file sizes = 1GB, total cache = 2GB 17

90 An example Alice HR = 83.3% 66.7% B C GB Bob HR = 83.3% 100% 5 req/sec A 5 req/sec +10 req/sec B 100% 50% 100% By gaming the system, a user can C 100% 50% increase performance by hurting others! file sizes = 1GB, total cache = 2GB 17

91 Properties max-min fairness Isolation Guarantee Strategy Proofness Pareto Efficiency 18

92 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness 18

93 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation 18

94 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation priority allocation 18

95 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation priority allocation max-min rate 18

96 Theorem No allocation policy can satisfy all three properties! 19

97 Theorem No allocation policy can satisfy all three properties! Best we can do: two of three. 19

98 What makes cache sharing different? 20

99 What makes cache sharing different? Unlike CPU or network links: 20

100 What makes cache sharing different? Unlike CPU or network links: The cost of switching is high Cache misses go to slow storage Prevents efficient time multiplexing 20

101 What makes cache sharing different? Unlike CPU or network links: The cost of switching is high Cache misses go to slow storage Prevents efficient time multiplexing Can be shared in space Shared data can be accessed non-exclusively A CPU cycle used by only one thread A network link sends one packet at a time 20

102 Outline What properties do we want? Can we extend max-min to solve the problem? How do we solve it? (FairRide) How well does FairRide work in practice? 21

103 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation priority allocation max-min rate 103

104 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation priority allocation max-min rate FairRide 104

105 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation priority allocation max-min rate FairRide 105

106 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation priority allocation max-min rate FairRide Near-optimal 106

107 FairRide 107

108 FairRide Starts with max-min fairness Allocate 1/n to each user Split cost of shared files equally among shared users 108

109 FairRide Starts with max-min fairness Allocate 1/n to each user Split cost of shared files equally among shared users Only difference: blocking users who don t pay from accessing 109

110 FairRide Starts with max-min fairness Allocate 1/n to each user Split cost of shared files equally among shared users Only difference: blocking users who don t pay from accessing Probabilistic blocking: with some probability 110

111 FairRide Starts with max-min fairness Allocate 1/n to each user Split cost of shared files equally among shared users Only difference: blocking users who don t pay from accessing Probabilistic blocking: with some probability Implemented with delaying 111

112 FairRide: Blocking Alice A B C GB Bob HR = 83.3% 100% 5 req/sec +10 req/sec B 100% C 100% 24

113 FairRide: Blocking Alice A B C GB Bob HR = 83.3% 100% 5 req/sec +10 req/sec B 100% C 100% 24

114 FairRide: Blocking Alice B C GB Bob HR = 83.3% 100% 5 req/sec +10 req/sec Allow 5 Block 5 A B 100% C 100% 24

115 FairRide: Blocking Alice B C GB Bob HR = 83.3% 100% 66.7% 5 req/sec +10 req/sec Allow 5 Block 5 A B 100% C 100% 24

116 FairRide: Blocking Alice B C GB Bob HR = 83.3% 100% 66.7% 5 req/sec +10 req/sec Allow 5 Block 5 A B 100% C 100% 24

117 FairRide: Blocking Alice A C GB B 100% Cheating always gives worst performance. Bob HR = 83.3% 100% 66.7% 5 req/sec +10 req/sec Allow 5 Block 5 Dis-incentive strategic behaviors. 100% B C 24

118 Probabilistic blocking 25

119 Probabilistic blocking FairRide blocks a user with p(nj) = 1/(nj+1) probability nj is number of other users caching file j e.g., p(1)=50%, p(4)=20% 25

120 Probabilistic blocking FairRide blocks a user with p(nj) = 1/(nj+1) probability nj is number of other users caching file j e.g., p(1)=50%, p(4)=20% The best you can do in a general case 25

121 Probabilistic blocking FairRide blocks a user with p(nj) = 1/(nj+1) probability nj is number of other users caching file j e.g., p(1)=50%, p(4)=20% The best you can do in a general case Less blocking does not prevent cheating 25

122 Properties Isolation Guarantee Strategy Proofness Pareto Efficiency max-min fairness static allocation priority allocation max-min rate FairRide Near-optimal 122

123 vs. Strategyproofness Paretoefficiency 27

124 vs. Strategyproofness Paretoefficiency More efficient when user cheats Minimal impact on efficiency when no user cheats 27

125 vs. Strategyproofness Paretoefficiency More efficient when user cheats Minimal impact on efficiency when no user cheats Cost of cheating vs. cost of blocking/delaying 27

126 vs. Strategyproofness Paretoefficiency More efficient when user cheats Minimal impact on efficiency when no user cheats Cost of cheating vs. cost of blocking/delaying The latter is small insurance for the former 27

127 vs. Strategyproofness Paretoefficiency More efficient when user cheats Minimal impact on efficiency when no user cheats Cost of cheating vs. cost of blocking/delaying The latter is small insurance for the former Strategy-proofness makes the system stable 27

128 Outline What properties do we want? Can we extend max-min to solve the problem? How do we solve it? (FairRide) How well does FairRide work in practice? 28

129 Evaluation Implemented in Alluxio (formerly Tachyon) FairRide: delay a request as if blocked Compared with max-min fairness. Benchmarked with TPC-H, YCSB, Facebook workloads. 29

130 Evaluation Does FairRide prevent cheating? What is the cost of FairRide? How does it perform end-to-end? 30

131 Avg. response (ms) miss ratio (%) Cheating under Max-min fairness user 1 user Time (s) 31

132 Avg. response (ms) miss ratio (%) Cheating under Max-min fairness user 1 user Time (s) 31

133 Avg. response (ms) miss ratio (%) Cheating under Max-min fairness user 2 cheats user 1 user Time (s) 31

134 Avg. response (ms) miss ratio (%) Cheating under Max-min fairness user 2 cheats user 1 user Time (s) 31

135 Avg. response (ms) miss ratio (%) Cheating under Max-min fairness user 2 cheats user 1 cheats user 1 user Time (s) 31

136 Avg. response (ms) miss ratio (%) Cheating under Max-min fairness user 2 cheats user 1 cheats user 1 user Time (s) 31

137 Avg. response (ms) miss ratio (%) Cheating under Max-min fairness user 2 cheats user 1 cheats user 1 user Time (s) Cheating can greatly hurt user performance. 31

138 Avg. response (ms) miss ratio (%) Cheating under FairRide Time (s) user 1 user 2 32

139 Avg. response (ms) miss ratio (%) Cheating under FairRide Time (s) user 1 user 2 32

140 Avg. response (ms) miss ratio (%) Cheating under FairRide user 2 cheats Time (s) user 1 user 2 32

141 Avg. response (ms) miss ratio (%) Cheating under FairRide user 2 cheats Time (s) user 1 user 2 32

142 Avg. response (ms) miss ratio (%) Cheating under FairRide user 2 cheats Time (s) user 1 cheats user 1 user 2 32

143 Avg. response (ms) miss ratio (%) Cheating under FairRide user 2 cheats Time (s) user 1 cheats user 1 user 2 FairRide dis-incentives users from cheating. 32

144 Avg. response (ms) Avg. miss ratio (%) Many users strategic users other users No. of strategic users (out of 20) 33

145 Avg. response (ms) Avg. miss ratio (%) Many users FairRide: 351ms 333 strategic users other users No. of strategic users (out of 20) 33

146 Avg. response (ms) Avg. miss ratio (%) Many users FairRide: 351ms 333 strategic users other users No. of strategic users (out of 20) 33

147 Avg. response (ms) Avg. miss ratio (%) Many users FairRide: 351ms 333 strategic users other users No. of strategic users (out of 20) FairRide has minimal loss. 33

148 Redcution in Median Job Time (%) Facebook experiments max-min FairRide Bin (#Tasks) 34

149 Redcution in Median Job Time (%) Facebook experiments max-min FairRide Bin (#Tasks) FairRide outperforms max-min fairness by 29% 34

150 Conclusion No policy can satisfy all desirable properties: Isolation guarantee Strategy proofness Pareto efficiency 35

151 Conclusion No policy can satisfy all desirable properties: Isolation guarantee Strategy proofness Pareto efficiency FairRide:isolation guarantee and strategyproofness through probabilistic blocking. Outperforms static allocation and other sharing policies when users cheat. Achieves this with least overhead 35

Cache Management for In Memory. Jun ZHANG Oct 15, 2018

Cache Management for In Memory. Jun ZHANG Oct 15, 2018 Cache Management for In Memory Analytics Jun ZHANG Oct 15, 2018 1 Outline 1. Introduction 2. LRC: Dependency aware caching 3. OpuS: Fair cache sharing in multi tenant cloud 4. SP Cache: Load balancing

More information

Key aspects of cloud computing. Towards fuller utilization. Two main sources of resource demand. Cluster Scheduling

Key aspects of cloud computing. Towards fuller utilization. Two main sources of resource demand. Cluster Scheduling Key aspects of cloud computing Cluster Scheduling 1. Illusion of infinite computing resources available on demand, eliminating need for up-front provisioning. The elimination of an up-front commitment

More information

Ali Ghodsi, Matei Zaharia, Benjamin Hindman, Andy Konwinski, Scott Shenker, Ion Stoica. University of California, Berkeley nsdi 11

Ali Ghodsi, Matei Zaharia, Benjamin Hindman, Andy Konwinski, Scott Shenker, Ion Stoica. University of California, Berkeley nsdi 11 Dominant Resource Fairness: Fair Allocation of Multiple Resource Types Ali Ghodsi, Matei Zaharia, Benjamin Hindman, Andy Konwinski, Scott Shenker, Ion Stoica University of California, Berkeley nsdi 11

More information

Today s Papers. Composability is Essential. The Future is Parallel Software. EECS 262a Advanced Topics in Computer Systems Lecture 13

Today s Papers. Composability is Essential. The Future is Parallel Software. EECS 262a Advanced Topics in Computer Systems Lecture 13 EECS 262a Advanced Topics in Computer Systems Lecture 13 Resource allocation: Lithe/DRF October 16 th, 2012 Today s Papers Composing Parallel Software Efficiently with Lithe Heidi Pan, Benjamin Hindman,

More information

Key aspects of cloud computing. Towards fuller utilization. Two main sources of resource demand. Cluster Scheduling

Key aspects of cloud computing. Towards fuller utilization. Two main sources of resource demand. Cluster Scheduling Key aspects of cloud computing Cluster Scheduling 1. Illusion of infinite computing resources available on demand, eliminating need for up-front provisioning. The elimination of an up-front commitment

More information

Mesos: Mul)programing for Datacenters

Mesos: Mul)programing for Datacenters Mesos: Mul)programing for Datacenters Ion Stoica Joint work with: Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony D. Joseph, Randy Katz, ScoC Shenker, UC BERKELEY Mo)va)on Rapid innovaeon

More information

Sparrow. Distributed Low-Latency Spark Scheduling. Kay Ousterhout, Patrick Wendell, Matei Zaharia, Ion Stoica

Sparrow. Distributed Low-Latency Spark Scheduling. Kay Ousterhout, Patrick Wendell, Matei Zaharia, Ion Stoica Sparrow Distributed Low-Latency Spark Scheduling Kay Ousterhout, Patrick Wendell, Matei Zaharia, Ion Stoica Outline The Spark scheduling bottleneck Sparrow s fully distributed, fault-tolerant technique

More information

Mesos: A Pla+orm for Fine- Grained Resource Sharing in the Data Center

Mesos: A Pla+orm for Fine- Grained Resource Sharing in the Data Center Mesos: A Pla+orm for Fine- Grained Resource Sharing in the Data Center Ion Stoica, UC Berkeley Joint work with: A. Ghodsi, B. Hindman, A. Joseph, R. Katz, A. Konwinski, S. Shenker, and M. Zaharia Challenge

More information

Memshare: a Dynamic Multi-tenant Key-value Cache

Memshare: a Dynamic Multi-tenant Key-value Cache Memshare: a Dynamic Multi-tenant Key-value Cache ASAF CIDON*, DANIEL RUSHTON, STEPHEN M. RUMBLE, RYAN STUTSMAN *STANFORD UNIVERSITY, UNIVERSITY OF UTAH, GOOGLE INC. 1 Cache is 100X Faster Than Database

More information

LRC: Dependency-Aware Cache Management for Data Analytics Clusters. Yinghao Yu, Wei Wang, Jun Zhang, and Khaled B. Letaief IEEE INFOCOM 2017

LRC: Dependency-Aware Cache Management for Data Analytics Clusters. Yinghao Yu, Wei Wang, Jun Zhang, and Khaled B. Letaief IEEE INFOCOM 2017 LRC: Dependency-Aware Cache Management for Data Analytics Clusters Yinghao Yu, Wei Wang, Jun Zhang, and Khaled B. Letaief IEEE INFOCOM 2017 Outline Cache Management for Data Analytics Clusters Inefficiency

More information

CSE 451: Operating Systems. Section 10 Project 3 wrap-up, final exam review

CSE 451: Operating Systems. Section 10 Project 3 wrap-up, final exam review CSE 451: Operating Systems Section 10 Project 3 wrap-up, final exam review Final exam review Goal of this section: key concepts you should understand Not just a summary of lectures Slides coverage and

More information

Fair Queueing. Presented by Brighten Godfrey. Slides thanks to Ion Stoica (UC Berkeley) with slight adaptation by Brighten Godfrey

Fair Queueing. Presented by Brighten Godfrey. Slides thanks to Ion Stoica (UC Berkeley) with slight adaptation by Brighten Godfrey Fair Queueing Presented by Brighten Godfrey Slides thanks to Ion Stoica (UC Berkeley) with slight adaptation by Brighten Godfrey Traditional queueing Traditional Internet - Congestion control mechanisms

More information

Second Midterm Exam March 21, 2017 CS162 Operating Systems

Second Midterm Exam March 21, 2017 CS162 Operating Systems University of California, Berkeley College of Engineering Computer Science Division EECS Spring 2017 Ion Stoica Second Midterm Exam March 21, 2017 CS162 Operating Systems Your Name: SID AND 162 Login:

More information

Real-Time Internet of Things

Real-Time Internet of Things Real-Time Internet of Things Chenyang Lu Cyber-Physical Systems Laboratory h7p://www.cse.wustl.edu/~lu/ Internet of Things Ø Convergence of q Miniaturized devices: integrate processor, sensors and radios.

More information

IX: A Protected Dataplane Operating System for High Throughput and Low Latency

IX: A Protected Dataplane Operating System for High Throughput and Low Latency IX: A Protected Dataplane Operating System for High Throughput and Low Latency Belay, A. et al. Proc. of the 11th USENIX Symp. on OSDI, pp. 49-65, 2014. Reviewed by Chun-Yu and Xinghao Li Summary In this

More information

Operating Systems. Scheduling

Operating Systems. Scheduling Operating Systems Scheduling Process States Blocking operation Running Exit Terminated (initiate I/O, down on semaphore, etc.) Waiting Preempted Picked by scheduler Event arrived (I/O complete, semaphore

More information

Balancing Fairness and Efficiency in Tiered Storage Systems with Bottleneck-Aware Allocation

Balancing Fairness and Efficiency in Tiered Storage Systems with Bottleneck-Aware Allocation Balancing Fairness and Efficiency in Tiered Storage Systems with Bottleneck-Aware Allocation Hui Wang, Peter Varman Rice University FAST 14, Feb 2014 Tiered Storage Tiered storage: HDs and SSDs q Advantages:

More information

XCP: explicit Control Protocol

XCP: explicit Control Protocol XCP: explicit Control Protocol Dina Katabi MIT Lab for Computer Science dk@mit.edu www.ana.lcs.mit.edu/dina Sharing the Internet Infrastructure Is fundamental Much research in Congestion Control, QoS,

More information

CS140 Operating Systems Midterm Review. Feb. 5 th, 2009 Derrick Isaacson

CS140 Operating Systems Midterm Review. Feb. 5 th, 2009 Derrick Isaacson CS140 Operating Systems Midterm Review Feb. 5 th, 2009 Derrick Isaacson Midterm Quiz Tues. Feb. 10 th In class (4:15-5:30 Skilling) Open book, open notes (closed laptop) Bring printouts You won t have

More information

Multidimensional Scheduling (Polytope Scheduling Problem) Competitive Algorithms from Competitive Equilibria

Multidimensional Scheduling (Polytope Scheduling Problem) Competitive Algorithms from Competitive Equilibria Multidimensional Scheduling (Polytope Scheduling Problem) Competitive Algorithms from Competitive Equilibria Sungjin Im University of California, Merced (UC Merced) Janardhan Kulkarni (MSR) Kamesh Munagala

More information

Algorithms, Games, and Networks March 28, Lecture 18

Algorithms, Games, and Networks March 28, Lecture 18 Algorithms, Games, and Networks March 28, 2013 Lecturer: Ariel Procaccia Lecture 18 Scribe: Hanzhang Hu 1 Strategyproof Cake Cutting All cake cutting algorithms we have discussed in previous lectures are

More information

Abstract. Testing Parameters. Introduction. Hardware Platform. Native System

Abstract. Testing Parameters. Introduction. Hardware Platform. Native System Abstract In this paper, we address the latency issue in RT- XEN virtual machines that are available in Xen 4.5. Despite the advantages of applying virtualization to systems, the default credit scheduler

More information

A Platform for Fine-Grained Resource Sharing in the Data Center

A Platform for Fine-Grained Resource Sharing in the Data Center Mesos A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony Joseph, Randy Katz, Scott Shenker, Ion Stoica University of California,

More information

CS Advanced Operating Systems Structures and Implementation Lecture 18. Dominant Resource Fairness Two-Level Scheduling.

CS Advanced Operating Systems Structures and Implementation Lecture 18. Dominant Resource Fairness Two-Level Scheduling. Goals for Today CS194-24 Advanced Operating Systems Structures and Implementation Lecture 18 Dominant Resource Fairness Two-Level Scheduling April 7 th, 2014 Prof. John Kubiatowicz http://inst.eecs.berkeley.edu/~cs194-24

More information

Beyond Beyond Dominant Resource Fairness : Indivisible Resource Allocation In Clusters

Beyond Beyond Dominant Resource Fairness : Indivisible Resource Allocation In Clusters Beyond Beyond Dominant Resource Fairness : Indivisible Resource Allocation In Clusters Abstract Christos-Alexandros Psomas alexpsomi@gmail.com Jarett Schwartz jarett@cs.berkeley.edu Resource allocation

More information

UNIFY DATA AT MEMORY SPEED. Haoyuan (HY) Li, Alluxio Inc. VAULT Conference 2017

UNIFY DATA AT MEMORY SPEED. Haoyuan (HY) Li, Alluxio Inc. VAULT Conference 2017 UNIFY DATA AT MEMORY SPEED Haoyuan (HY) Li, CEO @ Alluxio Inc. VAULT Conference 2017 March 2017 HISTORY Started at UC Berkeley AMPLab In Summer 2012 Originally named as Tachyon Rebranded to Alluxio in

More information

Multi-Resource Fair Queueing for Packet Processing

Multi-Resource Fair Queueing for Packet Processing Multi-Resource Fair Queueing for Packet Processing Ali Ghodsi Vyas Sekar Matei Zaharia Ion Stoica Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report No.

More information

Congestion Control In the Network

Congestion Control In the Network Congestion Control In the Network Brighten Godfrey cs598pbg September 9 2010 Slides courtesy Ion Stoica with adaptation by Brighten Today Fair queueing XCP Announcements Problem: no isolation between flows

More information

Hierarchical Scheduling for Diverse Datacenter Workloads

Hierarchical Scheduling for Diverse Datacenter Workloads Hierarchical Scheduling for Diverse Datacenter Workloads Arka A. Bhattacharya 1, David Culler 1, Eric Friedman 2, Ali Ghodsi 1, Scott Shenker 1, and Ion Stoica 1 1 University of California, Berkeley 2

More information

Review. Preview. Three Level Scheduler. Scheduler. Process behavior. Effective CPU Scheduler is essential. Process Scheduling

Review. Preview. Three Level Scheduler. Scheduler. Process behavior. Effective CPU Scheduler is essential. Process Scheduling Review Preview Mutual Exclusion Solutions with Busy Waiting Test and Set Lock Priority Inversion problem with busy waiting Mutual Exclusion with Sleep and Wakeup The Producer-Consumer Problem Race Condition

More information

Operating Systems. Lecture Process Scheduling. Golestan University. Hossein Momeni

Operating Systems. Lecture Process Scheduling. Golestan University. Hossein Momeni Operating Systems Lecture 2.2 - Process Scheduling Golestan University Hossein Momeni momeni@iust.ac.ir Scheduling What is scheduling? Goals Mechanisms Scheduling on batch systems Scheduling on interactive

More information

CS Computer Systems. Lecture 6: Process Scheduling

CS Computer Systems. Lecture 6: Process Scheduling CS 5600 Computer Systems Lecture 6: Process Scheduling Scheduling Basics Simple Schedulers Priority Schedulers Fair Share Schedulers Multi-CPU Scheduling Case Study: The Linux Kernel 2 Setting the Stage

More information

Scheduling, part 2. Don Porter CSE 506

Scheduling, part 2. Don Porter CSE 506 Scheduling, part 2 Don Porter CSE 506 Logical Diagram Binary Memory Formats Allocators Threads Today s Lecture Switching System to CPU Calls RCU scheduling File System Networking Sync User Kernel Memory

More information

CS268: Beyond TCP Congestion Control

CS268: Beyond TCP Congestion Control TCP Problems CS68: Beyond TCP Congestion Control Ion Stoica February 9, 004 When TCP congestion control was originally designed in 1988: - Key applications: FTP, E-mail - Maximum link bandwidth: 10Mb/s

More information

Scheduling II. Today. Next Time. ! Proportional-share scheduling! Multilevel-feedback queue! Multiprocessor scheduling. !

Scheduling II. Today. Next Time. ! Proportional-share scheduling! Multilevel-feedback queue! Multiprocessor scheduling. ! Scheduling II Today! Proportional-share scheduling! Multilevel-feedback queue! Multiprocessor scheduling Next Time! Memory management Scheduling with multiple goals! What if you want both good turnaround

More information

First-In-First-Out (FIFO) Algorithm

First-In-First-Out (FIFO) Algorithm First-In-First-Out (FIFO) Algorithm Reference string: 7,0,1,2,0,3,0,4,2,3,0,3,0,3,2,1,2,0,1,7,0,1 3 frames (3 pages can be in memory at a time per process) 15 page faults Can vary by reference string:

More information

COMP/ELEC 429/556 Introduction to Computer Networks

COMP/ELEC 429/556 Introduction to Computer Networks COMP/ELEC 429/556 Introduction to Computer Networks Weighted Fair Queuing Some slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang T. S. Eugene Ng eugeneng at cs.rice.edu

More information

SOFTWARE-DEFINED MEMORY HIERARCHIES: SCALABILITY AND QOS IN THOUSAND-CORE SYSTEMS

SOFTWARE-DEFINED MEMORY HIERARCHIES: SCALABILITY AND QOS IN THOUSAND-CORE SYSTEMS SOFTWARE-DEFINED MEMORY HIERARCHIES: SCALABILITY AND QOS IN THOUSAND-CORE SYSTEMS DANIEL SANCHEZ MIT CSAIL IAP MEETING MAY 21, 2013 Research Agenda Lack of technology progress Moore s Law still alive Power

More information

Example: CPU-bound process that would run for 100 quanta continuously 1, 2, 4, 8, 16, 32, 64 (only 37 required for last run) Needs only 7 swaps

Example: CPU-bound process that would run for 100 quanta continuously 1, 2, 4, 8, 16, 32, 64 (only 37 required for last run) Needs only 7 swaps Interactive Scheduling Algorithms Continued o Priority Scheduling Introduction Round-robin assumes all processes are equal often not the case Assign a priority to each process, and always choose the process

More information

Locality of Reference

Locality of Reference Locality of Reference 1 In view of the previous discussion of secondary storage, it makes sense to design programs so that data is read from and written to disk in relatively large chunks but there is

More information

Enlightening the I/O Path: A Holistic Approach for Application Performance

Enlightening the I/O Path: A Holistic Approach for Application Performance Enlightening the I/O Path: A Holistic Approach for Application Performance Sangwook Kim 13, Hwanju Kim 2, Joonwon Lee 3, and Jinkyu Jeong 3 Apposha 1 Dell EMC 2 Sungkyunkwan University 3 Data-Intensive

More information

!! What is virtual memory and when is it useful? !! What is demand paging? !! When should pages in memory be replaced?

!! What is virtual memory and when is it useful? !! What is demand paging? !! When should pages in memory be replaced? Chapter 10: Virtual Memory Questions? CSCI [4 6] 730 Operating Systems Virtual Memory!! What is virtual memory and when is it useful?!! What is demand paging?!! When should pages in memory be replaced?!!

More information

Empirical Evaluation of Latency-Sensitive Application Performance in the Cloud

Empirical Evaluation of Latency-Sensitive Application Performance in the Cloud Empirical Evaluation of Latency-Sensitive Application Performance in the Cloud Sean Barker and Prashant Shenoy University of Massachusetts Amherst Department of Computer Science Cloud Computing! Cloud

More information

Balancing DRAM Locality and Parallelism in Shared Memory CMP Systems

Balancing DRAM Locality and Parallelism in Shared Memory CMP Systems Balancing DRAM Locality and Parallelism in Shared Memory CMP Systems Min Kyu Jeong, Doe Hyun Yoon^, Dam Sunwoo*, Michael Sullivan, Ikhwan Lee, and Mattan Erez The University of Texas at Austin Hewlett-Packard

More information

Spring 2016 :: CSE 502 Computer Architecture. Caches. Nima Honarmand

Spring 2016 :: CSE 502 Computer Architecture. Caches. Nima Honarmand Caches Nima Honarmand Motivation 10000 Performance 1000 100 10 Processor Memory 1 1985 1990 1995 2000 2005 2010 Want memory to appear: As fast as CPU As large as required by all of the running applications

More information

Episode 5. Scheduling and Traffic Management

Episode 5. Scheduling and Traffic Management Episode 5. Scheduling and Traffic Management Part 2 Baochun Li Department of Electrical and Computer Engineering University of Toronto Keshav Chapter 9.1, 9.2, 9.3, 9.4, 9.5.1, 13.3.4 ECE 1771: Quality

More information

Page 1. Multilevel Memories (Improving performance using a little cash )

Page 1. Multilevel Memories (Improving performance using a little cash ) Page 1 Multilevel Memories (Improving performance using a little cash ) 1 Page 2 CPU-Memory Bottleneck CPU Memory Performance of high-speed computers is usually limited by memory bandwidth & latency Latency

More information

Datacenter Simulation Methodologies Case Studies

Datacenter Simulation Methodologies Case Studies This work is supported by NSF grants CCF-1149252, CCF-1337215, and STARnet, a Semiconductor Research Corporation Program, sponsored by MARCO and DARPA. Datacenter Simulation Methodologies Case Studies

More information

MicroFuge: A Middleware Approach to Providing Performance Isolation in Cloud Storage Systems

MicroFuge: A Middleware Approach to Providing Performance Isolation in Cloud Storage Systems 1 MicroFuge: A Middleware Approach to Providing Performance Isolation in Cloud Storage Systems Akshay Singh, Xu Cui, Benjamin Cassell, Bernard Wong and Khuzaima Daudjee July 3, 2014 2 Storage Resources

More information

Page Replacement Algorithms

Page Replacement Algorithms Page Replacement Algorithms MIN, OPT (optimal) RANDOM evict random page FIFO (first-in, first-out) give every page equal residency LRU (least-recently used) MRU (most-recently used) 1 9.1 Silberschatz,

More information

Beyond Beyond Dominant Resource Fairness : Indivisible Resource Allocation In Clusters

Beyond Beyond Dominant Resource Fairness : Indivisible Resource Allocation In Clusters Beyond Beyond Dominant Resource Fairness : Indivisible Resource Allocation In Clusters Abstract Christos-Alexandros Psomas alexpsomi@gmail.com Jarett Schwartz jarett@cs.berkeley.edu Resource Allocation

More information

Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center

Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman Andrew Konwinski Matei Zaharia Ali Ghodsi Anthony D. Joseph Randy H. Katz Scott Shenker Ion Stoica Electrical Engineering

More information

Varys. Efficient Coflow Scheduling. Mosharaf Chowdhury, Yuan Zhong, Ion Stoica. UC Berkeley

Varys. Efficient Coflow Scheduling. Mosharaf Chowdhury, Yuan Zhong, Ion Stoica. UC Berkeley Varys Efficient Coflow Scheduling Mosharaf Chowdhury, Yuan Zhong, Ion Stoica UC Berkeley Communication is Crucial Performance Facebook analytics jobs spend 33% of their runtime in communication 1 As in-memory

More information

Choosy: Max-Min Fair Sharing for Datacenter Jobs with Constraints

Choosy: Max-Min Fair Sharing for Datacenter Jobs with Constraints Choosy: Max-Min Fair Sharing for Datacenter Jobs with Constraints Ali Ghodsi Matei Zaharia Scott Shenker Ion Stoica UC Berkeley {alig,matei,shenker,istoica}@cs.berkeley.edu Abstract Max-Min Fairness is

More information

Episode 5. Scheduling and Traffic Management

Episode 5. Scheduling and Traffic Management Episode 5. Scheduling and Traffic Management Part 2 Baochun Li Department of Electrical and Computer Engineering University of Toronto Outline What is scheduling? Why do we need it? Requirements of a scheduling

More information

Fair Multi-Resource Allocation with External Resource for Mobile Edge Computing

Fair Multi-Resource Allocation with External Resource for Mobile Edge Computing Fair Multi-Resource Allocation with External Resource for Mobile Edge Computing Erfan Meskar and Ben Liang Department of Electrical and Computer Engineering, University of Toronto emeskar, liang@ece.utoronto.ca

More information

RxNetty vs Tomcat Performance Results

RxNetty vs Tomcat Performance Results RxNetty vs Tomcat Performance Results Brendan Gregg; Performance and Reliability Engineering Nitesh Kant, Ben Christensen; Edge Engineering updated: Apr 2015 Results based on The Hello Netflix benchmark

More information

Tales of the Tail Hardware, OS, and Application-level Sources of Tail Latency

Tales of the Tail Hardware, OS, and Application-level Sources of Tail Latency Tales of the Tail Hardware, OS, and Application-level Sources of Tail Latency Jialin Li, Naveen Kr. Sharma, Dan R. K. Ports and Steven D. Gribble February 2, 2015 1 Introduction What is Tail Latency? What

More information

OASIS: Self-tuning Storage for Applications

OASIS: Self-tuning Storage for Applications OASIS: Self-tuning Storage for Applications Kostas Magoutis, Prasenjit Sarkar, Gauri Shah 14 th NASA Goddard- 23 rd IEEE Mass Storage Systems Technologies, College Park, MD, May 17, 2006 Outline Motivation

More information

CSE502: Computer Architecture CSE 502: Computer Architecture

CSE502: Computer Architecture CSE 502: Computer Architecture CSE 502: Computer Architecture Memory Hierarchy & Caches Motivation 10000 Performance 1000 100 10 Processor Memory 1 1985 1990 1995 2000 2005 2010 Want memory to appear: As fast as CPU As large as required

More information

Pricing Intra-Datacenter Networks with

Pricing Intra-Datacenter Networks with Pricing Intra-Datacenter Networks with Over-Committed Bandwidth Guarantee Jian Guo 1, Fangming Liu 1, Tao Wang 1, and John C.S. Lui 2 1 Cloud Datacenter & Green Computing/Communications Research Group

More information

Discretized Streams. An Efficient and Fault-Tolerant Model for Stream Processing on Large Clusters

Discretized Streams. An Efficient and Fault-Tolerant Model for Stream Processing on Large Clusters Discretized Streams An Efficient and Fault-Tolerant Model for Stream Processing on Large Clusters Matei Zaharia, Tathagata Das, Haoyuan Li, Scott Shenker, Ion Stoica UC BERKELEY Motivation Many important

More information

Managing Storage: Above the Hardware

Managing Storage: Above the Hardware Managing Storage: Above the Hardware 1 Where we are Last time: hardware HDDs and SSDs Today: how the DBMS uses the hardware to provide fast access to data 2 How DBMS manages storage "Bottom" two layers

More information

VM Migration, Containers (Lecture 12, cs262a)

VM Migration, Containers (Lecture 12, cs262a) VM Migration, Containers (Lecture 12, cs262a) Ali Ghodsi and Ion Stoica, UC Berkeley February 28, 2018 (Based in part on http://web.eecs.umich.edu/~mosharaf/slides/eecs582/w16/021516-junchenglivemigration.pptx)

More information

COMPUTER ARCHITECTURE. Virtualization and Memory Hierarchy

COMPUTER ARCHITECTURE. Virtualization and Memory Hierarchy COMPUTER ARCHITECTURE Virtualization and Memory Hierarchy 2 Contents Virtual memory. Policies and strategies. Page tables. Virtual machines. Requirements of virtual machines and ISA support. Virtual machines:

More information

Episode 5. Scheduling and Traffic Management

Episode 5. Scheduling and Traffic Management Episode 5. Scheduling and Traffic Management Part 3 Baochun Li Department of Electrical and Computer Engineering University of Toronto Outline What is scheduling? Why do we need it? Requirements of a scheduling

More information

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Outline Introduction What s wrong with TCP? Idea of Efficiency vs. Fairness XCP, what is it? Is it

More information

SE Memory Consumption

SE Memory Consumption Page 1 of 5 SE Memory Consumption view online Calculating the utilization of memory within a Service Engine is useful to estimate the number of concurrent connections or the amount of memory that may be

More information

Virtual Machines Disco and Xen (Lecture 10, cs262a) Ion Stoica & Ali Ghodsi UC Berkeley February 26, 2018

Virtual Machines Disco and Xen (Lecture 10, cs262a) Ion Stoica & Ali Ghodsi UC Berkeley February 26, 2018 Virtual Machines Disco and Xen (Lecture 10, cs262a) Ion Stoica & Ali Ghodsi UC Berkeley February 26, 2018 Today s Papers Disco: Running Commodity Operating Systems on Scalable Multiprocessors, Edouard

More information

davidklee.net gplus.to/kleegeek linked.com/a/davidaklee

davidklee.net gplus.to/kleegeek linked.com/a/davidaklee @kleegeek davidklee.net gplus.to/kleegeek linked.com/a/davidaklee Specialties / Focus Areas / Passions: Performance Tuning & Troubleshooting Virtualization Cloud Enablement Infrastructure Architecture

More information

Re- op&mizing Data Parallel Compu&ng

Re- op&mizing Data Parallel Compu&ng Re- op&mizing Data Parallel Compu&ng Sameer Agarwal Srikanth Kandula, Nicolas Bruno, Ming- Chuan Wu, Ion Stoica, Jingren Zhou UC Berkeley A Data Parallel Job can be a collec/on of maps, A Data Parallel

More information

Quality-Assured Cloud Bandwidth Auto-Scaling for Video-on-Demand Applications

Quality-Assured Cloud Bandwidth Auto-Scaling for Video-on-Demand Applications Quality-Assured Cloud Bandwidth Auto-Scaling for Video-on-Demand Applications Di Niu, Hong Xu, Baochun Li University of Toronto Shuqiao Zhao UUSee, Inc., Beijing, China 1 Applications in the Cloud WWW

More information

EECS750: Advanced Operating Systems. 2/24/2014 Heechul Yun

EECS750: Advanced Operating Systems. 2/24/2014 Heechul Yun EECS750: Advanced Operating Systems 2/24/2014 Heechul Yun 1 Administrative Project Feedback of your proposal will be sent by Wednesday Midterm report due on Apr. 2 3 pages: include intro, related work,

More information

CS 425 / ECE 428 Distributed Systems Fall 2015

CS 425 / ECE 428 Distributed Systems Fall 2015 CS 425 / ECE 428 Distributed Systems Fall 2015 Indranil Gupta (Indy) Measurement Studies Lecture 23 Nov 10, 2015 Reading: See links on website All Slides IG 1 Motivation We design algorithms, implement

More information

Mace, J. et al., "2DFQ: Two-Dimensional Fair Queuing for Multi-Tenant Cloud Services," Proc. of ACM SIGCOMM '16, 46(4): , Aug

Mace, J. et al., 2DFQ: Two-Dimensional Fair Queuing for Multi-Tenant Cloud Services, Proc. of ACM SIGCOMM '16, 46(4): , Aug Mace, J. et al., "2DFQ: Two-Dimensional Fair Queuing for Multi-Tenant Cloud Services," Proc. of ACM SIGCOMM '16, 46(4):144-159, Aug. 2016. Introduction Server has limited capacity Requests by clients are

More information

CIS 601 Graduate Seminar. Dr. Sunnie S. Chung Dhruv Patel ( ) Kalpesh Sharma ( )

CIS 601 Graduate Seminar. Dr. Sunnie S. Chung Dhruv Patel ( ) Kalpesh Sharma ( ) Guide: CIS 601 Graduate Seminar Presented By: Dr. Sunnie S. Chung Dhruv Patel (2652790) Kalpesh Sharma (2660576) Introduction Background Parallel Data Warehouse (PDW) Hive MongoDB Client-side Shared SQL

More information

Announcements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5)

Announcements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5) Announcements Reading Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) 1 Relationship between Kernel mod and User Mode User Process Kernel System Calls User Process

More information

CSCI-GA Operating Systems Lecture 3: Processes and Threads -Part 2 Scheduling Hubertus Franke

CSCI-GA Operating Systems Lecture 3: Processes and Threads -Part 2 Scheduling Hubertus Franke CSCI-GA.2250-001 Operating Systems Lecture 3: Processes and Threads -Part 2 Scheduling Hubertus Franke frankeh@cs.nyu.edu Processes Vs Threads The unit of dispatching is referred to as a thread or lightweight

More information

15-744: Computer Networking. Overview. Queuing Disciplines. TCP & Routers. L-6 TCP & Routers

15-744: Computer Networking. Overview. Queuing Disciplines. TCP & Routers. L-6 TCP & Routers TCP & Routers 15-744: Computer Networking RED XCP Assigned reading [FJ93] Random Early Detection Gateways for Congestion Avoidance [KHR02] Congestion Control for High Bandwidth-Delay Product Networks L-6

More information

Accelerating Pointer Chasing in 3D-Stacked Memory: Challenges, Mechanisms, Evaluation Kevin Hsieh

Accelerating Pointer Chasing in 3D-Stacked Memory: Challenges, Mechanisms, Evaluation Kevin Hsieh Accelerating Pointer Chasing in 3D-Stacked : Challenges, Mechanisms, Evaluation Kevin Hsieh Samira Khan, Nandita Vijaykumar, Kevin K. Chang, Amirali Boroumand, Saugata Ghose, Onur Mutlu Executive Summary

More information

CS644 Advanced Networks

CS644 Advanced Networks What we know so far CS644 Advanced Networks Lecture 6 Beyond TCP Congestion Control Andreas Terzis TCP Congestion control based on AIMD window adjustment [Jac88] Saved Internet from congestion collapse

More information

Advanced Computer Architecture

Advanced Computer Architecture ECE 563 Advanced Computer Architecture Fall 2009 Lecture 3: Memory Hierarchy Review: Caches 563 L03.1 Fall 2010 Since 1980, CPU has outpaced DRAM... Four-issue 2GHz superscalar accessing 100ns DRAM could

More information

I, J A[I][J] / /4 8000/ I, J A(J, I) Chapter 5 Solutions S-3.

I, J A[I][J] / /4 8000/ I, J A(J, I) Chapter 5 Solutions S-3. 5 Solutions Chapter 5 Solutions S-3 5.1 5.1.1 4 5.1.2 I, J 5.1.3 A[I][J] 5.1.4 3596 8 800/4 2 8 8/4 8000/4 5.1.5 I, J 5.1.6 A(J, I) 5.2 5.2.1 Word Address Binary Address Tag Index Hit/Miss 5.2.2 3 0000

More information

Towards Deadline Guaranteed Cloud Storage Services Guoxin Liu, Haiying Shen, and Lei Yu

Towards Deadline Guaranteed Cloud Storage Services Guoxin Liu, Haiying Shen, and Lei Yu Towards Deadline Guaranteed Cloud Storage Services Guoxin Liu, Haiying Shen, and Lei Yu Presenter: Guoxin Liu Ph.D. Department of Electrical and Computer Engineering, Clemson University, Clemson, USA Computer

More information

Scheduling in the Supermarket

Scheduling in the Supermarket Scheduling in the Supermarket Consider a line of people waiting in front of the checkout in the grocery store. In what order should the cashier process their purchases? Scheduling Criteria CPU utilization

More information

Next-Generation Cloud Platform

Next-Generation Cloud Platform Next-Generation Cloud Platform Jangwoo Kim Jun 24, 2013 E-mail: jangwoo@postech.ac.kr High Performance Computing Lab Department of Computer Science & Engineering Pohang University of Science and Technology

More information

Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation

Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation Meng Xu Linh Thi Xuan Phan Hyon-Young Choi Insup Lee Department of Computer and Information Science

More information

SRM-Buffer: An OS Buffer Management SRM-Buffer: An OS Buffer Management Technique toprevent Last Level Cache from Thrashing in Multicores

SRM-Buffer: An OS Buffer Management SRM-Buffer: An OS Buffer Management Technique toprevent Last Level Cache from Thrashing in Multicores SRM-Buffer: An OS Buffer Management SRM-Buffer: An OS Buffer Management Technique toprevent Last Level Cache from Thrashing in Multicores Xiaoning Ding The Ohio State University dingxn@cse.ohiostate.edu

More information

Multilevel Memories. Joel Emer Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology

Multilevel Memories. Joel Emer Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology 1 Multilevel Memories Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology Based on the material prepared by Krste Asanovic and Arvind CPU-Memory Bottleneck 6.823

More information

Preemptive, Low Latency Datacenter Scheduling via Lightweight Virtualization

Preemptive, Low Latency Datacenter Scheduling via Lightweight Virtualization Preemptive, Low Latency Datacenter Scheduling via Lightweight Virtualization Wei Chen, Jia Rao*, and Xiaobo Zhou University of Colorado, Colorado Springs * University of Texas at Arlington Data Center

More information

what is cloud computing?

what is cloud computing? what is cloud computing? (Private) Cloud Computing with Mesos at Twi9er Benjamin Hindman @benh scalable virtualized self-service utility managed elastic economic pay-as-you-go what is cloud computing?

More information

CS 268: Computer Networking

CS 268: Computer Networking CS 268: Computer Networking L-6 Router Congestion Control TCP & Routers RED XCP Assigned reading [FJ93] Random Early Detection Gateways for Congestion Avoidance [KHR02] Congestion Control for High Bandwidth-Delay

More information

CS 326: Operating Systems. CPU Scheduling. Lecture 6

CS 326: Operating Systems. CPU Scheduling. Lecture 6 CS 326: Operating Systems CPU Scheduling Lecture 6 Today s Schedule Agenda? Context Switches and Interrupts Basic Scheduling Algorithms Scheduling with I/O Symmetric multiprocessing 2/7/18 CS 326: Operating

More information

Coflow. Recent Advances and What s Next? Mosharaf Chowdhury. University of Michigan

Coflow. Recent Advances and What s Next? Mosharaf Chowdhury. University of Michigan Coflow Recent Advances and What s Next? Mosharaf Chowdhury University of Michigan Rack-Scale Computing Datacenter-Scale Computing Geo-Distributed Computing Coflow Networking Open Source Apache Spark Open

More information

DB2 is a complex system, with a major impact upon your processing environment. There are substantial performance and instrumentation changes in

DB2 is a complex system, with a major impact upon your processing environment. There are substantial performance and instrumentation changes in DB2 is a complex system, with a major impact upon your processing environment. There are substantial performance and instrumentation changes in versions 8 and 9. that must be used to measure, evaluate,

More information

A Comparative Study of High Performance Computing on the Cloud. Lots of authors, including Xin Yuan Presentation by: Carlos Sanchez

A Comparative Study of High Performance Computing on the Cloud. Lots of authors, including Xin Yuan Presentation by: Carlos Sanchez A Comparative Study of High Performance Computing on the Cloud Lots of authors, including Xin Yuan Presentation by: Carlos Sanchez What is The Cloud? The cloud is just a bunch of computers connected over

More information

Wide area networks: packet switching and congestion

Wide area networks: packet switching and congestion Wide area networks: packet switching and congestion Packet switching ATM and Frame Relay Congestion Circuit and Packet Switching Circuit switching designed for voice Resources dedicated to a particular

More information

RobinHood: Tail Latency-Aware Caching Dynamically Reallocating from Cache-Rich to Cache-Poor

RobinHood: Tail Latency-Aware Caching Dynamically Reallocating from Cache-Rich to Cache-Poor RobinHood: Tail Latency-Aware Caching Dynamically Reallocating from -Rich to -Poor Daniel S. Berger (CMU) Joint work with: Benjamin Berg (CMU), Timothy Zhu (PennState), Siddhartha Sen (Microsoft Research),

More information

Interactive Scheduling

Interactive Scheduling Interactive Scheduling 1 Two Level Scheduling Interactive systems commonly employ two-level scheduling CPU scheduler and Memory Scheduler Memory scheduler was covered in VM We will focus on CPU scheduling

More information

Congestion Control for High Bandwidth-delay Product Networks

Congestion Control for High Bandwidth-delay Product Networks Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Presented by Chi-Yao Hong Adapted from slides by Dina Katabi CS598pbg Sep. 10, 2009 Trends in the Future

More information