1 / 25

Impact of I/O on System Performance in Interfacing Processors and Peripherals

This chapter explores the importance of I/O in computer systems, discussing factors affecting I/O design, the impact of I/O on system performance, and assessing I/O performance. It covers various I/O devices and their relevance in a networked society.

lwills
Download Presentation

Impact of I/O on System Performance in Interfacing Processors and Peripherals

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 8 Interfacing Processors and Peripherals

  2. Interfacing Processors and Peripherals • I/O Design affected by many factors (expandability, resilience) • Performance: — access latency — throughput — connection between devices and the system — the memory hierarchy — the operating system • A variety of different users (e.g., banks, supercomputers, engineers)each has different requirements.

  3. Typical Collection of I/O Devices

  4. Importance of I/O in a Networked Society • Processors are being built from the same basic technology. • I/O becomes one of the most distinctive features of the machines. • As the importance of networking and information infrastructure grows, I/O plays an increasing important role.

  5. Impact of I/O on System Performance • Suppose we have a benchmark that executes in 100 seconds of elapse time, where 90 seconds is CPU time and the rest is I/O time. If the CPU improves by 50% per year for the next five years but I/O time doesn’t improve, how much faster will our program run at the end of five years?Amdahl’s Law again!

  6. I/O • Important but neglected “The difficulties in assessing and designing I/O systems have often relegated I/O to second class status” “courses in every aspect of computing, from programming to computer architecture often ignore I/O or give it scanty coverage” “textbooks leave the subject to near the end, making it easier for students and instructors to skip it!” • GUILTY! — we won’t be looking at I/O in much detail — be sure and read Chapter 8 in its entirety. — you should probably take a networking class!

  7. Assessing I/O Performance • Depends on the application • System throughput • I/O bandwidth • how much data can we move through the system in a certain time? • How many I/O operations can we do per unit of time? • Response time

  8. I/O Performance Measures • Examples from Disk and File Systems • affected by disk technology, how disk are connected, the memory, the processor, and the file system provided by the OS. • Benchmark relatively primitive compared with those for the CPU. • Note: transfer rate: 1 MB = 10^6 bytes, not 2^20 bytes • Supercomputer I/O benchmarks: dominated by access to large files on magnetic disks. Data throughput, # of bytes per second that can be transferred between a supercomputer’s main memory and disks. • Transaction Processing(TP) I/O benchmarks: • involve both response time requirement and a performance based on throughput. • Concerned with I/O rate, measured as # of disk accesses per second. • TPC has developed several benchmarks. • File System I/O benchmarks: five phases --> Makedir, Copy, ScanDir, ReadAll, Make

  9. I/O Devices • Very diverse devices — behavior (i.e., input vs. output) — partner (who is at the other end?) — data rate: peak rate at which data can be transferred

  10. Magnetic Disks • Disk storage is nonvolatile, meaning that the data remains even when power is removed. • Platters in hard disk are metal (or glass), offering several advantages over floppy disks: • can be larger because it is rigid • has higher density because it can be controlled more precisely • Has a higher data rate because it spins faster • can incorporate more platter

  11. I/O Example: Disk Drives • To access data: — seek: position head over the proper track (8 to 20 ms. avg.) — rotational latency: wait for desired sector (.5 / RPM) — transfer: grab the data (one or more sectors) 2 to 15 MB/sec

  12. Example • For a disk rotating at 3600 RPM, average rotational latency = 0.5 rotation / 3600 RPM = 0.5 rotation/(3600 RPM/ 60) = 8.3ms • For a disk rotating at 7200 RPM, average rotational latency = 4.2ms • Note: detailed control of the disk and the transfer between the disk and the memory is usually handled by a disk controller. The controller adds the final component of disk access time, controller time. • The average time to perform an I/O operation will consist of these four times plus any wait time incurred because other processes are using the disk. • Many recent disks have included caches directly in the disk to speed up the access time.

  13. Disk Read Time • What is the average time to read or write a 512-byte sector for a typical disk rotating at 5400 RPM? The advertised average seek time is 12 ms, the transfer rate is 5MB/sec, and the control overhead is 2ms. (Assuming no waiting time)

  14. Networks • Key characteristics of typical networks: • distance: 0.01 to 10,000 kilometers • speed: 0.001 MB/sec to 1GBit/sec • topology: bus, ring, star, tree • shared lines: none (point-to-point) or shared • RS232: slow but cheap • LAN (ethernet): up to 1GBit/sec • Ethernet is a bus with multiple masters and a scheme for determining who gets bus control. • ATM: scalable network technology (155 Mbits/sec to 2.5 Gbits/sec) • Example: Performance of two networks( p.654 of text)

  15. I/O Example: Buses • Shared communication link (one or more wires) • Difficult design: — may be bottleneck — length of the bus — number of devices — tradeoffs (buffers for higher bandwidth increases latency) — support for many different devices — cost • Types of buses: — processor-memory (short high speed, custom design) — backplane (high speed, often standardized, e.g., PCI) — I/O (lengthy, different devices, standardized, e.g., SCSI)

  16. Bus: Connecting I/O Devices to Processor and Memory • A bus generally contains a set of control lines and a set of data lines. • Control lines are used to signal requests and acknowledges, and to indicate what type of information is on the data lines • Data lines carry information between the source and the destination. The information may consist of data, complex commands or addresses. • Bus transaction includes two parts: sending the address and receiving or sending the data. • Read transaction == input to memory so the processor can read it • Write transaction == output to device from memory

  17. C o n t r o l l i n e s M e m o r y P r o c e s s o r D a t a l i n e s D i s k s C o n t r o l l i n e s M e m o r y P r o c e s s o r D a t a l i n e s D i s k s C o n t r o l l i n e s P r o c e s s o r D a t a l i n e s D i s 7 0 1 8 / P t t r s o n i g . 8 . 0 7 Output Operation a . b . M e m o r y k s c .

  18. Synchronous and Asynchronous Buses • Synchronous buses • use a clock and a synchronous protocol, fast and small • but every device must operate at same rate • clock skew requires the bus to be short • processor-memory buses are often synchronous • Asynchronous buses • don’t use a clock and instead use handshaking • can accommodate a wide variety of devices

  19. Asynchronous Protocol • Let’s look at some examples from the text “Performance Analysis of Synchronous vs. Asynchronous” “Performance Analysis of Two Bus Schemes”

  20. Increasing Bus Bandwidth • Data bus width • Separate versus multiplexed address and data lines • Block transfers

  21. Bus Arbitration • daisy chain arbitration (not very fair) • centralized arbitration (requires an arbiter), e.g., PCI • self selection, e.g., NuBus used in Macintosh • collision detection, e.g., Ethernet

  22. Bus Standards • PCI ( a general purpose backplane bus) • SCSI (Small Computer System Interface) • IEEE 1394 (Firewire) • USB 2.0

  23. Interfacing I/O Devices • Operating system: — polling — interrupts — DMA

  24. Overhead of Polling • Example 1: mouse • Example 2: floppy disk • Example 3: hard disk • What if we use a interrupt-driven I/O? • How about DMA?

  25. I/O System Design • Performance Analysis techniques: — queuing theory — simulation — analysis, i.e., find the weakest link (see “I/O System Design”) • Many new developments

More Related