CS61C : Machine Structures Lecture 7. 2

Slides:



Advertisements
Similar presentations
IT253: Computer Organization
Advertisements

CS61C L16 Disks © UC Regents 1 CS161 Lecture 25 - Disks Laxmi Bhuyan
CS61C L13 I/O © UC Regents 1 CS 161 Chapter 8 - I/O Lecture 17.
CSCE 212 Chapter 8 Storage, Networks, and Other Peripherals Instructor: Jason D. Bakos.
RAID Technology. Use Arrays of Small Disks? 14” 10”5.25”3.5” Disk Array: 1 disk design Conventional: 4 disk designs Low End High End Katz and Patterson.
CS 430 – Computer Architecture Disks
CS61C L38 I/O : Networks (1) Garcia © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures.
CS61C L39 I/O : Networks (1) Garcia, Fall 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine.
CS61C L36 I/O : Networks (1) Iyengar © UCB TA Sameer “The Yellow Dart” Iyengar inst.eecs/~cs61c-ti inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures.
CS61C L40 I/O: Disks (1) Ho, Fall 2004 © UCB TA Casey Ho inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 39 I/O : Disks Microsoft.
Computer ArchitectureFall 2007 © November 28, 2007 Karem A. Sakallah Lecture 24 Disk IO and RAID CS : Computer Architecture.
CS61C L16 Disks © UC Regents 1 CS61C - Machine Structures Lecture 16 - Disks October 20, 2000 David Patterson
CS 61C L40 I/O Networks (1) Garcia, Spring 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine.
1  1998 Morgan Kaufmann Publishers Chapter 8 Storage, Networks and Other Peripherals.
CS 61C L26 Disks & Networks (1) A Carle, Summer 2006 © UCB inst.eecs.berkeley.edu/~cs61c/su06 CS61C : Machine Structures Lecture #26: Disks & Networks.
CS61C L40 I/O: Disks (1) Garcia, Fall 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures.
CS430 Computer Architecture 1 CS430 Computer Architecture --Networks-- William J. Taffe using the slides of David Patterson.
CS61C L15 Networks © UC Regents 1 CS61C - Machine Structures Lecture 15 - Networks October 18, 2000 David Patterson
CS61C L36 I/O : Networks (1) Zimmer © UCB TA Brian Zimmer inst.eecs/~cs61c-th inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 36 I/O.
Disk Technologies. Magnetic Disks Purpose: – Long-term, nonvolatile, inexpensive storage for files – Large, inexpensive, slow level in the memory hierarchy.
Secondary Storage CSCI 444/544 Operating Systems Fall 2008.
CS 61C L41 I/O Disks (1) Garcia, Spring 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine.
CS61C L37 I/O : Networks (1) Kronrod © UCB TA Alex Kronrod inst.eecs/~cs61c-te inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 37 I/O.
CS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 39: IO Disks Instructor: Dan Garcia 1.
Redundant Array of Inexpensive Disks (RAID). Redundant Arrays of Disks Files are "striped" across multiple spindles Redundancy yields high data availability.
CS61C L36 I/O : Networks (1) Garcia © UCB Senior Lecturer SOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures.
Storage & Peripherals Disks, Networks, and Other Devices.
Lecture 4 1 Reliability vs Availability Reliability: Is anything broken? Availability: Is the system still available to the user?
CS 352 : Computer Organization and Design University of Wisconsin-Eau Claire Dan Ernst Storage Systems.
I/O – Chapter 8 Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
1 Chapter 7: Storage Systems Introduction Magnetic disks Buses RAID: Redundant Arrays of Inexpensive Disks.
CS2100 Computer Organisation Input/Output – Own reading only (AY2015/6) Semester 1 Adapted from David Patternson’s lecture slides:
Csci 136 Computer Architecture II – IO and Storage Systems Xiuzhen Cheng
CS10 L17 Internet II (1) Garcia © UCB Senior Lecturer SOE Dan Garcia cs10.berkeley.edu CS10 : Beauty and Joy of Computing.
Processor Memory Processor-memory bus I/O Device Bus Adapter I/O Device I/O Device Bus Adapter I/O Device I/O Device Expansion bus I/O Bus.
COSC 6340: Disks 1 Disks and Files DBMS stores information on (“hard”) disks. This has major implications for DBMS design! » READ: transfer data from disk.
CMSC 611: Advanced Computer Architecture I/O & Storage Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 10: Mass-Storage Systems.
CSCE 385: Computer Architecture Spring 2014 Dr. Mike Turi I/O.
Introduction to Computers - Hardware
Storage HDD, SSD and RAID.
Memory COMPUTER ARCHITECTURE
IT 251 Computer Organization and Architecture
Multiple Platters.
Hardware Technology Trends and Database Opportunities
Module: Storage Systems
Vladimir Stojanovic & Nicholas Weaver
IT 251 Computer Organization and Architecture
IT 251 Computer Organization and Architecture
Layered Architectures
Networking for Home and Small Businesses – Chapter 6
Cache Memory Presentation I
Networking for Home and Small Businesses – Chapter 6
Virtual Memory Main memory can act as a cache for the secondary storage (disk) Advantages: illusion of having more physical memory program relocation protection.
CMSC 611: Advanced Computer Architecture
CS61C Anatomy of I/O Devices: Networks Lecture 14
Lecture 13 I/O.
Lecture 21: Storage Systems
Input-output I/O is very much architecture/system dependent
CSE 451: Operating Systems Winter 2006 Module 13 Secondary Storage
Lecture 28: Reliability Today’s topics: GPU wrap-up Disk basics RAID
Practical Issues for Commercial Networks
CSE 451: Operating Systems Secondary Storage
Persistence: I/O devices
CS 6290 Many-core & Interconnect
Networking for Home and Small Businesses – Chapter 6
Ch 17 - Binding Protocol Addresses
CDA-5155 Computer Architecture Principles Fall 2000
Presentation transcript:

