The Linux Benchmark Project Randy Appleton Kurt Payne Joe Schmeltzer Carey Stortz

Slides:



Advertisements
Similar presentations
Exadata Distinctives Brown Bag New features for tuning Oracle database applications.
Advertisements

Tutorial 3 - Linux Interrupt Handling -
Kernel memory allocation
1 CMSC421: Principles of Operating Systems Nilanjan Banerjee Principles of Operating Systems Assistant Professor, University of Maryland Baltimore County.
Flash: An efficient and portable Web server Authors: Vivek S. Pai, Peter Druschel, Willy Zwaenepoel Presented at the Usenix Technical Conference, June.
04/14/2008CSCI 315 Operating Systems Design1 I/O Systems Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
Home: Phones OFF Please Unix Kernel Parminder Singh Kang Home:
CS 300 – Lecture 20 Intro to Computer Architecture / Assembly Language Caches.
I/O Systems CS 3100 I/O Hardware1. I/O Hardware Incredible variety of I/O devices Common concepts ◦Port ◦Bus (daisy chain or shared direct access) ◦Controller.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Early OS security Overview by: Greg Morrisett Cornell University, Edited (by permission) for CSUS CSc250 by Bill Mitchell.
Basic Unix Dr Tim Cutts Team Leader Systems Support Group Infrastructure Management Team.
Hands-On Microsoft Windows Server 2008 Chapter 11 Server and Network Monitoring.
CH 13 Server and Network Monitoring. Hands-On Microsoft Windows Server Objectives Understand the importance of server monitoring Monitor server.
Windows Server 2008 Chapter 11 Last Update
I/O Systems ◦ Operating Systems ◦ CS550. Note:  Based on Operating Systems Concepts by Silberschatz, Galvin, and Gagne  Strongly recommended to read.
Computer Organization Review and OS Introduction CS550 Operating Systems.
Lecture 14: Operating Systems Intro to IT COSC1078 Introduction to Information Technology Lecture 14 Operating Systems James Harland
MapReduce. Web data sets can be very large – Tens to hundreds of terabytes Cannot mine on a single server Standard architecture emerging: – Cluster of.
Google MapReduce Simplified Data Processing on Large Clusters Jeff Dean, Sanjay Ghemawat Google, Inc. Presented by Conroy Whitney 4 th year CS – Web Development.
ITEC 325 Lecture 29 Memory(6). Review P2 assigned Exam 2 next Friday Demand paging –Page faults –TLB intro.
Page 19/17/2015 CSE 30341: Operating Systems Principles Optimal Algorithm  Replace page that will not be used for longest period of time  Used for measuring.
Hardware Definitions –Port: Point of connection –Bus: Interface Daisy Chain (A=>B=>…=>X) Shared Direct Device Access –Controller: Device Electronics –Registers:
ITEC 502 컴퓨터 시스템 및 실습 Chapter 8-2: I/O Management (Review) Mi-Jung Choi DPNM Lab. Dept. of CSE, POSTECH.
1 Module 12: I/O Systems n I/O hardware n Application I/O Interface n Kernel I/O Subsystem n Transforming I/O Requests to Hardware Operations n Performance.
Computing and the Web Operating Systems. Overview n What is an Operating System n Booting the Computer n User Interfaces n Files and File Management n.
IT253: Computer Organization
Real-Time Linux Evaluation NASA Glenn Research Center Kalynnda Berens Richard Plastow
Amy Apon, Pawel Wolinski, Dennis Reed Greg Amerson, Prathima Gorjala University of Arkansas Commercial Applications of High Performance Computing Massive.
Operating Systems COMP 4850/CISG 5550 Page Tables TLBs Inverted Page Tables Dr. James Money.
The Performance of Microkernel-Based Systems
Chapter 1 : The Linux System Part 1 Lecture 1 10/21/
CSE 451 – Operating Systems Section, Autumn 2003 TAs: Mike Swift Adrienne Noble
Chapter 13: I/O Systems. 13.2/34 Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests to Hardware.
Chapter 4 Memory Management Virtual Memory.
Chapter 10 System Monitoring Issues Performance Benchmarks NT Server Services Users and Server Access Information Task Manager for Applications Ram and.
The Performance of μ-Kernel-Based Systems H. Haertig, M. Hohmuth, J. Liedtke, S. Schoenberg, J. Wolter Presenter: Sunita Marathe.
CH 13 Server and Network Monitoring. Hands-On Microsoft Windows Server Objectives Understand the importance of server monitoring Monitor server.
(a) What is the output generated by this program? In fact the output is not uniquely defined, i.e., it is not necessarily the same in each execution. What.
GIT.
ICOM Noack Memory management Virtual memory Paging and segmentation Demand paging Memory management hardware.
The Performance of Micro-Kernel- Based Systems H. Haertig, M. Hohmuth, J. Liedtke, S. Schoenberg, J. Wolter Presentation by: Tim Hamilton.
Performance Analysis of HPC with Lmbench Didem Unat Supervisor: Nahil Sobh July 22 nd 2005 netfiles.uiuc.edu/dunat2/www.
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 12: I/O Systems I/O hardwared Application I/O Interface Kernel I/O.
COMP091 – Operating Systems 1 Memory Management. Memory Management Terms Physical address –Actual address as seen by memory unit Logical address –Address.
MINIX Presented by: Clinton Morse, Joseph Paetz, Theresa Sullivan, and Angela Volk.
Exceptional Control Flow
Ran Liu (Fudan Univ. Shanghai Jiaotong Univ.)
Virtualization.
Module 12: I/O Systems I/O hardware Application I/O Interface
Session 3 Memory Management
Hands-On Microsoft Windows Server 2008
ClamXav Antivirus Scanner: A Free Tool for Your Mac OS X
Introduction to Operating Systems
CSCI206 - Computer Organization & Programming
Chapter 11: File System Implementation
Page Replacement.
Operating System Concepts
13: I/O Systems I/O hardwared Application I/O Interface
CS703 - Advanced Operating Systems
CPU scheduling decisions may take place when a process:
Operating Systems Lecture 1.
CSE 451: Operating Systems Autumn 2003 Lecture 10 Paging & TLBs
CSE451 Virtual Memory Paging Autumn 2002
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
CSE 451: Operating Systems Autumn 2003 Lecture 10 Paging & TLBs
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Module 12: I/O Systems I/O hardwared Application I/O Interface
Presentation transcript:

