Magnetic Disk
Magnetic Disk
Magnetic Disk
Topics: Storage Systems (Chapter 6), other innovations Final exam stats: Highest: 95 Mean: 70, Median: 73 Toughest questions: TM, SC
Role of I/O
Activities external to the CPU are typically orders of magnitude slower Example: while CPU performance has improved by 50% per year, disk latencies have improved by 10% every year Typical strategy on I/O: switch contexts and work on something else
Other metrics, such as bandwidth, reliability, availability, and capacity, often receive more attention than performance
2
Magnetic Disks
A magnetic disk consists of 1-12 platters (metal or glass disk covered with magnetic recording material on both sides), with diameters between 1-3.5 inches Each platter is comprised of concentric tracks (5-30K) and each track is divided into sectors (100 500 per track, each about 512 bytes) A movable arm holds the read/write heads for each disk surface and moves them all in tandem a cylinder of data is accessible at a time
3
Disk Latency
To read/write data, the arm has to be placed on the correct track this seek time usually takes 5 to 12 ms on average can take less if there is spatial locality Rotational latency is the time taken to rotate the correct sector under the head average is typically more than 2 ms (15,000 RPM) Transfer time is the time taken to transfer a block of bits out of the disk and is typically 3 65 MB/second A disk controller maintains a disk cache (spatial locality can be exploited) and sets up the transfer on the bus (controller overhead)
RAID
Reliability and availability are important metrics for disks
RAID: redundant array of inexpensive (independent) disks
RAID 3
Data is bit-interleaved across several disks and a separate disk maintains parity information for a set of bits
For example: with 8 disks, bit 0 is in disk-0, bit 1 is in disk-1, , bit 7 is in disk-7; disk-8 maintains parity for all 8 bits For any read, 8 disks must be accessed (as we usually read more than a byte at a time) and for any write, 9 disks must be accessed as parity has to be re-calculated High throughput for a single request, low cost for redundancy (overhead: 12.5%), low task-level parallelism
7
RAID 5
If we have a single disk for parity, multiple writes can not happen in parallel (as all writes must update parity info)
RAID 5 distributes the parity block to allow simultaneous writes
RAID Summary
RAID 1-5 can tolerate a single fault mirroring (RAID 1) has a 100% overhead, while parity (RAID 3, 4, 5) has modest overhead Can tolerate multiple faults by having multiple check functions each additional check can cost an additional disk (RAID 6) RAID 6 and RAID 2 (memory-style ECC) are not commercially employed
10
Tiled Processors
Similar to multi-core, but a single thread can be spread across multiple cores
Need smart scheduling to reduce inter-core communication
11
Redundancy
Transient faults: a bit-flip caused by a high-energy particle
Error rates per transistor are not increasing, but number of transistors is increasing Need some form of redundant computation to detect errors
12
Power Optimizations
Cache leakage and decay
Size reconfiguration
13
Title
Bullet
15