CS61C : Machine Structures Lecture 7. 2 CS61C : Machine Structures Lecture 7.2.1 Disks & Networks 2004-08-04 Kurt Meinz inst.eecs.berkeley.edu/~cs61c Greet class

Cache, Proc and VM in IF Where is the page fault? Fetch PC EXE; PC  PC+4 tlb hit? y VPN->PPN Map Cache hit? Load into IR n y n Trap os Mem hit? Update TLB pt “hit”? n y y n XXX Cache full? Free mem? Restart y y n n Pick victim Pick victim Write policy? Where is the page fault? Victim to disk wb wt WB if dirty Load new page Evict victim Update PT Load block Update TLB Restart Restart

Finish course material Today, Thurs. All next week will be review: Administrative Finish course material Today, Thurs. All next week will be review: Review lectures (2 weeks/lecture) No hw/labs* Lab attendance still required. Checkoff points for showing up/finishing review material.* Schedule: P4 out tonight, MT3 on Friday, Final next Friday, P4 due next Sat*. * Subject to change

Outline Buses Networks Disks RAID

Buses in a PC: connect a few devices (2002) Bus - shared medium of communication that can connect to many devices. Hierarchy!! CPU Memory bus (FSB) Memory PCI Interface PCI: Internal (Backplane) I/O bus SCSI: External I/O bus (1 to 15 disks) SCSI Interface Ethernet Interface Ethernet Local Area Network Data rates (P4) Memory: 400 MHz, 8 bytes  3.2 GB/s (peak) PCI: 100 MHz, 8 bytes wide  0.8 GB/s (peak) SCSI: “Ultra4” (160 MHz), “Wide” (2 bytes)  0.3 GB/s (peak) Gigabit Ethernet:  0.125 GB/s (peak)

Main components of Intel Chipset: Pentium II/III Northbridge: Handles memory Graphics Southbridge: I/O PCI bus Disk controllers USB controlers Audio Serial I/O Interrupt controller Timers

A Three-Bus System (+ backside cache) Processor Memory Bus (FSB) Processor Memory Bus Adaptor Backside Cache bus Bus Adaptor I/O Bus L2 Cache Bus Adaptor I/O Bus Backplane A small number of backplane buses tap into the processor-memory bus FSB bus is only used for processor-memory traffic I/O buses are connected to the backplane bus (PCI) Advantage: load on the FSB is greatly reduced Finally, in a 3-bus system, a small number of backplane buses (in our example here, just 1) tap into the processor-memory bus. The processor-memory bus is used mainly for processor memory traffic while the I/O buses are connected to the backplane bus via bus adaptors. An advantage of this organization is that the loading on the processor-memory bus is greatly reduced because of the small number of taps into the high-speed processor-memory bus. +1 = 26 min. (Y:06)

What is DMA (Direct Memory Access)? Typical I/O devices must transfer large amounts of data to memory of processor: Disk must transfer complete block Large packets from network Regions of frame buffer DMA gives external device ability to access memory directly: much lower overhead than having processor request one word at a time. Issue: Cache coherence: What if I/O devices write data that is currently in processor Cache? The processor may never see new data! Solutions: Flush cache on every I/O operation (expensive) Have hardware invalidate cache lines (“Coherence” cache misses?) ?

Outline Buses Networks Disks RAID

