Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier

Similar documents
CMSC 611: Advanced Computer Architecture

CPS104 Computer Organization and Programming Lecture 18: Input-Output. Outline of Today s Lecture. The Big Picture: Where are We Now?

CS152 Computer Architecture and Engineering Lecture 19: I/O Systems

ECE232: Hardware Organization and Design

Adapted from instructor s supplementary material from Computer. Patterson & Hennessy, 2008, MK]

Chapter 8. A Typical collection of I/O devices. Interrupts. Processor. Cache. Memory I/O bus. I/O controller I/O I/O. Main memory.

Introduction to Input and Output

Chapter Seven Morgan Kaufmann Publishers

I/O CANNOT BE IGNORED

ECE7995 (4) Basics of Memory Hierarchy. [Adapted from Mary Jane Irwin s slides (PSU)]

CMSC 611: Advanced Computer Architecture. Cache and Memory

Where Have We Been? Ch. 6 Memory Technology

Computer System Architecture

Lecture 20: Memory Hierarchy Main Memory and Enhancing its Performance. Grinch-Like Stuff

Lecture 23: Storage Systems. Topics: disk access, bus design, evaluation metrics, RAID (Sections )

Module 1: Basics and Background Lecture 4: Memory and Disk Accesses. The Lecture Contains: Memory organisation. Memory hierarchy. Disks.

Computer Organization and Structure. Bing-Yu Chen National Taiwan University

CS61C - Machine Structures. Week 7 - Disks. October 10, 2003 John Wawrzynek

Storage Systems. Storage Systems

UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering. Computer Architecture ECE 568

Chapter 6. Storage and Other I/O Topics

INPUT/OUTPUT DEVICES Dr. Bill Yi Santa Clara University

CS61C : Machine Structures

UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering. Computer Architecture ECE 568

Lecture 18: Memory Hierarchy Main Memory and Enhancing its Performance Professor Randy H. Katz Computer Science 252 Spring 1996

Appendix D: Storage Systems

ECE468 Computer Organization and Architecture. Memory Hierarchy

I/O CANNOT BE IGNORED

