DOC PREVIEW
Berkeley COMPSCI 152 - Lecture 24 I/O and Storage Systems

This preview shows page 1-2-3 out of 9 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS152Computer Architecture and EngineeringLecture 24I/O and Storage SystemsApril 29, 2004John Kubiatowicz (www.cs.berkeley.edu/~kubitron)lecture slides: http://inst.eecs.berkeley.edu/~cs152/4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.2Recap: Nano-layered Disk Heads° Special sensitivity of Disk head comes from “Giant Magneto-Resistive effect” or (GMR) ° IBM is leader in this technology• Same technology as TMJ-RAM breakthrough we described in earlier class.Coil for writing4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.3Disk Latency = Queueing Time + Controller time +Seek Time + Rotation Time + Xfer TimeOrder of magnitude times for 4K byte transfers:Average Seek: 8 ms or lessRotate: 4.2 ms @ 7200 rpmXfer: 1 ms @ 7200 rpmRecap: Disk Device Terminology4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.4Disk I/O PerformanceResponse time = Queue + Device Service time100%ResponseTime (ms)Throughput (Utilization)(% total BW)01002003000%ProcQueueIOC DeviceMetrics:Response TimeThroughputlatency goes as Tser×u/(1-u)u = utilization4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.5° Queueing Theory applies to long term, steady state behavior ⇒ Arrival rate = Departure rate° Little’s Law: Mean number tasks in system = arrival rate x meanreponse time• Observed by many, Little was first to prove• Simple interpretation: you should see the same number of tasks in queue when entering as when leaving.° Applies to any system in equilibrium, as long as nothing in black box is creating or destroying tasks“Black Box”QueueingSystemArrivals DeparturesIntroduction to Queueing Theory4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.6° Server spends a variable amount of time with customers• Weighted mean m1 = (f1 x T1 + f2 x T2 +...+ fn x Tn)/F = Σ p(T)xT•σ2= (f1 x T12+ f2 x T22 +...+ fn x Tn2)/F – m12 = Σ p(T)xT2-m12• Squared coefficient of variance: C = σ2/m12- Unitless measure (100 ms2vs. 0.1 s2)° Exponential distribution C = 1 : most short relative to average, few others long; 90% < 2.3 x average, 63% < averageHypoexponential distribution C < 1 : most close to average, C=0.5 => 90% < 2.0 x average, only 57% < averageHyperexponential distribution C > 1 : further from average C=2.0 => 90% < 2.8 x average, 69% < averageAvg.A Little Queuing Theory: Use of random distributionsAvg.0Proc IOC DeviceQueueserverSystem4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.7° Disk response times C ≈1.5 (majority seeks < average)° Yet usually pick C = 1.0 for simplicity• Memoryless, exponential dist• Many complex systems well described by memoryless distribution!° Another useful value is average time must wait for server to complete current task: m1(z)• Called “Average Residual Wait Time”• Not just 1/2 x m1 because doesn’t capture variance• Can derive m1(z) = 1/2 x m1 x (1 + C)• No variance ⇒ C= 0 => m1(z) = 1/2 x m1• Exponential ⇒ C= 1 => m1(z) = m1A Little Queuing Theory: Variable Service TimeProc IOC DeviceQueueserverSystemAvg.0Time4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.8° Calculating average wait time in queue Tq:• All customers in line must complete; avg time: m1≡Tser= 1/µ• If something at server, it takes to complete on average m1(z)- Chance server is busy = u=λ/µ; average delay is u x m1(z)Tq= uxm1(z)+Lqx TserTq= u x m1(z) + λxTqx Tser Tq= u x m1(z) + u x TqTqx (1 – u) = m1(z) x uTq= m1(z) x u/(1-u) = Tserx {1/2 x (1+C)} x u/(1 – u))Notation:λaverage number of arriving customers/secondTseraverage time to service a customeru server utilization (0..1): u = λx TserTqaverage time/customer in queueLq average length of queue:Lq= λx Tqm1(z) average residual wait time = Tserx {1/2 x (1+C)}A Little Queuing Theory: Average Wait TimeLittle’s LawDefn of utilization (u)4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.9° Assumptions so far:• System in equilibrium• Time between two successive arrivals in line are random• Server can start on next customer immediately after prior finishes• No limit to the queue: works First-In-First-Out• Afterward, all customers in line must complete; each avg Tser° Described “memoryless” or Markovian request arrival (M for C=1 exponentially random), General service distribution (no restrictions), 1 server: M/G/1 queue° When Service times have C = 1, M/M/1 queueTq= Tser x u / (1 – u)Tseraverage time to service a customeru server utilization (0..1): u = λxTserTqaverage time/customer in queueA Little Queuing Theory: M/G/1 and M/M/14/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.10° Processor sends 10 x 8KB disk I/Os per second, requests & service exponentially distrib., avg. disk service = 20 ms• This number comes from disk equation:Service time = Ave seek + ave rot delay + transfer time + ctrl overhead° On average, how utilized is the disk?• What is the number of requests in the queue?• What is the average time spent in the queue?• What is the average response time for a disk request?° Notation:λaverage number of arriving customers/second = 10Tseraverage time to service a customer = 20 ms (0.02s)u server utilization (0..1): u = λxTser= 10/s x .02s = 0.2Tqaverage time/customer in queue =Tser x u / (1 – u)= 20 x 0.2/(1-0.2) = 20 x 0.25 = 5 ms (0 .005s)Tsys average time/customer in system: Tsys=Tq+Tser= 25 msLqaverage length of queue:Lq= λx Tq= 10/s x .005s = 0.05 requests in queueLsys average # tasks in system: Lsys= λx Tsys= 10/s x .025s = 0.25A Little Queuing Theory: An Example4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.11Memory System I/O Performance° Pipelined Bus with queue at controller?• Time to transfer request• Tqueue= Queueing Delay+service time• Time to transfer data° DRAM has DETERMINISTIC service time • Tser= tRAC+ (n-1) * tPC+ tprecharge• Tq= m1(z) x u/(1-u) = Tserx {1/2 x (1+C)} x u/(1 – u))with C=0ProcessorQueueDRAMλµService Rate?Request RateMemoryController4/28/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec24.12Administrivia° Go to the “Projects” link and describe your project (By Friday)° Thursday: Sections in lab again (119 Cory) • Discuss your design document• Send draft to TA tonight° Midterm II next Wednesday• 5:30 – 8:30 in 306 Soda Hall- Pizza afterwards• Topics- Pipelining- Caches/Memory systems- Buses and I/O (Disk equation)- Queueing theory• Can bring 1 page of notes and calculator- Handwitten, double-sided (CLOSED BOOK!)° Oral Report•


View Full Document

Berkeley COMPSCI 152 - Lecture 24 I/O and Storage Systems

Documents in this Course
Quiz 5

Quiz 5

9 pages

Memory

Memory

29 pages

Quiz 5

Quiz 5

15 pages

Memory

Memory

29 pages

Memory

Memory

35 pages

Memory

Memory

15 pages

Quiz

Quiz

6 pages

Midterm 1

Midterm 1

20 pages

Quiz

Quiz

12 pages

Memory

Memory

33 pages

Quiz

Quiz

6 pages

Homework

Homework

19 pages

Quiz

Quiz

5 pages

Memory

Memory

15 pages

Load more
Download Lecture 24 I/O and Storage Systems
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture 24 I/O and Storage Systems and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 24 I/O and Storage Systems 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?