+ All Categories
Home > Documents > 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage...

1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage...

Date post: 29-Mar-2015
Category:
Upload: trevon-sumler
View: 212 times
Download: 0 times
Share this document with a friend
Popular Tags:
16
1 COMP 206: COMP 206: Computer Architecture Computer Architecture and Implementation and Implementation Montek Singh Montek Singh Mon., Nov. 25, 2002 Mon., Nov. 25, 2002 Topic: Topic: Storage Systems (Disk Technology) – Storage Systems (Disk Technology) – contd. contd.
Transcript
Page 1: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

1

COMP 206:COMP 206:Computer Architecture and Computer Architecture and

ImplementationImplementation

Montek SinghMontek Singh

Mon., Nov. 25, 2002Mon., Nov. 25, 2002

Topic: Topic: Storage Systems (Disk Technology) Storage Systems (Disk Technology)

– contd.– contd.

Page 2: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

2

Ensembles of DisksEnsembles of Disks Key ideaKey idea

Use collection of disk drives to improve characteristics Use collection of disk drives to improve characteristics of disk systems (storage capacity, bandwidth, etc.)of disk systems (storage capacity, bandwidth, etc.)

Used in mainframes for a long timeUsed in mainframes for a long time RAIDRAID

Redundant Array of Inexpensive Disks (original 1988 Redundant Array of Inexpensive Disks (original 1988 acronym)acronym)

Redundant Array of Independent Disks (redefined in Redundant Array of Independent Disks (redefined in 1992)1992)

Page 3: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

3

Improving Bandwidth with Disk Improving Bandwidth with Disk ArraysArrays Arrays of independent disk drivesArrays of independent disk drives

Similar to high-order interleaving in main memoriesSimilar to high-order interleaving in main memories Each file assigned to different disk driveEach file assigned to different disk drive Simultaneous access to filesSimultaneous access to files Load balancing issuesLoad balancing issues

File striping/disk striping/disk interleavingFile striping/disk striping/disk interleaving Single file distributed across array of disksSingle file distributed across array of disks Similar to low-order interleaving in main memoriesSimilar to low-order interleaving in main memories Each logical I/O request corresponds to a data stripeEach logical I/O request corresponds to a data stripe

Data stripe divided into number of equal sized Data stripe divided into number of equal sized stripe unitsstripe unitsStripe units assigned to different disk unitsStripe units assigned to different disk units

Two kinds of striping depending on size of stripe unitTwo kinds of striping depending on size of stripe unitFine-grained striping: Stripe unit chosen to balance loadFine-grained striping: Stripe unit chosen to balance loadCoarse-grained striping: Larger stripe unitCoarse-grained striping: Larger stripe unit

Page 4: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

4

Improving Availability with Disk Improving Availability with Disk ArraysArrays Failure rates of Disk Arrays can be quite high:Failure rates of Disk Arrays can be quite high:

MTTF of large-system disks approaches 1,000,000 MTTF of large-system disks approaches 1,000,000 hourshours

MTTF of PC-class disks approaches 150,000 hoursMTTF of PC-class disks approaches 150,000 hours But, array of 1,000 PC-class disks has MTTF of 150 But, array of 1,000 PC-class disks has MTTF of 150

hourshours

All schemes to cope with low MTTF aim to “fail All schemes to cope with low MTTF aim to “fail soft”soft” Operation should be able to continue while repair is Operation should be able to continue while repair is

mademade Always depends on some form of redundancyAlways depends on some form of redundancyIndependent addressing Fine-grained striping Coarse-grained striping

No redundancy Conventional RAID-0Replication (RAID-1) RAID-1Parity RAID-3 RAID-4, RAID-5ECC RAID-2

Page 5: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

5

RAID-0RAID-0

Strip 12Strip 8Strip 4Strip 0

Strip 13Strip 9Strip 5Strip 1

Strip 14Strip 10Strip 6Strip 2

Strip 15Strip 11Strip 7Strip 3

Striped, non-redundantStriped, non-redundant Parallel access to multiple disksParallel access to multiple disks Excellent data transfer rate (for small strips)Excellent data transfer rate (for small strips) Excellent I/O request processing rate (for large strips)Excellent I/O request processing rate (for large strips)

Typically used for applications requiring high Typically used for applications requiring high performance for non-critical dataperformance for non-critical data

Page 6: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

6

RAID-1RAID-1

Strip 3Strip 2Strip 1Strip 0

Strip 3Strip 2Strip 1Strip 0

Mirrored/replicated (most costly form of redundancy)Mirrored/replicated (most costly form of redundancy) I/O request rate: good for reads, fair for writesI/O request rate: good for reads, fair for writes Data transfer rate: good for reads; writes slightly slowerData transfer rate: good for reads; writes slightly slower

Read can be serviced by the disk with the shorter seek distanceRead can be serviced by the disk with the shorter seek distance Write must be handled by both disksWrite must be handled by both disks

