ee898 lec 3.1 10/22/04 ee898.02 architecture of digital systems lecture 3: i/o introduction and a...
TRANSCRIPT
![Page 1: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/1.jpg)
EE898Lec 3.1
10/22/04
EE898.02Architecture of Digital Systems
Lecture 3: I/O Introduction and
A Little Queueing Theory
Prof. Seok-Bum Ko
![Page 2: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/2.jpg)
EE898Lec 3.2
10/22/04
Motivation: Who Cares About I/O?
• CPU Performance: 60% per year• I/O system performance limited by mechanical
delays (disk I/O)< 10% per year (IO per sec)
• Amdahl's Law: system speed-up limited by the slowest part!
10% IO & 10x CPU => 5x Performance (lose 50%)10% IO & 100x CPU => 10x Performance (lose 90%)
• I/O bottleneck: Diminishing fraction of time in CPUDiminishing value of faster CPUs
![Page 3: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/3.jpg)
EE898Lec 3.3
10/22/04
I/O Systems
Processor
Cache
Memory - I/O Bus
MainMemory
I/OController
Disk Disk
I/OController
I/OController
Graphics Network
interruptsinterrupts
![Page 4: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/4.jpg)
EE898Lec 3.4
10/22/04
Storage Technology Drivers
• Driven by the prevailing computing paradigm– 1950s: migration from batch to on-line processing– 1990s: migration to ubiquitous computing
» computers in phones, books, cars, video cameras, …
» nationwide fiber optical network with wireless tails
• Effects on storage industry:– Embedded storage
» smaller, cheaper, more reliable, lower power– Data utilities
» high capacity, hierarchically managed storage
![Page 5: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/5.jpg)
EE898Lec 3.5
10/22/04
Disk Device Terminology
• Several platters, with information recorded magnetically on both surfaces (usually)
• Actuator moves head (end of arm,1/surface) over track (“seek”), select surface, wait for sector rotate under head, then read or write– “Cylinder”: all tracks under heads
• Bits recorded in tracks, which in turn divided into sectors (e.g., 512 Bytes)
Platter
OuterTrack
InnerTrackSector
Actuator
HeadArm
![Page 6: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/6.jpg)
EE898Lec 3.6
10/22/04
Photo of Disk Head, Arm, Actuator
Actuator
ArmHead
Platters (12)
{Spindle
![Page 7: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/7.jpg)
EE898Lec 3.7
10/22/04
Disk Device Performance
Platter
Arm
Actuator
HeadSectorInnerTrack
OuterTrack
• Disk Latency = Seek Time + Rotation Time + Transfer Time + Controller Overhead
• Seek Time? depends on no. tracks move arm, seek speed of disk
• Rotation Time? depends on speed disk rotates, how far sector is from head
• Transfer Time? depends on data rate (bandwidth) of disk (bit density), size of request
ControllerSpindle
![Page 8: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/8.jpg)
EE898Lec 3.8
10/22/04
Data Rate: Inner vs. Outer Tracks
• To keep things simple, originally kept same number of sectors per track– Since outer track longer, lower bits per inch
• Competition decided to keep BPI the same for all tracks (“constant bit density”)
More capacity per disk More of sectors per track towards edge Since disk spins at constant speed,
outer tracks have faster data rate
• Bandwidth outer track 1.7X inner track!– Inner track highest density, outer track lowest, so not
really constant– 2.1X length of track outer / inner, 1.7X bits outer / inner
![Page 9: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/9.jpg)
EE898Lec 3.9
10/22/04
Devices: Magnetic Disks
SectorTrack
Cylinder
HeadPlatter
• Purpose:– Long-term, nonvolatile
storage– Large, inexpensive, slow
level in the storage hierarchy
• Characteristics:– Seek Time (~8 ms avg)
» positional latency» rotational latency
• Transfer rate– 10-40 MByte/sec– Blocks
• Capacity– Gigabytes– Quadruples every 2
years (aerodynamics)
7200 RPM = 120 RPS => 8 ms per rev ave rot. latency = 4 ms128 sectors per track => 0.25 ms per sector1 KB per sector => 16 MB / s
Response time = Queue + Controller + Seek + Rot + Xfer
Service time
![Page 10: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/10.jpg)
EE898Lec 3.10
10/22/04
Disk Performance Model /Trends• Capacity
+ 100%/year (2X / 1.0 yrs)
• Transfer rate (BW)+ 40%/year (2X / 2.0 yrs)
• Rotation + Seek time– 8%/ year (1/2 in 10 yrs)
• MB/$> 100%/year (2X / 1.0 yrs)Fewer chips + areal density
![Page 11: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/11.jpg)
EE898Lec 3.11
10/22/04
State of the Art: Barracuda 180– 181.6 GB, 3.5 inch
disk– 12 platters, 24
surfaces– 24,247 cylinders– 7,200 RPM; (4.2 ms
avg. latency)– 7.4/8.2 ms avg. seek
(r/w)– 64 to 35 MB/s
(internal)– 0.1 ms controller time– 10.3 watts (idle)
source: www.seagate.com
Latency = Queuing Time + Controller time +Seek Time + Rotation Time + Size / Bandwidth
per access
per byte{+
Sector
Track
Cylinder
Head PlatterArmTrack Buffer
![Page 12: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/12.jpg)
EE898Lec 3.12
10/22/04
Areal Density• Bits recorded along a track
– Metric is Bits Per Inch (BPI)
• Number of tracks per surface– Metric is Tracks Per Inch (TPI)
• Disk Designs Brag about bit density per unit area– Metric is Bits Per Square Inch– Called Areal Density– Areal Density = BPI x TPI
![Page 13: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/13.jpg)
EE898Lec 3.13
10/22/04
Historical Perspective• 1956 IBM Ramac — early 1970s Winchester
– Developed for mainframe computers, proprietary interfaces– Steady shrink in form factor: 27 in. to 14 in
• Form factor and capacity drives market, more than performance
• 1970s: Mainframes 14 inch diameter disks• 1980s: Minicomputers,Servers 8”,5 1/4”
diameter• PCs, workstations Late 1980s/Early 1990s:
– Mass market disk drives become a reality» industry standards: SCSI, IPI, IDE
– Pizzabox PCs 3.5 inch diameter disks– Laptops, notebooks 2.5 inch disks– Palmtops didn’t use disks,
so 1.8 inch diameter disks didn’t make it
• 2000s:– 1 inch for cameras, cell phones?
![Page 14: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/14.jpg)
EE898Lec 3.14
10/22/04
Disk History
Data densityMbit/sq. in.
Capacity ofUnit ShownMegabytes
1973:1. 7 Mbit/sq. in140 MBytes
1979:7. 7 Mbit/sq. in2,300 MBytes
source: New York Times, 2/23/98, page C3, “Makers of disk drives crowd even more data into even smaller spaces”
![Page 15: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/15.jpg)
EE898Lec 3.15
10/22/04
Disk History
1989:63 Mbit/sq. in60,000 MBytes
1997:1450 Mbit/sq. in2300 MBytes
source: New York Times, 2/23/98, page C3, “Makers of disk drives crowd even more data into even smaller spaces”
1997:3090 Mbit/sq. in8100 MBytes
![Page 16: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/16.jpg)
EE898Lec 3.16
10/22/04
1 inch disk drive!• 2000 IBM MicroDrive:
– 1.7” x 1.4” x 0.2” – 1 GB, 3600 RPM,
5 MB/s, 15 ms seek– Digital camera, PalmPC?
• 2006 MicroDrive?• 9 GB, 50 MB/s!
– Assuming it finds a niche in a successful product
– Assuming past trends continue
![Page 17: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/17.jpg)
EE898Lec 3.17
10/22/04
Fallacy: Use Data Sheet “Average Seek” Time
• Manufacturers needed standard for fair comparison (“benchmark”)– Calculate all seeks from all tracks, divide by number of
seeks => “average”
• Real average would be based on how data laid out on disk, where seek in real applications, then measure performance– Usually, tend to seek to tracks nearby, not to random
track
• Rule of Thumb: observed average seek time is typically about 1/4 to 1/3 of quoted seek time (i.e., 3X-4X faster)
![Page 18: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/18.jpg)
EE898Lec 3.18
10/22/04
Fallacy: Use Data Sheet Transfer Rate
• Manufacturers quote the speed off the data rate off the surface of the disk
• Sectors contain an error detection and correction field (can be 20% of sector size) plus sector number as well as data
• There are gaps between sectors on track• Rule of Thumb: disks deliver about 3/4 of
internal media rate (1.3X slower) for data
![Page 19: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/19.jpg)
EE898Lec 3.19
10/22/04
Tape vs. Disk
• Longitudinal tape uses same technology as hard disk; tracks its density improvements
• Disk head flies above surface, tape head lies on surface
• Disk fixed, tape removable
• Inherent cost-performance based on geometries: fixed rotating platters with gaps (random access, limited area, 1 media / reader) vs. removable long strips wound on spool (sequential access, "unlimited" length, multiple / reader)
• Helical Scan (VCR, Camcoder, DAT) Spins head at angle to tape to improve density
![Page 20: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/20.jpg)
EE898Lec 3.20
10/22/04
Current Drawbacks to Tape
• Tape wear out:– Helical 100s of passes to 1000s for longitudinal
• Head wear out: – 2000 hours for helical
• Both must be accounted for in economic / reliability model
• Bits stretch• Readers must be compatible with
multiple generations of media• Long rewind, eject, load, spin-up times;
not inherent, just no need in marketplace
• Designed for archival
![Page 21: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/21.jpg)
EE898Lec 3.21
10/22/04
Library vs. Storage
• Getting books today as quaint as the way WE learned to program– punch cards, batch processing– wander thru shelves, anticipatory purchasing
• Cost $1 per book to check out• $30 for a catalogue entry• 30% of all books never checked out• Write only journals?• Digital library can transform
campuses
![Page 22: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/22.jpg)
EE898Lec 3.22
10/22/04
Use Arrays of Small Disks?
14”10”5.25”3.5”
3.5”
Disk Array: 1 disk design
Conventional: 4 disk designs
Low End High End
•Katz and Patterson asked in 1987:
•Can smaller disks be used to close gap in performance between disks and CPUs?
![Page 23: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/23.jpg)
EE898Lec 3.23
10/22/04
Advantages of Small Formfactor Disk Drives
Low cost/MBHigh MB/volumeHigh MB/wattLow cost/Actuator
Cost and Environmental Efficiencies
![Page 24: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/24.jpg)
EE898Lec 3.24
10/22/04
Redundant Arrays of (Inexpensive) Disks
• Files are "striped" across multiple disks
• Redundancy yields high data availability– Availability: service still provided to user, even if some
components failed
• Disks will still fail• Contents reconstructed from data redundantly
stored in the array Capacity penalty to store redundant info Bandwidth penalty to update redundant info
![Page 25: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/25.jpg)
EE898Lec 3.25
10/22/04
RAID
• Fundamental to RAID is “striping”, a method of concatenating multiple drives into one logical storage unit.
• RAID-0: not redundant• RAID-1: by writing all data to two or more drives.
“mirroring”• RAID-2: Hamming error correction codes• RAID-3: striping data at a byte level across several
drives, with parity stored on one drive• RAID-4: striping data at a block level across several
drives, with parity stored on one drive• RAID-5: similar to level 4, but distributes parity
among the drives
![Page 26: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/26.jpg)
EE898Lec 3.36
10/22/04
Introduction to Queueing Theory
• More interested in long term, steady state than in startup => Arrivals = Departures
• Little’s Law: Mean number tasks in system = arrival rate x mean response time– Observed by many, Little was first to prove
• Applies to any system in equilibrium, as long as nothing in black box is creating or destroying tasks
Arrivals Departures
![Page 27: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/27.jpg)
EE898Lec 3.37
10/22/04
A Little Queuing Theory: Notation
• Queuing models assume state of equilibrium: input rate = output rate
• Notation: r average number of arriving customers/second
Tser average time to service a customer (traditionally µ(avg. service rate) = 1/ Tser )u server utilization (0..1): u = r x Tser Tq average time/customer in queue Tsys average time/customer in system: Tsys = Tq + TserLq average length of queue: Lq = r x Tq Lsys average length of system: Lsys = r x Tsys
• Little’s Law: Lengthserver = rate x Timeserver (Mean number customers = arrival rate x mean service time)
Proc IOC Device
Queue server
System
![Page 28: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/28.jpg)
EE898Lec 3.38
10/22/04
A Little Queuing Theory
•Service time completions vs. waiting time for a busy server: randomly arriving event joins a queue of arbitrary length when server is busy, otherwise serviced immediately
– Unlimited length queues key simplification
•A single server queue: combination of a servicing facility that accommodates 1 customer at a time (server) + waiting area (queue): together called a system
•Server spends a variable amount of time with customers; how do you characterize variability?
– Distribution of a random variable: histogram? curve?
Proc IOC Device
Queue server
System
![Page 29: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/29.jpg)
EE898Lec 3.39
10/22/04
A Little Queuing Theory
•Server spends variable amount of time with customers–Weighted mean m1 = (f1 x T1 + f2 x T2 +...+ fn x Tn)/F (F=f1 + f2...),
where Ti is the time for task i and Fi is the frequency of i– variance = (f1 x T12 + f2 x T22 +...+ fn x Tn2)/F – m12
»Must keep track of unit of measure (100 ms2 vs. 0.1 s2 )–Squared coefficient of variance: C2 = variance/m12
»Unitless measure (100 ms2 vs. 0.1 s2)
•Exponential distribution C2 = 1 : most short relative to average, few others long; 90% < 2.3 x average, 63% < average
•Hypoexponential distribution C2 < 1 : most close to average, C2=0.5 => 90% < 2.0 x average, only 57% < average
•Hyperexponential distribution C2 > 1 : further from average C2 =2.0 => 90% < 2.8 x average, 69% < average
Proc IOC Device
Queue server
System
Avg.
![Page 30: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/30.jpg)
EE898Lec 3.40
10/22/04
A Little Queuing Theory: Variable Service Time
• Server spends a variable amount of time with customers– Weighted mean m1 = (f1xT1 + f2xT2 +...+ fnxTn)/F
(F=f1+f2+...)
• Usually pick C = 1.0 for simplicity• Another useful value is average time
must wait for server to complete task: m1(z)– Not just 1/2 x m1 because doesn’t capture variance– Can derive m1(z) = 1/2 x m1 x (1 + C2)– No variance => C2 = 0 => m1(z) = 1/2 x m1
Proc IOC Device
Queue server
System
![Page 31: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/31.jpg)
EE898Lec 3.41
10/22/04
A Little Queuing Theory:Average Wait Time
• Calculating average wait time in queue Tq
– If something at server, it takes to complete on average m1(z)– Chance server is busy = u; average delay is u x m1(z)– All customers in line must complete; each avg Tser
Tq = u x m1(z) + Lq x Ts er= 1/2 x u x Tser x (1 + C) + Lq x Ts er
Tq = 1/2 x u x Ts er x (1 + C) + r x Tq x Ts er
Tq = 1/2 x u x Ts er x (1 + C) + u x Tq
Tq x (1 – u) = Ts er x u x (1 + C) /2Tq = Ts er x u x (1 + C) / (2 x (1 – u))
• Notation: r average number of arriving customers/second
Tser average time to service a customeru server utilization (0..1): u = r x Tser
Tq average time/customer in queueLq average length of queue:Lq= r x Tq
![Page 32: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/32.jpg)
EE898Lec 3.42
10/22/04
A Little Queuing Theory: M/G/1 and M/M/1
• Assumptions so far:– System in equilibrium, number sources of requests unlimited– Time between two successive arrivals in line are exponentially
distrib.– Server can start on next customer immediately after prior finishes– No limit to the queue: works First-In-First-Out "discipline"
– 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 x (1 + C) /(2 x (1 – u)) = Tser x u / (1 – u)
Tser average time to service a customeru server utilization (0..1): u = r x Tser
Tq average time/customer in queue
![Page 33: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/33.jpg)
EE898Lec 3.43
10/22/04
A Little Queuing Theory: An Example
• processor sends 10 x 8KB disk I/Os per second, requests & service exponentially distrib., avg. disk service = 20 ms
• 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: r average number of arriving customers/second = 10
Tser average time to service a customer = 20 ms (0.02s)u server utilization (0..1): u = r x Tser= 10/s x .02s = 0.2Tq average 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 msLq average length of queue:Lq= r x Tq
= 10/s x .005s = 0.05 requests in queueLsys average # tasks in system: Lsys = r x Tsys = 10/s x .025s = 0.25
![Page 34: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/34.jpg)
EE898Lec 3.44
10/22/04
A Little Queuing Theory: Another Example
• processor sends 20 x 8KB disk I/Os per sec, requests & service exponentially distrib., avg. disk service = 12 ms
• On average, how utilized is the disk?– What is the number of requests in the queue?– What is the average time a spent in the queue?– What is the average response time for a disk request?
• Notation: r average number of arriving customers/second= 20
Tser average time to service a customer= 12 msu server utilization (0..1): u = r x Tser= /s x . s = Tq average time/customer in queue = Ts er x u / (1 – u)
= x /( ) = x = msTsys average time/customer in system: Tsys =Tq +Tser= 16 msLq average length of queue:Lq= r x Tq
= /s x s = requests in queue Lsys average # tasks in system : Lsys = r x Tsys = /s x s =
![Page 35: EE898 Lec 3.1 10/22/04 EE898.02 Architecture of Digital Systems Lecture 3: I/O Introduction and A Little Queueing Theory Prof. Seok-Bum Ko](https://reader035.vdocuments.us/reader035/viewer/2022062620/551b37fd550346d41a8b5247/html5/thumbnails/35.jpg)
EE898Lec 3.45
10/22/04
A Little Queuing Theory: Another Example
• processor sends 20 x 8KB disk I/Os per sec, requests & service exponentially distrib., avg. disk service = 12 ms
• On average, how utilized is the disk?– What is the number of requests in the queue?– What is the average time a spent in the queue?– What is the average response time for a disk request?
• Notation: r average number of arriving customers/second= 20
Tser average time to service a customer= 12 msu server utilization (0..1): u = r x Tser= 20/s x .012s = 0.24Tq average time/customer in queue = Ts er x u / (1 – u)
= 12 x 0.24/(1-0.24) = 12 x 0.32 = 3.8 msTsys average time/customer in system: Tsys =Tq +Tser= 15.8 msLq average length of queue:Lq= r x Tq
= 20/s x .0038s = 0.076 requests in queue Lsys average # tasks in system : Lsys = r x Tsys = 20/s x .016s = 0.32