The Linux Benchmark Project Randy Appleton Kurt Payne Joe Schmeltzer Carey Stortz

What We Did We are three undergraduates and a professor. Measured the source code of the kernel several ways. Measured the performance of the kernel several ways. This is undergraduate research, yet useful research.

Limitations We are kernel level only. We can describe, but only guess at why.

Why Linux? Linux is important. The source code is available. The development process is open. –Early versions available. –Lots of versions available. Linux is cool!

Which Kernels All kernels from to About 4.5 years of kernels. Taken every three months. –Intervals are by time, not version count. Ordered by version number. –Could have ordered by date. –Justifiable, but not obvious.

Counting Lines Counted –All lines –Lines with semicolons or braces –Bytes All the graphs look the same. Exponential growth at 26% per year. Overall, 319% growth from to

Line Count

Comparing Sizes from Redhat 7.125,000,000 (about) Linux ,437,470 Mozilla 2,065,224 XFree ,837,608 GCC ,076

Distribution of Lines Version 2.0.1

Distribution of Lines Version pre9

Distribution of Lines Over Time

Measuring Performance We used lmbench. Ran at least 5 trials. Averaged the data –Excluding top and bottom value –Excluding any obvious outliers

Null Call Performance All system calls use the same mechanism to begin and end. If these mechanisms are slow, then the kernel will always be slow. This measures the overhead for all system calls. The measures the performance of very simple system calls.

Null Call Graph

Stat Performance Stat is the system call that returns file metadata. Stat is very common. Almost all file system oriented tasks will use stat. Stat speed is determined by the speed of the file system and the directory cache. This data is a combination, with lots of caching.

Page Fault Performance A Page fault occurs when the system needs to bring a VM page into RAM. Hard page faults go to disk, and speed is determined by disk speed. Soft page faults recover the page from some other part of RAM, and the speed is determined by the kernel and MMU hardware.

Mmap performance Mmap is used to alter the memory map of a process. Mmap is fundemental to how programs using shared libraries begin. Mmap is also used to establish a shared memory region between communicating processes.

Context Switching Performance This test uses rings of processes communicating via read/write. Simulates many situations in real life –Processes communicating with the X server. –Commands using pipes. This is not a networking test!

Signal handling Performance This measures the time needed to switch processes due to software interrupt. This is a stand-in for measuring the hardware interrupt switch time. Hardware interrupt time is critical for all high speed data throughput.

Signal Handling Analysis On Thu, 26 Apr 2001, Linus Torvalds wrote: >I'll take a look at what the signal handling thing >is, although I suspect it's just the cleanup for >eventually getting thread-safe signals and > pthreads semantics.. That might be a small part of it, but from initial profiles it appears that the biggest chunk of it by far is just the new floating point format for supporting the full SSE information…

Performance Conclusions Linux is generally getting faster. Extra lines of code are not slowing Linux down. Sometimes, algorithm changes cause a >10x speed improvement. No one knows for a user-level workload. There is no easy record of algorithm changes for Linux.

Being Slashdot-ed The research looked interesting. I want to maximize the experience for my students. I submit to slashdot. They accept!

Slashdot-ed, the day after Saw 122,089 hits from 42,645 unique IPs. 99 different nations, including 39 Belarus (39) Luxembourg (39), Iceland (76). The UK had 2,264 hits. Intro translated into French, Spanish, German, Russian, Slovak, Italian. Students absolutely loved it. Received over 300 s (not all nice).

Encouragement Research is fun! Research doesn’t need a national lab. Small efforts can also help.