Why Networks? Originally sharing I/O devices between computers (e.g., printers) Then Communicating between computers (e.g, file transfer protocol) Then Communicating between people (e.g., email) Then Communicating between networks of computers  p2p File sharing, WWW, …

How Big is the Network (1999)? ~30 ~400 ~4,000 ~50,000 ~5,000,000 ~46,000,000 ~56,000,000 Computers in 271 Soda in inst.cs.berkeley.edu in eecs&cs .berkeley.edu in berkeley.edu in .edu in US (.com .net .edu .mil .us .org) in the world Source: Internet Software Consortium

Growth Rates Ethernet Bandwidth 1983 3 mb/s 1990 10 mb/s 1997 100 mb/s 2004 10 Gig E (to come!) "Source: Internet Software Consortium (http://www.isc.org/)".

What makes networks work? links connecting switches to each other and to computers or devices Computer network interface switch ability to name the components and to route packets of information - messages - from a source to a destination Layering, protocols, and encapsulation as means of abstraction (61C big idea)

Typical Types of Networks Local Area Network (Ethernet) Inside a building: Up to 1 km (peak) Data Rate: 10 Mbits/sec, 100 Mbits /sec,10Gbits/sec (1.25, 12.5, 1250 MBytes/s) Run, installed by network administrators Wide Area Network Across a continent (10km to 10000 km) (peak) Data Rate: 1.5 Mb/s to >10000 Mb/s Run, installed by telecommunications companies (Sprint, UUNet[MCI], AT&T) Wireless Networks

ABCs of Networks: 2 Computers Starting Point: Send bits between 2 computers Queue (First In First Out) on each end Can send both ways (“Full Duplex”) Information sent called a “message” Note: Messages also called packets network interface device OS appln Note: Optical is half-duplex

A Simple Example: 2 Computers What is Message Format? Similar idea to Instruction Format Fixed size? Number bits? Data Length 8 bit 32 x Length bits Header(Trailer): information to deliver message Payload: data in message What can be in the data? anything that you can represent as bits values, chars, commands, addresses...

Questions About Simple Example What if more than 2 computers want to communicate? Need computer “address field” in packet to know which computer should receive it (destination), and to which computer it came from for reply (source) [just like envelopes!] CMD/ Address /Data Net ID Dest. Source Len Our packets need 8 bits 32xn bits Header Payload

source encodes and destination decodes content of the payload ABCs: many computers network interface device OS application switches and routers interpret the header in order to deliver the packet source encodes and destination decodes content of the payload

Questions About Simple Example What if message is garbled in transit? Add redundant information that is checked when message arrives to be sure it is OK 8-bit sum of other bytes: called “Check sum”; upon arrival compare check sum to sum of rest of information in message Header Payload Checksum Trailer CMD/ Address /Data Net ID Len Math 55 talks about what a Check sum is…

Questions About Simple Example What if message never arrives? Receiver tells sender when it arrives (ack) [ala registered mail], sender retries if waits too long Don’t discard message until get “ACK” (for ACKnowledgment); Also, if check sum fails, don’t send ACK Header Payload Checksum Trailer CMD/ Address /Data Net ID Len ACK INFO

Observations About Simple Example Simple questions such as those above lead to more complex procedures to send/receive message and more complex message formats Protocol: algorithm for properly sending and receiving messages (packets)

Software Protocol to Send and Receive SW Send steps 1: Application copies data to OS buffer 2: OS calculates checksum, starts timer 3: OS sends data to network interface HW and says start SW Receive steps 3: OS copies data from network interface HW to OS buffer 2: OS calculates checksum, if OK, send ACK; if not, delete message (sender resends when timer expires) 1: If OK, OS copies data to user address space, & signals application to continue

Protocol for Networks of Networks? Internetworking: allows computers on independent and incompatible networks to communicate reliably and efficiently; Enabling technologies: SW standards that allow reliable communications without reliable networks Hierarchy of SW layers, giving each layer responsibility for portion of overall communications task, called protocol families or protocol suites Abstraction to cope with complexity of communication vs. Abstraction for complexity of computation WS companies used TCP/IP even over LAN Because early Ethernet controllers were cheap, but not reliable

Protocol Family Concept Message Logical Message Message T H Actual Logical T H Message Actual Physical

Protocol Family Concept Key to protocol families is that communication occurs logically at the same level of the protocol, called peer-to- peer… …but is implemented via services at the next lower level Encapsulation: carry higher level information within lower level “envelope” Fragmentation: break packet into multiple smaller packets and reassemble

