Jump to first page Flash An efficient and portable Web server presented by Andreas Anagnostatos CSE 291 Feb. 2, 2000 Vivek S. Pai Peter Druschel Willy.

Slides:



Advertisements
Similar presentations
Lazy Asynchronous I/O For Event-Driven Servers Khaled Elmeleegy, Anupam Chanda and Alan L. Cox Department of Computer Science Rice University, Houston,
Advertisements

© DEEDS – OS Course WS11/12 Lecture 10 - Multiprocessing Support 1 Administrative Issues  Exam date candidates  CW 7 * Feb 14th (Tue): * Feb 16th.
A KTEC Center of Excellence 1 Cooperative Caching for Chip Multiprocessors Jichuan Chang and Gurindar S. Sohi University of Wisconsin-Madison.
Event-Driven Programming Vivek Pai Dec 4, GedankenEvents  Enron – bad news all around  What are these numbers: $1B, $100B, $80B, $200M  Korean.
IO-Lite: A Unified Buffering and Caching System By Pai, Druschel, and Zwaenepoel (1999) Presented by Justin Kliger for CS780: Advanced Techniques in Caching.
IO-Lite: A Unified I/O Buffering and Caching System Vivek S. Pai, Peter Drusche Willy and Zwaenepoel 산업공학과 조희권.
Flash: An efficient and portable Web server Authors: Vivek S. Pai, Peter Druschel, Willy Zwaenepoel Presented at the Usenix Technical Conference, June.
Chapter 4: Threads. Overview Multithreading Models Threading Issues Pthreads Windows XP Threads.
Fast Servers Robert Grimm New York University Or: Religious Wars, part I, Events vs. Threads.
Capriccio: Scalable Threads for Internet Services ( by Behren, Condit, Zhou, Necula, Brewer ) Presented by Alex Sherman and Sarita Bafna.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Bugnion et al. Presented by: Ahmed Wafa.
CS 623 Lecture #9 Yen-Yu Chen Utku Irmak. Papers to be read Better operating system features for faster network servers.Better operating system features.
Fast Servers Robert Grimm New York University Or: Religious Wars, part I, Events vs. Threads.
Precept 3 COS 461. Concurrency is Useful Multi Processor/Core Multiple Inputs Don’t wait on slow devices.
Accurate and Efficient Replaying of File System Traces Nikolai Joukov, TimothyWong, and Erez Zadok Stony Brook University (FAST 2005) USENIX Conference.
Event-Driven Programming Vivek Pai Dec 5, GedankenBits  What does a raw bit cost?  IDE  40GB: $100  120GB: $180  32MB USB Pen: $38  FireWire:
Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented by Reinette Grobler.
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture IV: OS Support.
1 Chapter 4 Threads Threads: Resource ownership and execution.
A. Frank - P. Weisberg Operating Systems Introduction to Tasks/Threads.
Basic Networking & Interprocess Communication Vivek Pai Nov 27, 2001.
PRASHANTHI NARAYAN NETTEM.
The Mach System "Operating Systems Concepts, Sixth Edition" by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne Presentation by Jonathan Walpole.
Operating Systems CSE 411 CPU Management Sept Lecture 11 Instructor: Bhuvan Urgaonkar.
CS252: Systems Programming Ninghui Li Final Exam Review.
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services
Flash An efficient and portable Web server. Today’s paper, FLASH Quite old (1999) Reading old papers gives us lessons We can see which solution among.
Operating System Principles Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh.
1 Design and Performance of a Web Server Accelerator Eric Levy-Abegnoli, Arun Iyengar, Junehwa Song, and Daniel Dias INFOCOM ‘99.
Multithreading Allows application to split itself into multiple “threads” of execution (“threads of execution”). OS support for creating threads, terminating.
Threading Models in Visual Basic Language Student Name: Danyu Xu Student ID:98044.
Operating Systems ECE344 Ashvin Goel ECE University of Toronto Threads and Processes.
Penn State CSE “Optimizing Network Virtualization in Xen” Aravind Menon, Alan L. Cox, Willy Zwaenepoel Presented by : Arjun R. Nath.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
ECE200 – Computer Organization Chapter 9 – Multiprocessors.
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Vidhya Sivasankaran.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
The Mach System Abraham Silberschatz, Peter Baer Galvin, Greg Gagne Presentation By: Agnimitra Roy.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 4: Threads.
The Mach System Silberschatz et al Presented By Anjana Venkat.
Operating Systems: Internals and Design Principles
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
LAIO: Lazy Asynchronous I/O For Event Driven Servers Khaled Elmeleegy Alan L. Cox.
CSC 360, Instructor: Kui Wu Thread & PThread. CSC 360, Instructor: Kui Wu Agenda 1.What is thread? 2.User vs kernel threads 3.Thread models 4.Thread issues.
SEDA An architecture for Well-Conditioned, scalable Internet Services Matt Welsh, David Culler, and Eric Brewer University of California, Berkeley Symposium.
Threads. Readings r Silberschatz et al : Chapter 4.
An Efficient Threading Model to Boost Server Performance Anupam Chanda.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Presented by: Pierre LaBorde, Jordan Deveroux, Imran Ali, Yazen Ghannam, Tzu-Wei.
Making the “Box” Transparent: System Call Performance as a First-class Result Yaoping Ruan, Vivek Pai Princeton University.
UDI Technology Benefits Slide 1 Uniform Driver Interface UDI Technology Benefits.
For each of these, where could the data be and how would we find it? TLB hit – cache or physical memory TLB miss – cache, memory, or disk Virtual memory.
CDA-5155 Computer Architecture Principles Fall 2000 Multiprocessor Architectures.
1 Threads, SMP, and Microkernels Chapter 4. 2 Process Resource ownership - process includes a virtual address space to hold the process image Scheduling/execution-
Page 1 2P13 Week 1. Page 2 Page 3 Page 4 Page 5.
Threads, SMP and Microkernels Process vs. thread: –Unit of resource ownership (process has virtual address space, memory, I/O channels, files) –Unit of.
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
1 Chapter 5: Threads Overview Multithreading Models & Issues Read Chapter 5 pages
Introduction to threads
CS 6560: Operating Systems Design
Processes and Threads Processes and their scheduling
Chapter 4: Multithreaded Programming
Lecture 7: Introduction to Threads
Oracle Memory Configuration on Windows Server
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Lecture 7: Introduction to Threads
Operating Systems : Overview
Presentation transcript:

