Upload
-
View
221
Download
0
Embed Size (px)
Citation preview
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 1/30
LOTTERY SCHEDULING:FLEXIBLE PROPORTIONAL-
SHARE RESOURCEMANAGEMENT
Carl A. WaldspurgerWilliam E. Weihl
MIT LCS
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 2/30
Overview
• Lottery scheduling
–Gives variable numbers of lottery
tickets to processes–olds lotteries to decide !hich
thread !ill get the C"#
• "aper introduces currencies–$or allocating C"# among multiple
threads of a single user
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 3/30
Traditi!a" #$%ed&"er#
• "riority schemes%
–"riority assignments often ad hoc
–&chemes using decay'usagescheduling are poorly understood
• ($air share) schemes ad*ust priorities
!ith a feedback loop to achievefairness
–+nly achieve long'term fairness
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 4/30
Ltter' #$%ed&"i!(
• "riority determined by the number oftickets each thread has%
–"riority is the relative percentageof all of the tickets !hose o!nerscompete for the resource
• &cheduler picks !inning ticketrandomly, gives o!ner the resource
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 5/30
E)a*+"e
• -hree threads
–A has tickets
–/ has 0 tickets–C has 1 tickets
• 2f all compete for the resource
–/ has 034 chance of being selected• 2f only / and C compete
–/ has 534 chance of being selected
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 6/30
Ti$,et +r+ertie#
– Abstract:operate independently of machine
details–Relative:
chances of !inning the lotterydepends on contention level
–Uniform:can be used for many differentresources
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 7/30
A!t%er adva!ta(e
• Lottery scheduling is starvation-free
–Every ticket holder will finally get
the resource
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 8/30
Fair!e## a!a"'#i# I.
• Lottery scheduling is probabilisticallyfair
• 2f a thread has a t tickets out of T–2ts probability of !inning a lottery is p
= t/T
–2ts e6pected number of !ins over n
dra!ings is np•/inomial distribution
•7ariance σ 2 = np/ 0 p.
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 9/30
Fair!e## a!a"'#i# II.
• Coefficient of variation of number of !ins
σ/np = 1/-p.2np.
–8ecreases !ith 1 n
• 9umber of tries before !inning thelottery follo!s a geometric distribution
• As time passes, each thread endsreceiving its share of the resource
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 10/30
Ti$,et tra!#3er#
• E6plicit transfers of tickets from oneclient to another
• -hey an be used !henever a clientblocks due to some dependency
–When a client !aits for a reply
from a server, it can temporarilytransfer its tickets to the server
• -hey eliminate priority inversions
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 11/30
Ti$,et i!3"ati!
• Lets users create ne! tickets
–Like printing their o!n money
–Counterpart is ticket deflation
• ormally disallo!ed e6cept amongmutually trusting clients
–Lets them to ad*ust their prioritiesdynamically !ithout e6plicitcommunication
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 12/30
Ti$,et $&rre!$ie# I.
• Consider the case of a usermanaging multiple threads
–Want to let her favor some threadsover others
–Without impacting the threads of
other users
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 13/30
Ti$,et $&rre!$ie# II.
• Will let her create ne! tickets but !illdebase the individual values of all
the tickets she o!ns–er tickets !ill be e6pressed in a
ne! currency that !ill have a
variable e"c#ange rate !ith thebase currency
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 14/30
E)a*+"e I.
• Ann manages three threads
–A has tickets
–/ has 0 tickets
–C has 1 tickets
• Ann creates e6tra tickets and assignsthem to process C
–Ann no! has : tickets
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 15/30
E)a*+"e II.
• -hese : tickets represent : unitsof a ne! currency !hose e6change
rate !ith the base currency is :3;:
• -he total value of Ann tickets
e6pressed in the base currency is stille<ual to :3
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 16/30
A!a"('
• When coins represented specificamounts of gold and silver
–A king could create ne! money=inflation> by minting coins !ith alesser amount of precious metal
–Worked !ell inside the kingdom
–E6change rate of ne! coins !ith coinsfrom other countries !ent do!n.
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 17/30
C*+e!#ati! ti$,et# I.
• 2;+'bound threads are likely get lessthan their fair share of the C"#
because they often block before theirC"# <uantum e6pires
• Compensation tickets address thisimbalance
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 18/30
C*+e!#ati! ti$,et# II.
• A client that consumes only afraction f of its C"# <uantum can be
granted a compensation ticket –-icket inflates the value of all
client tickets by :;f until the client
starts gets the C"#•(Wording in the paper is muchmore astract!
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 19/30
E)a*+"e
• C"# <uantum is :33 ms
• Client A releases the C"# after 13ms
– f 4 567 r /28• 7alue of all tickets o!ned by A !ill
be multiplied by until A gets the
C"#
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 20/30
C*+e!#ati! ti$,et# III.
• Compensation tickets
–$avor 2;+'bound?and interactive?
threads–elps them getting their fair share
of the C"#
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 21/30
IMPLEMENTATION
• +n a @2"&'based 8ECstation running@ach 0 microkernel
–-ime slice is :33ms•"airly large as scheme does notallow preemption
• e<uires–A fast 9G
–A fast !ay to pick lottery !inner
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 22/30
Pi$,i!( t%e wi!!er I.
• $irst idea%
–Assign to each client a range of
consecutive lottery ticket numbers–Create a list of clients
–#se 9G to generate a !inning
ticket number–&earch client list until !e find the
!inner
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 23/30
E)a*+"e
• -hree threads
–A has tickets
–/ has 0 tickets–C has 1 tickets
• List contains
–A =3'B>–/ ='>
–C =D'>
&earch time is +=n>!here n is list length
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 24/30
Pi$,i!( t%e wi!!er II.
• /etter idea%
–$or larger n
–FA tree of partial ticket sums, !ithclients at the leavesF
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 25/30
E)a*+"e
9
A
B C
;
;
<
<
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 26/30
L!(-ter* 3air!e## I.
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 27/30
L!(-ter* 3air!e## II.
• Allocation ratio is ratio of numbers oftickets allocated to the t!o tasks
• @easurements made over a 53 sinterval
• Actual allocation fairly close toallocation ratio e6cept for :3%: ratio
–esulted in an average ratio of :0.B1
– Gets better over longer intervals
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 28/30
S%rt ter* 3"&$t&ati!#
$or1%:ticket
alloc.ratio
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 29/30
=%at t%e +a+er de# !t #a'
• #$% straightforward implementation oflottery scheduling does not provide theresponsiveness for a mi&ed interactive andC')ound workload offered y the decayusage priority scheduler of the "ree*S+operating system,
• Moreover- standard lottery schedulingignores kernel priorities used in the"ree*S+ scheduler to reduce kernel lockcontention,
7/23/2019 Lottery Scheduling
http://slidepdf.com/reader/full/lottery-scheduling 30/30
=%at t%e +a+er de# !t #a'
• uotes are from%
– 8. "etrou, H. W. @ilford, and G. A.
Gibson, 2mplementing Lottery&cheduling% @atching the &pecialiIationsin -raditional &chedulers, 'roc, SE.I/
011- Monterey C$- 2une 1)33- 3111,