Protocol for Network of Networks Transmission Control Protocol/Internet Protocol (TCP/IP) This protocol family is the basis of the Internet, a WAN protocol IP makes best effort to deliver TCP guarantees delivery TCP/IP so popular it is used even when communicating locally: even across homogeneous LAN WS companies used TCP/IP even over LAN Because early Ethernet controllers were cheap, but not reliable

TCP/IP packet, Ethernet packet, protocols Application sends message EH Ethernet Hdr IP Header IP Data TCP breaks into 64KB segments, adds 20B header TCP data TCP Header IP adds 20B header, sends to network Message If Ethernet, broken into 1500B packets with headers, trailers (24B) Question from student: Is there a TCP & IP header in every Ethernet packet? All Headers, trailers have length field, destination, ...

Overhead vs. Bandwidth Networks are typically advertised using peak bandwidth of network link: e.g., 100 Mbits/sec Ethernet (“100 base T”) Software overhead to put message into network or get message out of network often limits useful bandwidth Assume overhead to send and receive = 320 microseconds (ms), want to send 1000 Bytes over “100 Mbit/s” Ethernet Network transmission time: 1000Bx8b/B /100Mb/s = 8000b / (100b/ms) = 80 ms Effective bandwidth: 8000b/(320+80)ms = 20 Mb/s

Shared vs. Switched Based Networks Node Shared Shared Media vs. Switched: in switched, pairs (“point-to-point” connections) communicate at same time; shared 1 at a time Aggregate bandwidth (BW) in switched network is many times shared: point-to-point faster since no arbitration, simpler interface Crossbar Switch Node Analogy for shared: “It’s like naked students running between dorm rooms -- many can look (read common bus) but only 1 in hall (drives bus) at a time”

Protocol suites allow heterogeneous networking Network Summary Protocol suites allow heterogeneous networking Another form of principle of abstraction Protocols  operation in presence of failures Standardization key for LAN, WAN Integrated circuit (“Moore’s Law”) revolutionizing network switches as well as processors Switch just a specialized computer Trend from shared to switched networks to get faster links and scalable bandwidth

Outline Buses Networks Disks RAID

Magnetic Disks Purpose: Keyboard, Mouse Computer Processor (active) Memory (passive) (where programs, data live when running) Devices Input Disk, Network Control (“brain”) Output Datapath (“brawn”) Display, Printer Purpose: Long-term, nonvolatile, inexpensive storage for files Large, inexpensive, slow level in the memory hierarchy (discuss later)