Typically used in system drives and critical filesTypically used in system drives and critical files Banking, insurance dataBanking, insurance data Web (e-commerce) serversWeb (e-commerce) servers

Page 7: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

7

Combining RAID-0 and RAID-1Combining RAID-0 and RAID-1

Strip 12Strip 8Strip 4Strip 0

Strip 13Strip 9Strip 5Strip 1

Strip 14Strip 10Strip 6Strip 2

Strip 15Strip 11Strip 7Strip 3

Strip 12Strip 8Strip 4Strip 0

Strip 13Strip 9Strip 5Strip 1

Strip 14Strip 10Strip 6Strip 2

Strip 15Strip 11Strip 7Strip 3

Can combine RAID-0 and RAID-1:Can combine RAID-0 and RAID-1: Mirrored stripes (RAID 0+1, or RAID 01)Mirrored stripes (RAID 0+1, or RAID 01)

Example: picture aboveExample: picture above Striped Mirrors (RAID 1+0, or RAID 10)Striped Mirrors (RAID 1+0, or RAID 10)

Data transfer rate: fair for reads and writesData transfer rate: fair for reads and writes Reliability: goodReliability: good Efficiency: poor (100% overhead in terms of disk Efficiency: poor (100% overhead in terms of disk

utilization)utilization)

Page 8: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

8

RAID-3RAID-3

b0 b1 b2 b3 P(b)

Fine-grained (bit) interleaving with parityFine-grained (bit) interleaving with parity E.g., parity = sum modulo 2 (XOR) of all bitsE.g., parity = sum modulo 2 (XOR) of all bits

Disks are synchronized, parity computed by disk controllerDisks are synchronized, parity computed by disk controller When one disk fails… When one disk fails… (how do you know?)(how do you know?)

Data is recovered by subtracting all data in good disks from parity Data is recovered by subtracting all data in good disks from parity diskdisk

Recovering from failures takes longer than in mirroring, but failures Recovering from failures takes longer than in mirroring, but failures are rare, so is okayare rare, so is okay

Hot spares used to reduce vulnerability in reduced modeHot spares used to reduce vulnerability in reduced mode Performance:Performance:

Poor I/O request ratePoor I/O request rate Excellent data transfer rateExcellent data transfer rate Typically used in large I/O request size applications, such as Typically used in large I/O request size applications, such as

imaging or CADimaging or CAD

Page 9: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

9

RAID-2RAID-2

b0 b1 b2 b3 f0(b) f1(b) f2(b)

Hamming codes capable of correcting two or more Hamming codes capable of correcting two or more erasureserasures E.g., single error-correcting, double error-detecting (SEC-DED)E.g., single error-correcting, double error-detecting (SEC-DED)

Problem with small writes (similar to DRAM cycle Problem with small writes (similar to DRAM cycle time/access time)time/access time)

Poor I/O request ratePoor I/O request rate Excellent data transfer rateExcellent data transfer rate

Page 10: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

10

RAID-4RAID-4

Coarse-grained striping with parityCoarse-grained striping with parity Unlike RAID-3, not all disks need to be read on each readUnlike RAID-3, not all disks need to be read on each read

New parity computed by computing difference between old and new New parity computed by computing difference between old and new datadata

Drawback:Drawback: Like RAID-3, parity disk involved in every write; serializes small readsLike RAID-3, parity disk involved in every write; serializes small reads

I/O request rate: excellent for reads, fair for writesI/O request rate: excellent for reads, fair for writes Data transfer rate: fair for reads, fair for writesData transfer rate: fair for reads, fair for writes

Blk 12Blk 8Blk 4Blk 0

Blk 13Blk 9Blk 5Blk 1

Blk 14Blk 10Blk 6Blk 2

Blk 15Blk 11Blk 7Blk 3

P(12-15)P(8-11)P(4-7)P(0-3)

Page 11: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

11

RAID-5RAID-5

Blk 12Blk 8Blk 4Blk 0

P(12-15)Blk 9Blk 5Blk 1

Blk 13P(8-11)

Blk 6Blk 2

Blk 14Blk 10P(4-7)Blk 3

Blk 15Blk 11Blk 7

P(0-3)

Key Idea: reduce load on parity disk Key Idea: reduce load on parity disk Block-interleaved Block-interleaved distributed paritydistributed parity Multiple writes can occur simultaneouslyMultiple writes can occur simultaneously Block 0 can be accessed in parallel with Block 5Block 0 can be accessed in parallel with Block 5

First needs disks 1 and 5; second needs disks 2 and 4First needs disks 1 and 5; second needs disks 2 and 4 I/O request rate: excellent for reads, good for writesI/O request rate: excellent for reads, good for writes Data transfer rate: good for reads, good for writesData transfer rate: good for reads, good for writes Typically used for high request rate, read-intensive data lookupTypically used for high request rate, read-intensive data lookup

Page 12: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

12

Removable MediaRemovable Media Magnetic Tapes:Magnetic Tapes:

Have been used in computer systems as long as disksHave been used in computer systems as long as disks Similar magnetic technology as disksSimilar magnetic technology as disks

have followed similar density improvements as diskshave followed similar density improvements as disks Long strips wound on removable spoolsLong strips wound on removable spools Benefits: can be essentially of “unlimited” length; Benefits: can be essentially of “unlimited” length;

removableremovable Drawbacks: only offer sequential access; wear outDrawbacks: only offer sequential access; wear out Used for archival backups; but on the way outUsed for archival backups; but on the way out

Optical Disks: CD’s and DVD’sOptical Disks: CD’s and DVD’s CD-ROM/DVD-ROM: removable, inexpensive, random accessCD-ROM/DVD-ROM: removable, inexpensive, random access CD-R/RW, DVD-R/RAM: writable/re-writableCD-R/RW, DVD-R/RAM: writable/re-writable Becoming immensely popular: replacing floppy drives, tape Becoming immensely popular: replacing floppy drives, tape

drivesdrives Flash: flash cards, memory sticks, digital filmFlash: flash cards, memory sticks, digital film Microdrives: small portable hard disks (up to 1GB)Microdrives: small portable hard disks (up to 1GB)

Page 13: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

13

Interfacing I/O Subsystem to CPUInterfacing I/O Subsystem to CPUWhere do we connect I/O Where do we connect I/O

devices?devices? Cache?Cache? Memory? Memory?

Low-cost systems: I/O bus = Low-cost systems: I/O bus = memory bus!memory bus!

– CPU and I/O compete for busCPU and I/O compete for bus

How does CPU address I/O How does CPU address I/O devs.?devs.? Memory-mapped I/OMemory-mapped I/O

Portions of address space Portions of address space assigned to I/O devicesassigned to I/O devices

I/O opcodes (not very popular)I/O opcodes (not very popular)

How does CPU synch with I/O?How does CPU synch with I/O? Polling vs. interrupt-drivenPolling vs. interrupt-driven Real-time systems: hybridReal-time systems: hybrid

Clock interrupts periodicallyClock interrupts periodically CPU polls during interruptCPU polls during interrupt

Page 14: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

14

Does I/O Performance Matter?Does I/O Performance Matter? The “No” Argument:The “No” Argument:

““There is always another process to run while one process There is always another process to run while one process waits for I/O to complete”waits for I/O to complete”

Counter-arguments:Counter-arguments: Above argument applies only if throughput is sole goalAbove argument applies only if throughput is sole goal Interactive software and personal computers lay more Interactive software and personal computers lay more

emphasis on response time (=latency), not throughputemphasis on response time (=latency), not throughput Interactive multimedia, transaction processingInteractive multimedia, transaction processing

Process switching actually increases I/O (paging traffic)Process switching actually increases I/O (paging traffic) Desktop/Mobile computing: only one person/computer Desktop/Mobile computing: only one person/computer

fewer processes than in time-sharingfewer processes than in time-sharing Amdahl’s Law: benefits of making CPU faster taper off if Amdahl’s Law: benefits of making CPU faster taper off if

I/O becomes the bottleneckI/O becomes the bottleneck

Page 15: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

15

Does CPU Performance Matter?Does CPU Performance Matter?Consequences of Moore’s Law:Consequences of Moore’s Law:

Large, fast CPU’sLarge, fast CPU’s Small, cheap CPU’sSmall, cheap CPU’s

Main goal: keeping I/O devices busy, not keeping CPU busyMain goal: keeping I/O devices busy, not keeping CPU busy– bulk of the hardware cost is in I/O peripherals, not CPUbulk of the hardware cost is in I/O peripherals, not CPU

Shift in focus:Shift in focus:From computation to communicationFrom computation to communicationReflected in change of terminology:Reflected in change of terminology:

– 1960’s-80’s: Computing Revolution1960’s-80’s: Computing Revolution– 1990’s-present: Information Age1990’s-present: Information Age

Page 16: 1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 25, 2002 Topic: Storage Systems (Disk Technology) – contd.

16

Does Performance Matter?Does Performance Matter?Performance is not the problem it once was!Performance is not the problem it once was!

15 years of doubling CPU speed every 18 months 15 years of doubling CPU speed every 18 months (x1000)(x1000)

Disks also have steadily become bigger and fasterDisks also have steadily become bigger and faster

Most people would prefer more reliability than Most people would prefer more reliability than speed:speed: Today’s speeds come at a cost: frequent crashesToday’s speeds come at a cost: frequent crashes Program crashes Program crashes frustration frustration Disk crashes Disk crashes hysteria hysteria

Reliability, availability, dependability, etc. are the key Reliability, availability, dependability, etc. are the key termsterms

Client-server model of computing has made reliability the Client-server model of computing has made reliability the key criterion for evaluationkey criterion for evaluation

– E.g., UNC-COMPSCI IMAP server: 300 MHz or something, E.g., UNC-COMPSCI IMAP server: 300 MHz or something, 99.9… % uptime99.9… % uptime


Recommended