Storage systems. Computer Systems Architecture CMSC 411 Unit 6 Storage Systems. (Hard) Disks. Disk and Tape Technologies. Disks (cont.

High-Performance Storage Systems

Recap: Making address translation practical: TLB. CS152 Computer Architecture and Engineering Lecture 24. Busses (continued) Queueing Theory Disk IO

Administrivia. CMSC 411 Computer Systems Architecture Lecture 19 Storage Systems, cont. Disks (cont.) Disks - review

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Computer Architecture. Hebrew University Spring Chapter 8 Input/Output. Big Picture: Where are We Now?

Chapter 6. Storage & Other I/O

Readings. Storage Hierarchy III: I/O System. I/O (Disk) Performance. I/O Device Characteristics. often boring, but still quite important

UNIT 2 Data Center Environment

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier

Chapter 11. I/O Management and Disk Scheduling

CS2410: Computer Architecture. Storage systems. Sangyeun Cho. Computer Science Department University of Pittsburgh

Storage System COSC UCB

Reading and References. Input / Output. Why Input and Output? A typical organization. CSE 410, Spring 2004 Computer Systems

CENG3420 Lecture 08: Memory Organization

Chapter 6 Storage and Other I/O Topics

Outline. EEL-4713 Computer Architecture I/O Systems. I/O System Design Issues. The Big Picture: Where are We Now? I/O Performance Measures

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

CSE 153 Design of Operating Systems Fall 2018

Recap: Machine Organization

Session: Hardware Topic: Disks. Daniel Chang. COP 3502 Introduction to Computer Science. Lecture. Copyright August 2004, Daniel Chang

Topics. Lecture 8: Magnetic Disks

ECE331: Hardware Organization and Design

Lecture 13. Storage, Network and Other Peripherals

Quiz for Chapter 6 Storage and Other I/O Topics 3.10

CS162 Operating Systems and Systems Programming Lecture 17. Disk Management and File Systems

Memories: Memory Technology

CS162 Operating Systems and Systems Programming Lecture 17. Disk Management and File Systems

CSE 153 Design of Operating Systems

Chapter 5. Large and Fast: Exploiting Memory Hierarchy

www-inst.eecs.berkeley.edu/~cs61c/

1.1 Bits and Bit Patterns. Boolean Operations. Figure 2.1 CPU and main memory connected via a bus. CS11102 Introduction to Computer Science

Storage. CS 3410 Computer System Organization & Programming

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2002

CSCI-UA.0201 Computer Systems Organization Memory Hierarchy

Concepts Introduced. I/O Cannot Be Ignored. Typical Collection of I/O Devices. I/O Issues

Data Storage and Query Answering. Data Storage and Disk Structure (2)

Where We Are in This Course Right Now. ECE 152 Introduction to Computer Architecture Input/Output (I/O) Copyright 2012 Daniel J. Sorin Duke University

Thomas Polzer Institut für Technische Informatik

Computer Hardware 2. Type of Computers. User Point of View. The Motherboard. Inside. Content

OPERATING SYSTEMS CS3502 Spring Input/Output System Chapter 9

Memory Hierarchy Y. K. Malaiya

Storage, Networks, and Other Peripherals

Storage. Hwansoo Han

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

Disk Scheduling COMPSCI 386

Chapter 6. Storage and Other I/O Topics

UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering. Computer Architecture ECE 568

CS252 S05. CMSC 411 Computer Systems Architecture Lecture 18 Storage Systems 2. I/O performance measures. I/O performance measures

COS 318: Operating Systems. Storage Devices. Jaswinder Pal Singh Computer Science Department Princeton University

I/O Systems. EECC551 - Shaaban. Processor. Cache. Memory - I/O Bus. Main Memory. I/O Controller. I/O Controller. I/O Controller. Graphics.

CS429: Computer Organization and Architecture

Page 1. Magnetic Disk Purpose Long term, nonvolatile storage Lowest level in the memory hierarchy. Typical Disk Access Time

Chapter 5. Large and Fast: Exploiting Memory Hierarchy

Virtual Memory. Reading. Sections 5.4, 5.5, 5.6, 5.8, 5.10 (2) Lecture notes from MKP and S. Yalamanchili

CS429: Computer Organization and Architecture

Storage Technologies and the Memory Hierarchy

COSC 243. Memory and Storage Systems. Lecture 10 Memory and Storage Systems. COSC 243 (Computer Architecture)

COS 318: Operating Systems. Storage Devices. Kai Li Computer Science Department Princeton University

ECE232: Hardware Organization and Design

OPERATING SYSTEMS CS3502 Spring Input/Output System Chapter 9

Introduction to I/O. April 30, Howard Huang 1

The University of Adelaide, School of Computer Science 13 September 2018

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier

Chapter 6. Storage and Other I/O Topics. ICE3003: Computer Architecture Fall 2012 Euiseong Seo

Components of the Virtual Memory System

CS 201 The Memory Hierarchy. Gerson Robboy Portland State University

COS 318: Operating Systems. Storage Devices. Vivek Pai Computer Science Department Princeton University

Virtual Memory Input/Output. Admin

Announcement. Computer Architecture (CSC-3501) Lecture 23 (17 April 2008) Chapter 7 Objectives. 7.1 Introduction. 7.2 I/O and Performance

u Covered: l Management of CPU & concurrency l Management of main memory & virtual memory u Currently --- Management of I/O devices

BCN1043. By Dr. Mritha Ramalingam. Faculty of Computer Systems & Software Engineering

Transcription:

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier Science

Performance of Main : Latency: affects cache miss penalty Access Time: time between request and word arrives Cycle Time: time between requests Bandwidth: primary concern for I/O & large block Main is DRAM: Dynamic RAM Dynamic since needs to be refreshed periodically Addresses divided into 2 halves (Row/Column) Cache uses SRAM: Static RAM No refresh 6 transistors/bit vs. 1 transistor/bit, 10X area Address not divided: Full address

4 Mbit DRAM: square root of bits per RAS/CAS Refreshing prevent access to the DRAM (typically 1-5% of the time) Reading one byte refreshes the entire row Read is destructive and thus data need to be rewritten after reading Cycle time is significantly larger than access time

Performance 1000 100 10 1 CPU-DRAM Gap Moore s Law CPU DRAM Proc 60%/yr. (2X/1.5yr) Processor- Performance Gap: (grows 50% / year) DRAM 9%/yr. (2X/10 yrs) 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 Time Problem: Improvements in access time are not enough to catch up Solution: Increase the bandwidth of main memory (improve throughput)

CPU CPU CPU Cache Multiplexor Cache Cache Bus Bus Bus bank 0 bank 1 bank 2 bank 3 a. One-word-wide memory organization b. Wide memory organization c. Interleaved memory organization Simple: CPU, Cache, Bus, same width (32 bits) Wide: CPU/Mux 1 word; Mux/Cache, Bus, N words Interleaved: CPU, Cache, Bus 1 word: N Modules (4 Modules); example is word interleaved organization would have significant effect on bandwidth

Access Pattern without Interleaving: CPU Access Bank 0 D1 available Start Access for D1 Start Access for D2 Access Pattern with 4-way Interleaving: Access Bank 1 Access Bank 2 Access Bank 3 CPU We can Access Bank 0 again Bank 0 Bank 1 Bank 2 Bank 3

I/O Interface Device drivers Device controller Service queues Interrupt handling Design Issues Performance Expandability Standardization Resilience to failure Impact on Tasks Blocking conditions Priority inversion Access ordering Computer Processor Control Datapath Computer Processor Control Datapath Devices Input Output Devices Input Output Networ k

Suppose we have a benchmark that executes in 100 seconds of elapsed time, where 90 seconds is CPU time and the rest is I/O time. If the CPU time improves by 50% per year for the next five years but I/O time does not improve, how much faster will our program run at the end of the five years? Answer: Elapsed Time = CPU time + I/O time After n years CPU time I/O time Elapsed time % I/O time 0 90 Seconds 10 Seconds 100 Seconds 10% 1 90 = 60 1. 5 Seconds 2 60 = 40 1. 5 Seconds 3 40 = 27 1. 5 Seconds 4 27 = 18 1. 5 Seconds 5 18 = 12 1. 5 Seconds 10 Seconds 70 Seconds 14% 10 Seconds 50 Seconds 20% 10 Seconds 37 Seconds 27% 10 Seconds 28 Seconds 36% 10 Seconds 22 Seconds 45% Over five years: CPU improvement = 90/12 = 7. BUT System improvement = 100/22 = 4.5

Processor interrupts Cache - I/O Bus Main I/O Controller I/O Controller I/O Controller Disk Disk Graphics Network The connection between the I/O devices, processor, and memory are usually called (local or internal) bus Communication among the devices and the processor use both protocols on the bus and interrupts

Device Behavior Partner Data Rate (KB/sec) Keyboard Input Human 0.01 Mouse Input Human 0.02 Line Printer Output Human 1.00 Floppy disk Storage Machine 50.00 Laser Printer Output Human 100.00 Optical Disk Storage Machine 500.00 Magnetic Disk Storage Machine 5,000.00 Network-LAN Input or Output Machine 20 1,000.00 Graphics Display Output Human 30,000.00

Data density in Mbit/square inch Capacity of Unit Shown in Megabytes source: New York Times, 2/23/98, page C3

Platters Track Sector Typical numbers (depending on the disk size): 500 to 2,000 tracks per surface 32 to 128 sectors per track A sector is the smallest unit that can be read or written to Traditionally all tracks have the same number of sectors: Constant bit density: record more sectors on the outer tracks Recently relaxed: constant bit size, speed varies with track location

Cylinder: all the tracks under the head at a given point on all surface Read/write is a three-stage process: Seek time Head position the arm over proper track Rotational latency wait for the sector to rotate under the read/write head Transfer time Track Sector transfer a block of bits (sector) under the read-write head Average seek time ( time for all possible seeks) / (# seeks) Typically in the range of 8 ms to 12 ms Due to locality of disk reference, actual average seek time may only be 25% to 33% of the advertised number Cylinder Platter

Rotational Latency: Most disks rotate at 3,600 to 7,200 RPM Approximately 16 ms to 8 ms per revolution, respectively An average latency to the desired information is halfway around the disk: 8 ms at 3600 RPM, 4 ms at 7200 RPM Transfer Time is a function of : Transfer size (usually a sector): 1 KB / sector Rotation speed: 3600 RPM to 7200 RPM Recording density: bits per inch on a track Diameter: typical diameter ranges from 2.5 to 5.25 Typical values: 2 to 12 MB per second

Calculate the access time for a disk with 512 byte/sector and 12 ms advertised seek time. The disk rotates at 5400 RPM and transfers data at a rate of 4MB/sec. The controller overhead is 1 ms. Assume that the queue is idle (so no service time) Answer: Disk Access Time = Seek time + Rotational Latency + Transfer time + Controller Time + Queuing Delay = 12 ms + 0.5 / 5400 RPM + 0.5 KB / 4 MB/s + 1 ms + 0 = 12 ms + 0.5 / 90 RPS + 0.125 / 1024 s + 1 ms + 0 ms = 12 ms + 5.5 ms + 0.1 ms + 1 ms + 0 = 18.6 ms If real seeks are 1/3 the advertised seeks, disk access time would be 10.6 ms, with rotation delay contributing 50% of the access time!