Photo of Disk Head, Arm, Actuator Spindle Arm Head Actuator Platters (12) {

Disk Device Terminology Platter Outer Track Inner Sector Actuator Head Arm Several platters, with information recorded magnetically on both surfaces (usually) Bits recorded in tracks, which in turn divided into sectors (e.g., 512 Bytes) Actuator moves head (end of arm) over track (“seek”), wait for sector rotate under head, then read or write

Disk Device Performance Inner Track Outer Track Sector Head Controller Arm Spindle Platter Actuator Disk Latency = Seek Time + Rotation Time + Transfer Time + Controller Overhead Seek Time? depends 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 Use analogy to records

Data Rate: Inner vs. Outer Tracks To keep things simple, originally same # of sectors/track Since outer track longer, lower bits per inch Competition decided to keep bits/inch (BPI) high for all tracks (“constant bit density”) More capacity per disk More sectors per track towards edge Since disk spins at constant speed, outer tracks have faster data rate Bandwidth outer track 1.7X inner track!

Disk Performance Model /Trends Capacity : + 100% / year (2X / 1.0 yrs) Over time, grown so fast that # of platters has reduced (some even use only 1 now!) Transfer rate (BW) : + 40%/yr (2X / 2 yrs) Rotation+Seek time : – 8%/yr (1/2 in 10 yrs) Areal Density Bits recorded along a track: Bits/Inch (BPI) # of tracks per surface: Tracks/Inch (TPI) We care about bit density per unit area Bits/Inch2 Called Areal Density = BPI x TPI MB/$: > 100%/year (2X / 1.0 yrs) Fewer chips + areal density

Disk History (IBM) 1973: 1. 7 Mbit/sq. in 0.14 GBytes 1979: Data density Mbit/sq. in. Capacity of Unit Shown Megabytes 1973: 1. 7 Mbit/sq. in 0.14 GBytes 1979: 7. 7 Mbit/sq. in 2.3 GBytes source: New York Times, 2/23/98, page C3, “Makers of disk drives crowd even more data into even smaller spaces”

Disk History 1989: 63 Mbit/sq. in 60 GBytes 1997: 1450 Mbit/sq. in source: New York Times, 2/23/98, page C3, “Makers of disk drives crowd even more data into even smaller spaces”

Modern Disks: Barracuda 7200.7 (2004) 200 GB, 3.5-inch disk 7200 RPM; Serial ATA 2 platters, 4 surfaces 8 watts (idle) 8.5 ms avg. seek 32 to 58 MB/s Xfer rate $125 = $0.625 / GB source: www.seagate.com;

Modern Disks: Mini Disks 2004 Toshiba Minidrive: 2.1” x 3.1” x 0.3” 40 GB, 4200 RPM, 31 MB/s, 12 ms seek 20GB/inch3 !! Mp3 Players

Modern Disks: 1 inch disk drive! 2004 Hitachi Microdrive: 1.7” x 1.4” x 0.2” 4 GB, 3600 RPM, 4-7 MB/s, 12 ms seek 8.4 GB/inch3 Digital cameras, PalmPC 2006 MicroDrive? 16 GB, 10 MB/s! Assuming past trends continue

Modern Disks: << 1 inch disk drive! Not magnetic but … 1gig Secure digital Solid State NAND Flash 1.2” x 0.9” x 0.08” (!!) 11.6 GB/inch3

Outline Buses Networks Disks RAID

Use Arrays of Small Disks… Katz and Patterson asked in 1987: Can smaller disks be used to close gap in performance between disks and CPUs? Conventional: 4 disk designs 3.5” 5.25” 10” 14” Low End High End Disk Array: 1 disk design 3.5”

Replace Small Number of Large Disks with Large Number of Small Disks Replace Small Number of Large Disks with Large Number of Small Disks! (1988 Disks) IBM 3390K 20 GBytes 97 cu. ft. 3 KW 15 MB/s 600 I/Os/s 250 KHrs $250K IBM 3.5" 0061 320 MBytes 0.1 cu. ft. 11 W 1.5 MB/s 55 I/Os/s 50 KHrs $2K x70 23 GBytes 11 cu. ft. 1 KW 120 MB/s 3900 IOs/s ??? Hrs $150K Capacity Volume Power Data Rate I/O Rate MTTF Cost 9X 3X 8X 6X Disk Arrays potentially high performance, high MB per cu. ft., high MB per KW, but what about reliability?

Reliability - whether or not a component has failed Array Reliability Reliability - whether or not a component has failed measured as Mean Time To Failure (MTTF) Reliability of N disks = Reliability of 1 Disk ÷ N (assuming failures independent) 50,000 Hours ÷ 70 disks = 700 hour Disk system MTTF: Drops from 6 years to 1 month! Disk arrays (JBOD) too unreliable to be useful!

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

Berkeley History, RAID-I Consisted of a Sun 4/280 workstation with 128 MB of DRAM, four dual-string SCSI controllers, 28 5.25-inch SCSI disks and specialized disk striping software Today RAID is $27 billion dollar industry, 80% nonPC disks sold in RAIDs

Assume have 4 disks of data for this example, organized in blocks “RAID 0”: Striping Assume have 4 disks of data for this example, organized in blocks Large accesses faster since transfer from several disks at once This and next 5 slides from RAID.edu, http://www.acnc.com/04_01_00.html

RAID 1: Mirror Each disk is fully duplicated onto its “mirror” Very high availability can be achieved Bandwidth reduced on write: 1 Logical write = 2 physical writes Most expensive solution: 100% capacity overhead

RAID 3: Parity Parity computed across group to protect against hard disk failures, stored in P disk Logically, a single high capacity, high transfer rate disk 25% capacity cost for parity in this example vs. 100% for RAID 1 (5 disks vs. 8 disks)

Small writes (write to one disk): Inspiration for RAID 5 Small writes (write to one disk): Option 1: read other data disks, create new sum and write to Parity Disk (access all disks) Option 2: since P has old sum, compare old data to new data, add the difference to P: 1 logical write = 2 physical reads + 2 physical writes to 2 disks Parity Disk is bottleneck for Small writes: Write to A0, B1 => both write to P disk A0 B0 C0 D0 P A1 B1 C1 D1 P

RAID 5: Rotated Parity, faster small writes Independent writes possible because of interleaved parity Example: write to A0, B1 uses disks 0, 1, 4, 5, so can proceed in parallel Still 1 small write = 4 physical disk accesses

Magnetic Disk Summary Magnetic Disks continue rapid advance: 60%/yr capacity, 40%/yr bandwidth, slow on seek, rotation improvements, MB/$ improving 100%/yr? Designs to fit high volume form factor RAID Higher performance with more disk arms per $ Adds option for small # of extra disks Today RAID is > $27 billion dollar industry, 80% nonPC disks sold in RAIDs; started at Cal