Low Overhead Interrupt Handling with SMT

Slides:



Advertisements
Similar presentations
Full-System Timing-First Simulation Carl J. Mauer Mark D. Hill and David A. Wood Computer Sciences Department University of Wisconsin—Madison.
Advertisements

System Area Network Abhiram Shandilya 12/06/01. Overview Introduction to System Area Networks SAN Design and Examples SAN Applications.
1 Memory hierarchy and paging Electronic Computers M.
Department of Computer Science iGPU: Exception Support and Speculative Execution on GPUs Jaikrishnan Menon, Marc de Kruijf Karthikeyan Sankaralingam Vertical.
Presented By Srinivas Sundaravaradan. MACH µ-Kernel system based on message passing Over 5000 cycles to transfer a short message Buffering IPC L3 Similar.
ECE 526 – Network Processing Systems Design Software-based Protocol Processing Chapter 7: D. E. Comer.
VIA and Its Extension To TCP/IP Network Yingping Lu Based on Paper “Queue Pair IP, …” by Philip Buonadonna.
A Comparative Study of Network Protocols & Interconnect for Cluster Computing Performance Evaluation of Fast Ethernet, Gigabit Ethernet and Myrinet.
G Robert Grimm New York University Disco.
Architectural Support for Operating Systems. Announcements Most office hours are finalized Assignments up every Wednesday, due next week CS 415 section.
1 Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented By Jonathan.
CS 300 – Lecture 22 Intro to Computer Architecture / Assembly Language Virtual Memory.
Architectural Considerations for CPU and Network Interface Integration C. D. Cranor; R. Gopalakrishnan; P. Z. Onufryk IEEE Micro Volume: 201, Jan.-Feb.
Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented by Reinette Grobler.
Computer System Structures memory memory controller disk controller disk controller printer controller printer controller tape-drive controller tape-drive.
UQC113S2 Interrupt driven IO. We have already seen the hardware support required to facilitate interrupts We will now look at the higher levels of software.
Xen and the Art of Virtualization. Introduction  Challenges to build virtual machines Performance isolation  Scheduling priority  Memory demand  Network.
Revisiting Network Interface Cards as First-Class Citizens Wu-chun Feng (Virginia Tech) Pavan Balaji (Argonne National Lab) Ajeet Singh (Virginia Tech)
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
High Performance User-Level Sockets over Gigabit Ethernet Pavan Balaji Ohio State University Piyush Shivam Ohio State University.
Three fundamental concepts in computer security: Reference Monitors: An access control concept that refers to an abstract machine that mediates all accesses.
The NE010 iWARP Adapter Gary Montry Senior Scientist
1 Chapter 2: Computer-System Structures  Computer System Operation  I/O Structure  Storage Structure  Storage Hierarchy  Hardware Protection  General.
Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure.
Srihari Makineni & Ravi Iyer Communications Technology Lab
ND The research group on Networks & Distributed systems.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 2 Computer-System Structures Slide 1 Chapter 2 Computer-System Structures.
Introduction to virtualization
LRPC Firefly RPC, Lightweight RPC, Winsock Direct and VIA.
1 Lecture 1: Computer System Structures We go over the aspects of computer architecture relevant to OS design  overview  input and output (I/O) organization.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage.
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
Advisor: Hung Shi-Hao Presenter: Chen Yu-Jen
Input/Output (I/O) Important OS function – control I/O
Computer Architecture Lecture 12: Virtual Memory I
Virtual Machine Monitors
Chapter 2: Computer-System Structures(Hardware)
Chapter 2: Computer-System Structures
Chapter 1: Introduction
Today How was the midterm review? Lab4 due today.
CS 286 Computer Organization and Architecture
CS703 - Advanced Operating Systems
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage.
Final Review CS144 Review Session 9 June 4, 2008 Derrick Isaacson
Internetworking: Hardware/Software Interface
Computer-System Architecture
Module 2: Computer-System Structures
Xen Network I/O Performance Analysis and Opportunities for Improvement
Direct Memory Access Disk and Network transfers: awkward timing:
Sarah Diesburg Operating Systems CS 3430
Today’s agenda Hardware architecture and runtime system
Andy Wang Operating Systems COP 4610 / CGS 5675
Presented by Neha Agrawal
CSE 451: Operating Systems Autumn 2003 Lecture 2 Architectural Support for Operating Systems Hank Levy 596 Allen Center 1.
Module 2: Computer-System Structures
CSE 451: Operating Systems Autumn 2001 Lecture 2 Architectural Support for Operating Systems Brian Bershad 310 Sieg Hall 1.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
CSE 451: Operating Systems Winter 2007 Module 2 Architectural Support for Operating Systems Brian Bershad 562 Allen Center 1.
CSE 451: Operating Systems Winter 2003 Lecture 2 Architectural Support for Operating Systems Hank Levy 412 Sieg Hall 1.
Lecture 8: Efficient Address Translation
Chapter 2: Computer-System Structures
Wireless Embedded Systems
Chapter 2: Computer-System Structures
Module 2: Computer-System Structures
Steve Gribble (for Hank Levy)
Module 2: Computer-System Structures
Sarah Diesburg Operating Systems COP 4610
Andy Wang Operating Systems COP 4610 / CGS 5675
Paging Andrew Whitaker CSE451.
Presentation transcript:

Low Overhead Interrupt Handling with SMT CS 252 Greg Gibeling Andrew Schultz

Problem Traditional OS interrupt handling adds latency (context switch + copies) High bandwidth devices overwhelm traditional I/O architecture Ethernet speed increasing faster than processor (10 Gb/s Ethernet becoming common) Require interrupt coalescing, TOEs and other techniques to handle

Problem (cont) Motivation: Click Can we do better? Click removes traditional interrupt handling code in favor of direct polling on DMA descriptors Can we do better? Get low latency, low overhead demanded by Click with traditional interrupt paradigm

Solution Re-evaluate I/O architecture Allow OS more control over resources it needs for low latency Use “hot” SMT thread to reduce context switch overhead Zero kernel/user copy of data

How Dedicate SMT thread to device handling Cache pinning to give more control over what stays in cache Tighter integration with hardware to support user level networking (a la U-Net) Allow device handling thread to initiate DMA directly to user buffers Evaluate with M5 or ML-RSIM (maybe compare Click under polling and new I/O)

Cool Things Able to support high speed I/O applications like Click with commodity HW/SW (w/o rewriting int. handling) Primarily aimed at I/O but has implications for improving all exception handling Architectural support for application control of data unit size

What’s Related Hardware Software (OS) EMP – True zero copy on NIC SMT exception handling – Done for TLB misses On-chip NICs – Tighter coupling between NIC and CPU TOEs and accelerators – Shift processing to special devices Software (OS) U-Net – ADU + fewer copies, more application control Click – Change method from interrupt to polling Interrupt coalescing – Add latency, reduce thrashing