Jump to first page Flash An efficient and portable Web server presented by Andreas Anagnostatos CSE 291 Feb. 2, 2000 Vivek S. Pai Peter Druschel Willy Zwaenepoel Rice University

Jump to first page Overview n Key features n Request processing steps n Server architectures n Flash implementation n Performance n Simulations/Comparisons n Conclusions n Discussion

Jump to first page Key features n A new Web server architecture n Aggressive optimizations n Portable n High performance across a wide range of workloads

Blocking steps of a request n Disk blocking u Find File u Read File n Network blocking u Accept Connection u Read Request u Send Header u Send Data

Multi-process architecture n Pros: u no synchronization necessary n Cons: u difficult to perform optimizations

Multi-threaded architecture n Pros: u share global variables u lower overhead for switching than MP n Cons: u OS must provide support u synchronization

SPED architecture n Pros: u No synchronization u No context switching n Cons: u Disk reads block

AMPED architecture n Pros: u Single process u No context switching u Helpers can be processes or threads u No synchronization u Non blocking n Cons: u NONE?

Jump to first page Flash Cons: n Extra cost wrt SPED for IPC between the main process and the helpers n More memory requirements than SPED n OTHERS?

Flash optimizations and caches n Memory-mapped files n Byte alignment (writev)

Performance n Apache(MP) n Zeus(SPED) n Flash(AMPED) n Flash-MT n Flash-MP n Flash-SPED

Single file test

Trace test

Trace test w/ varying dataset size

Individual optimization effects

WAN emulation n Initial rise due to aggregation effects n MT declines due to per-thread switching and memory overhead n MP per-request overhead

Summary n AMPED combines cache behavior of SPED and disk behavior of MT and PS n Shared address space n No synchronization n Low overhead for helpers n High performance in real workloads n Portable (?) n Discussion... u Would you prefer Flash over a commercial server? u Other features missing?