Soft Real Time Design
|
|
- Gavin Paul
- 6 years ago
- Views:
Transcription
1 by Gerrit Muller HSN-NISE Abstract Soft Real Time design addresses the performance aspects of the system design, under the assumption that the hard real time design is already well-covered. Core decisions in soft real time design are: granularity synchronization prioritization allocation resource management The complete course ASP TM is owned by TNO-ESI. To teach this course a license from TNO- ESI is required. This material is preliminary course material. status: preliminary draft
2 hard real time soft real time disastrous failure failure dissatisfaction irritation human safety device safety loss of information loss of functionality or (image) quality loss of eye hand coordination limited throughput waiting time 2 Gerrit Muller PSRTpositioning
3 Case 1 TV zapping Problem introduction Approach for solving response time problems Revised functional model Measuring and modelling 3 Gerrit Muller PSRTzapIntro
4 Zap timing: What is the Requirement? new channel P+ P- zap total response time zap repetition remote control zap visual feedback open for next respons new channel visual feedback time time 4 Gerrit Muller EACresponseTime
5 Approach 1) Measure the end-to-end time 2) Decompose the processes based on expected outcome 3) Measure the individual components use previous decomposition (2) 4) Clarify the unknown parts and make them explicit 5) Further divide the major posts 6) Aggregate the smaller posts 5 Gerrit Muller PSRToptimizeTimingIssues
6 Functional Model User Interface ~100 ms Line demux: ~ 60µs Video signal de-mux Bit detection ~ 150 ns Teletext processing User i/f graphics generation Teletext overlay generation Video signal mux Blank Tuner de-mux Picture processing User Interface ~100 ms Audio processing Audio / video sync ~ 20ms Mute Control User Interface ~100 ms ~1.8ms / bit 6 Gerrit Muller PSRTzappingFunctionalModel
7 Expectated and Measured Values Expected values: Measured values: Mute Blank Flush AV pipeline Set tuner Fill AV pipeline Unmute Unblank : 50 ms : 40 ms : 160 ms : 200 ms : 160 ms 1 frame 4 frames : 50 ms : 40 ms 4 frames Mute : 60 ms Blank : 120 ms Flush AV pipeline : 0 ms Set tuner : 180 ms Fill AV pipeline : 40 ms Format detection : 200 ms Unmute : 60 ms Unblank : 120 ms Summing : ~ 900 ms Total time measured: 2000 ms 1 frame 5 frames 7 Gerrit Muller PSRTzappingProblemStep3
8 Analysis and Improvements Zapping Problem step 4 Somewhere 1000 ms are missing Detection of frame size takes a long time! + Lots of software overhead Analyze frame size detection and SW overhead Zapping Problem step 5 Subdivide / analyze format detection (200 ms) Zapping Problem step 6 Ignore pipeline effects 8 Gerrit Muller PSRTzappingProblemAnalysis
9 Simple Concurrency Model (with waits) Zapping tasks sequential Video present Set Tuner No video Blank Video Detect Framesize Video present Flush AV pipeline Fill AV pipeline Mute Audio Zap Blink LED OSD Zap finished 9 Gerrit Muller PSRTzappingSequential
10 Simple Concurrency Model (optimized) Zapping tasks parallel Set Tuner Video No video Blank Video Detect Framesize Video present Flush AV pipeline Fill AV pipeline Mute Audio Zap Blink LED OSD Zap finished 10 Gerrit Muller PSRTzappingConcurrent
11 Case 1 Summary TV zapping Understanding of the problem is crucial Iterate over modelling and measuring to build balanced performance model 11 Gerrit Muller PSRTzapSummary
12 Case 2 EasyVision: Resource Management Introduction to application SW design Memory and performance Memory design CPU load and Performance 12 Gerrit Muller PSRTeasyvisionCaseIntro
13 Introduction to Medical Imaging Application Easyvision Medical Imaging Workstation serving 3 X-ray examination rooms providing interactive viewing and printing on high resolution film Challenge: interoperability and WYSIWYG over different products 13 Gerrit Muller PSRTeasyvisionIntro
14 Easyvision Serving Three URF Examination Rooms typical clinical image (intestines) URF-systems EasyVision: Medical Imaging Workstation 14 Gerrit Muller MSeasyVision
15 Image Quality Expectation WYSIWYG image generation X-ray system presentation 3 rd party workstation monitor film network, storage monitor what you see at one work-spot is application processing Easyvision presentation monitor film network, storage what you get at another work-spot??? 15 Gerrit Muller MICVwysiwyg
16 Presentation Pipeline for X-ray Images image from database interpolate Look up table invert contrast / brightness graphics merge colour LUT monitor spatial enhancement bi-linear bi-cubic output brightness contrast legend input SW HW 16 Gerrit Muller MICVpresentationPipeline
17 Quadruple View-port Screen Layout UI icons, text view-port 1 view-port pixels ca 200 pixels viewport 5 view-port 3 view-port pixels ca. 460 pixels 17 Gerrit Muller MICVquadrupleViewportLayout
18 Rendered Images at Different Destinations Screen: low resolution fast response Film: high resolution high throughput Network: medium resolution high throughput 18 Gerrit Muller MICVdestinations
19 SW Design Easyvision SW design Concurrency design SW layers 19 Gerrit Muller PSRTeasyvisionSWdesignIntro
20 Concurrency via Software Processes remote systems and users user client legend user control communication user interface client process export data base optical storage UI devices print system monitor Unix daemons server process control and data flow operational process network disk drive optical disk drive printer associated hardware 20 Gerrit Muller MICVsoftwareProcess
21 Criteria for Process Decomposition management of concurrency management of shared devices unit of memory budget (easy measurement) enables distribution over multiple processors Processes are a facility provided by the Operating System (OS) to manage concurrency, resources and exceptions unit of exception handling: fault containment and watchdog monitor 21 Gerrit Muller PSRTprocessCriteria
22 Simplified Layering of the SW (Construction Decomposition) dev. tools service SW keys Config Install Start up Spool HCU Store Image Gfx UI DB RC driver RC interf RC HC driver HC interf 3M DOR driver DOR Medical Imaging R/F Print Store View Cluster SunOS NIX Standard IPX workstation Desk, cabinets, cables, etc. DSI PMSnet in PMSnet out legend user interface application functions toolbox operating system hardware SW infrastructure connected system 22 Gerrit Muller MICVswLayers1992
23 Memory Use and Performance Easyvision Memory and Performance Performance problems Analysis of memory use Memory budget 23 Gerrit Muller PSRTeasyvisionMemoryIntro
24 Performance as a Function of Memory Use performance Good Bad 0 memory usage physical paging to disk memory 64 MB 200 MB 24 Gerrit Muller EASRTperformanceVsMemory
25 Problem: Unlimited Memory Consumption (1992) total measured memory usage OS code data bulk data fragmentation performance 0 MB memory usage physical paging to disk memory MB 25 Gerrit Muller MSmemoryZeroMeasurement
26 Measurement Per Process data MByte UNIX shared libraries UI communication server storage server print server other code measured (left column) budget per process (right column) 26 Gerrit Muller MSmemoryBudget
27 Solution: Measure and Iterative Redesign 200 MB fragmentation anti-fragmenting bulk data data code budget based awareness, measurement DLLs 74 MB OS measured tuning budget 27 Gerrit Muller MSmemoryUsageReduction
28 Method: Budget per Process Budget: + measurable + fine enough to provide direction MByte dll's UI communication server storage server print server other UNIX measured (left column) + coarse enough to budget per process (right column) be maintainable 28 Gerrit Muller MSmemoryBudgetAnnotated
29 Example of a Memory Budget memory budget in Mbytes code obj data bulk data total shared code User Interface process database server print server optical storage server communication server UNIX commands compute server system monitor application SW total UNIX Solaris 2.x file cache total Gerrit Muller RVmemoryBudgetTable
30 Exercise: Bulk Data Capacity Memory block 12MByte How many blocks of 1024 x bits data can be stored? How many blocks of 1024 x bits data can be stored? 30 Gerrit Muller PSRTexerciseBulkdata
31 Exercise: Object Data Capacity Object Data 3MByte Frequency Description Typical size 1 Large objects (e.g. dictionary) 20 kb 20 Medium object, e.g. UI data 200 Bytes 1000 Small object, e.g. image attributes 20 Bytes Total How many objects with this distribution fit in the 3MByte Object data store? 31 Gerrit Muller PSRTexerciseObjectData
32 Memory Budget of Easyvision RF R1 and R2 code object data bulk data total memory budget in Mbytes R1 R2 R1 R2 R1 R2 R1 R2 shared code UI process database server print server DOR server communication server UNIX commands compute server system monitor application total UNIX file cache total Gerrit Muller MICVmemoryBudgetR1R2
33 Answer: Bulk Data Capacity Memory block 12MByte How many blocks of 1024 x bits data can be stored? How many blocks of 1024 x bits data can be stored? 12 6 Memory block 12MByte Memory block 12MByte * Assuming that 8-bit data is stored as 8-bit (char) Assuming that 16-bit data is stored as 16-bit (short int) 33 Gerrit Muller PSRTanswerBulkdata
34 Answer: Object Data Capacity Object Data 3MByte Frequency Description Typical size Size * Freq 1 Large objects (e.g. dictionary) 20 kb 20 kb 20 Medium object, e.g. UI data 200 Bytes 4kB 1000 Small object, e.g. image attributes 20 Bytes 20kB Total 44kB 44kByte fits approximately 68 times in 3MByte Expect to store at most 68 large objects (1360 Medium sized objects, small objects) 34 Gerrit Muller PSRTanswerObjectData
35 Memory Use and Performance Easyvision Memory Design Fragmentation and consequences Application caches Memory design applied 35 Gerrit Muller PSRTeasyvisionMemoryDesignIntro
36 Memory Fragmentation image 1, 256 kb image 2, 256 kb image 3, 256 kb 1. replace image 3 by image 4 image 1, 256 kb image 3, 256 kb legend image in use image 1, 256 kb 4 2. add image 5 image 1, 256 kb 4 3. replace image 1 by image 6 4 image 3, 256 kb image 3, 256 kb image 3, 256 kb unused memory image 5, 256 kb image 5, 256 kb 6 4 image 3, 256 kb image 5, 256 kb 36 Gerrit Muller MICVfragmentationAnimation
37 Memory Fragmentation Increase MBytes used address space gross used nett used time 37 Gerrit Muller MICVfragmentationInTime
38 Cache Layers Medical imaging R/F cache sizes legend cluster PixMap cache print PixMap cache allocator, chunk view PixMap cache user interface application functions heap memory, malloc() free() toolbox memory management unit virtual memory instruction and data cache physical memory disk storage operating system hardware 38 Gerrit Muller MICVcacheLayers
39 Bulk Data Memory Management Memory Allocators chunk size:3mb chunk size: 1MB for stamp images 96*96*8 (9kB) block size: 9kB for large images from 225 kb (480*480*8) to 3 MB (1536*1024*16 ) block size: 256kB chunk size: 2MB for small (screen) images from 8kB to 225 kb block size: 8 kb 39 Gerrit Muller MICVmemoryAllocators
40 Cached Intermediate Processing Results text gfx raw enhanced retrieve image enhance image interpolate resized image greyvalue viewport lookup image merge display 40 Gerrit Muller MICVprocessingCachedPixmaps
41 Example of Allocator and Cache Use bit image requires 4 256kB blocks images require kB blocks 12 blocks shortage block size: 256kB block size: 9kB block size: 8 kb image 8 bit requires 27 8kB blocks images require 5 8kb blocks all screen-size images require 334 8kB blocks, 78 blocks shortage text Pixmap cache gfx greyvalue viewport viewport raw raw resized greyvalue viewport viewport raw raw resized raw image raw resized image greyvalue image resized raw image enhanced image image resized image image image image image image image retrieve enhance image interpolate lookup image merge display 4 * byte / pixel 4 * byte / pixel 4 * byte / pixel 4 * byte / pixel 4 * byte / pixel retrieve enhance interpolate lookup merge display 41 Gerrit Muller MICVpixmapExample
42 Print Server is Based on Banding 1024 pixels 1024 pixels original images 128 pixels 4k pixels 42 Gerrit Muller MICVbanding
43 CPU Load and Performance Easyvision Memory CPU load and performance CPU load analysis response time throughput measurement tools 43 Gerrit Muller PSRTeasyvisionCPUloadIntro
44 CPU Processing Times and Viewing Responsiveness txt gfx retrieve 0.3s raw image enhance 0.5s enhanced image viewport interpolate 0.2s resized image lookup (LUT) 0.075s display greyvalue image gfx merge 0.025s display 0.05s next update rate for zoom C/B 0.9s -1 common user actions 3 s -1 7 s -1 retrieve enhance interpolate LUT g f x accumulated processing time in seconds pipeline timing proportional 44 Gerrit Muller MICVprocessingTimes
45 Server CPU Load remote systems and users communication 2.5 CPU second per Mbyte input import serving one examination room CPU time available for interactive viewing serving 3 examination rooms margin 2 min import 2.5 min / exam data base print printer disk 3.5 CPU second per Mpixel output print 50 s/exam 210 s/exam 30% print 10.5 min / exam 90% 45 Gerrit Muller MICVserverCPUload
46 Resource Measurement Tools t n-2 t n-1 t n preamble to remove use case start-up effects time oit ps vmstat kernel resource stats object instantations heap memory usage kernel CPU time user CPU time code memory virtual memory paging heapviewer (visualise fragmentation) 46 Gerrit Muller MICVtools
47 Object Instantiation Tracing class name current nr of objects deleted since t n-1 created since t n-1 heap memory usage AsynchronousIO AttributeEntry BitMap BoundedFloatingPoint BoundedInteger BtreeNode1 BulkData ButtonGadget ButtonStack ByteArray [819200] [ ] [13252] 47 Gerrit Muller MICVoitTool
48 Overview of Benchmarks and Other Measurement Tools test / benchmark what, why accuracy when self made public SpecInt (by suppliers) CPU integer coarse new hardware Byte benchmark computer platform performance OS, shell, file I/O coarse new hardware new OS release file I/O file I/O throughput medium new hardware image processing CPU, cache, memory as function of image, pixel size Objective-C overhead method call overhead memory overhead socket, network data base throughput CPU overhead transaction overhead query behaviour accurate accurate accurate accurate new hardware initial ad hoc ad hoc load test throughput, CPU, memory accurate regression 48 Gerrit Muller MICVbenchmarks
49 Case 4 MRI Volume Reconstruction and Viewing Usage patterns as impact on performance Resource model and requirements identification for usage patterns 49 Gerrit Muller PHRTcaseMRvolumeIntro
50 Volume Acquisition and Reconstruction 256 Data in bytes = 2 * 512 * 512 * 256 * 2 = 512 Volumes x y z bytes per pixel 256 MBytes 512 in 2 * 2 minutes = 240 seconds 50 Gerrit Muller MRneuroCubic
51 Performance Requirements Examination of previous patient 15 minute time slot George arrives at radiology department Nurse explains the procedure George is waiting in the dressing room Prepare George for the examination George leaves exam room (a.o. RF coils) Position Imaging View away View away 14:00 14:15 14:30 51 Gerrit Muller MRneuroTypicalTimeline
52 Resource Model Acquisition Reconstruction Intermediate data: 256 MByte Viewing View away in ca 10 sec. Storage full screen 25 images per second 2 Volumes 256 MByte 52 Gerrit Muller MRneuroResourceModel
53 Critical Resources Buffer architecture Pipeline & caching Acquisition Reconstruction Intermediate data: 256 MByte Viewing View away in ca 10 sec. Attribute access Storage 2 Volumes 256 MByte full screen 25 images per second 53 Gerrit Muller MRneuroResourceCriticalities
54 Case 4 MRI Volume Reconstruction and Viewing Operational usage pattern drives (implicit/explicit) system performance requirements Resource / cost trade-off must support operational usage patterns 54 Gerrit Muller PHRTcaseMRvolumeSummary
55 Case 5 Mobile Display Appliances Modelling external environment End-to-end performance Allocation choices 55 Gerrit Muller PSRTmobileApplianceIntro
56 Mobile Display Appliances Mobile Display Appliance Mediascreen Original pictures from Nokia 56 Gerrit Muller FFTSclient
57 User Access Point to a Long Foodchain Home Server Network Providers Service Providers Content Providers Appliance User 57 Gerrit Muller FFTStotalChain
58 The SMART World of the Design Standard Interactive System Applications Data transport Security Virtual Machine Display and UI free after Nick Thorne, Philips Semiconductors, Systems Laboratory Southampton UK, as presented at PSAVAT April Gerrit Muller FFTSstandardInteractiveSystem
59 Specifiable Characteristics Servers & Networks Standard Interactive System Throughput Latency Distance Power Data transport Security Level Performance Encryption Authentication Security Functionality Performance Power, Footprint Applications Virtual Machine Functionality Performance Power, Footprint Display size Color depth Rendering Performance IQ UI modi Display and UI 59 Gerrit Muller FFTSstandardInteractiveSystemAnnotated
60 Response Time: Latency Budget times in milliseconds Appliance Data transport Security Virtual Machine Application Graphics and UI Home Network Home Server Network contention Provider Infrastructure Total Last-Mile network Backbone network Service server Content server User need Message Latency Response Time All numbers are imaginary and for illustration purposes only 60 Gerrit Muller FFTSlatencyBudget
61 Interaction or Irritation? Response Time (ms) Interactive Experience Irritating Experience Home Server Network Providers Service Providers Content Providers Appliance User 61 Gerrit Muller FFTStotalChainResponseTime
62 Case 5 Summary Mobile Display Appliances Modelling external environment: make assumptions End-to-end performance: large part of performance budget is not controlled User perceived performance determines function allocation 62 Gerrit Muller PSRTmobileApplianceSummary
63 Colofon The ASP TM course is partially derived from the EXARCH course developed at Philips CTT by Ton Kostelijk and Gerrit Muller. Extensions and additional slides have been developed at ESI by Teun Hendriks, Roland Mathijssen and Gerrit Muller. 63 Gerrit Muller PERFcolofon
Medical Imaging in Chronological Order
- dev. tools service SW keys Config Medical Imaging R/F Store View Print Cluster PMS- PMS- Store Image UI Spool HCU Gfx DB net in net out HC DOR NIX driver driver driver SunOS, SunView legend user interface
More informationExecution architecture concepts
by Gerrit Muller Buskerud University College e-mail: gaudisite@gmail.com www.gaudisite.nl Abstract The execution architecture determines largely the realtime and performance behavior of a system. Hard
More informationExploring an existing code base: measurements and instrumentation
Exploring an existing code base: measurements and instrumentation - typical small testprogram create steady state test suite ts = timestamp() for(i=0;i
More informationHealth care world >> PMS catalogue
Health care world >> PMS catalogue MR GE CT GE Xray vasc RAD dig. US dig. MR Siemens MR Philips CT Philips Xray R/F RAD film US video MR cardio endosc. video US cardio Xray cardio monitor cardio CIS CCW
More informationFrom Industrial Experience to System Architecting Know-how
From Industrial Experience to System Architecting Know-how by Gerrit Muller University of South-Eastern Norway-NISE e-mail: gaudisite@gmail.com www.gaudisite.nl Abstract The system design process in an
More informationExecution architecture concepts
- hard real time systems should be explainable with a few A4 diagrams reasoning must to combine or be possible not to combine? overview is based on understanding many (critical) details complex reality;
More informationModeling and Analysis: System Model
by Gerrit Muller University of South-Eastern Norway-NISE e-mail: gaudisite@gmail.com www.gaudisite.nl Abstract This presentation uses a web shop service as example system to construct a system model. The
More informationPerformance Method Fundamentals
- measure evaluate analyse determine most important and critical requirements simulate build proto model analyse constraints and design options Frogs vei 41 P.O. Box 235, NO-3603 Kongsberg Norway gaudisite@gmail.com
More informationIncreasing Interoperability, what is the Impact on Reliability? Illustrated with Health care examples
Illustrated with Health care examples by Gerrit Muller University of South-Eastern Norway-NISE e-mail: gaudisite@gmail.com www.gaudisite.nl Abstract In all domains the amount of interoperability between
More informationReducing Hit Times. Critical Influence on cycle-time or CPI. small is always faster and can be put on chip
Reducing Hit Times Critical Influence on cycle-time or CPI Keep L1 small and simple small is always faster and can be put on chip interesting compromise is to keep the tags on chip and the block data off
More informationPersistent Storage - Datastructures and Algorithms
Persistent Storage - Datastructures and Algorithms 1 / 21 L 03: Virtual Memory and Caches 2 / 21 Questions How to access data, when sequential access is too slow? Direct access (random access) file, how
More informationAdapted from David Patterson s slides on graduate computer architecture
Mei Yang Adapted from David Patterson s slides on graduate computer architecture Introduction Ten Advanced Optimizations of Cache Performance Memory Technology and Optimizations Virtual Memory and Virtual
More informationDesign Objectives and Design Understandability
by Gerrit Muller University of South-Eastern Norway-NISE e-mail: gaudisite@gmail.com www.gaudisite.nl Abstract The complexity of systems limits the understanding by the architect of the impact of changes.
More informationPerformance of Various Levels of Storage. Movement between levels of storage hierarchy can be explicit or implicit
Memory Management All data in memory before and after processing All instructions in memory in order to execute Memory management determines what is to be in memory Memory management activities Keeping
More informationFrom Legacy to State-of-the-art; Architectural Refactoring
applications domain platform domain HW computing Infra- structure Computin g HW applications domain platform domain HW computing Infra- structure Digital Video Platform SW Computin g HW 3 rd party stack(s)
More informationEITF20: Computer Architecture Part 5.1.1: Virtual Memory
EITF20: Computer Architecture Part 5.1.1: Virtual Memory Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Cache optimization Virtual memory Case study AMD Opteron Summary 2 Memory hierarchy 3 Cache
More informationFault tolerance in consumer products. Ben Pronk
Fault tolerance in consumer products Ben Pronk Content Consumer electronics, some background Reliability and software in consumer products Current solutions Future outllok 2 Consumer electronics, some
More informationHow to Create an Architecture Overview
by Gerrit Muller University of South-Eastern Norway-NISE e-mail: gaudisite@gmail.com www.gaudisite.nl Abstract A short specific overview of an architecture is a powerful means during product creation.
More informationVirtual Memory. CS 351: Systems Programming Michael Saelee
Virtual Memory CS 351: Systems Programming Michael Saelee registers cache (SRAM) main memory (DRAM) local hard disk drive (HDD/SSD) remote storage (networked drive / cloud) previously: SRAM
More informationComputer Architecture A Quantitative Approach, Fifth Edition. Chapter 2. Memory Hierarchy Design. Copyright 2012, Elsevier Inc. All rights reserved.
Computer Architecture A Quantitative Approach, Fifth Edition Chapter 2 Memory Hierarchy Design 1 Introduction Programmers want unlimited amounts of memory with low latency Fast memory technology is more
More informationLecture 25: Board Notes: Threads and GPUs
Lecture 25: Board Notes: Threads and GPUs Announcements: - Reminder: HW 7 due today - Reminder: Submit project idea via (plain text) email by 11/24 Recap: - Slide 4: Lecture 23: Introduction to Parallel
More informationLocality and The Fast File System. Dongkun Shin, SKKU
Locality and The Fast File System 1 First File System old UNIX file system by Ken Thompson simple supported files and the directory hierarchy Kirk McKusick The problem: performance was terrible. Performance
More informationOPERATING SYSTEM. Chapter 12: File System Implementation
OPERATING SYSTEM Chapter 12: File System Implementation Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods Free-Space Management
More informationChapter 11: Implementing File Systems
Chapter 11: Implementing File Systems Operating System Concepts 99h Edition DM510-14 Chapter 11: Implementing File Systems File-System Structure File-System Implementation Directory Implementation Allocation
More informationResource Containers. A new facility for resource management in server systems. Presented by Uday Ananth. G. Banga, P. Druschel, J. C.
Resource Containers A new facility for resource management in server systems G. Banga, P. Druschel, J. C. Mogul OSDI 1999 Presented by Uday Ananth Lessons in history.. Web servers have become predominantly
More informationEfficient Throughput-Guarantees for Latency-Sensitive Networks-On-Chip
ASP-DAC 2010 20 Jan 2010 Session 6C Efficient Throughput-Guarantees for Latency-Sensitive Networks-On-Chip Jonas Diemer, Rolf Ernst TU Braunschweig, Germany diemer@ida.ing.tu-bs.de Michael Kauschke Intel,
More informationVirtual Memory Outline
Virtual Memory Outline Background Demand Paging Copy-on-Write Page Replacement Allocation of Frames Thrashing Memory-Mapped Files Allocating Kernel Memory Other Considerations Operating-System Examples
More informationPipelined processors and Hazards
Pipelined processors and Hazards Two options Processor HLL Compiler ALU LU Output Program Control unit 1. Either the control unit can be smart, i,e. it can delay instruction phases to avoid hazards. Processor
More informationMemory hierarchy review. ECE 154B Dmitri Strukov
Memory hierarchy review ECE 154B Dmitri Strukov Outline Cache motivation Cache basics Six basic optimizations Virtual memory Cache performance Opteron example Processor-DRAM gap in latency Q1. How to deal
More informationI/O Systems. Amir H. Payberah. Amirkabir University of Technology (Tehran Polytechnic)
I/O Systems Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Amir H. Payberah (Tehran Polytechnic) I/O Systems 1393/9/15 1 / 57 Motivation Amir H. Payberah (Tehran
More informationc. What are the machine cycle times (in nanoseconds) of the non-pipelined and the pipelined implementations?
Brown University School of Engineering ENGN 164 Design of Computing Systems Professor Sherief Reda Homework 07. 140 points. Due Date: Monday May 12th in B&H 349 1. [30 points] Consider the non-pipelined
More informationAdvanced Computer Architecture
18-742 Advanced Computer Architecture Test 2 November 19, 1997 Name (please print): Instructions: YOU HAVE 100 MINUTES TO COMPLETE THIS TEST DO NOT OPEN TEST UNTIL TOLD TO START The exam is composed of
More informationMain Memory (Part II)
Main Memory (Part II) Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Amir H. Payberah (Tehran Polytechnic) Main Memory 1393/8/17 1 / 50 Reminder Amir H. Payberah
More informationAvailability and Utility of Idle Memory in Workstation Clusters. Anurag Acharya, UC-Santa Barbara Sanjeev Setia, George Mason Univ
Availability and Utility of Idle Memory in Workstation Clusters Anurag Acharya, UC-Santa Barbara Sanjeev Setia, George Mason Univ Motivation Explosive growth in data intensive applications Large-scale
More informationTransistor: Digital Building Blocks
Final Exam Review Transistor: Digital Building Blocks Logically, each transistor acts as a switch Combined to implement logic functions (gates) AND, OR, NOT Combined to build higher-level structures Multiplexer,
More informationThe Google File System
October 13, 2010 Based on: S. Ghemawat, H. Gobioff, and S.-T. Leung: The Google file system, in Proceedings ACM SOSP 2003, Lake George, NY, USA, October 2003. 1 Assumptions Interface Architecture Single
More informationEITF20: Computer Architecture Part 5.1.1: Virtual Memory
EITF20: Computer Architecture Part 5.1.1: Virtual Memory Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Virtual memory Case study AMD Opteron Summary 2 Memory hierarchy 3 Cache performance 4 Cache
More informationFile Systems. What do we need to know?
File Systems Chapter 4 1 What do we need to know? How are files viewed on different OS s? What is a file system from the programmer s viewpoint? You mostly know this, but we ll review the main points.
More information[08] IO SUBSYSTEM 1. 1
[08] IO SUBSYSTEM 1. 1 OUTLINE Input/Output (IO) Hardware Device Classes OS Interfaces Performing IO Polled Mode Interrupt Driven Blocking vs Non-blocking Handling IO Buffering & Strategies Other Issues
More informationLECTURE 5: MEMORY HIERARCHY DESIGN
LECTURE 5: MEMORY HIERARCHY DESIGN Abridged version of Hennessy & Patterson (2012):Ch.2 Introduction Programmers want unlimited amounts of memory with low latency Fast memory technology is more expensive
More informationChapter 9 Memory Management
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
More informationChapter 8. Operating System Support. Yonsei University
Chapter 8 Operating System Support Contents Operating System Overview Scheduling Memory Management Pentium II and PowerPC Memory Management 8-2 OS Objectives & Functions OS is a program that Manages the
More informationComputer Architecture and Engineering. CS152 Quiz #3. March 18th, Professor Krste Asanovic. Name:
Computer Architecture and Engineering CS152 Quiz #3 March 18th, 2008 Professor Krste Asanovic Name: Notes: This is a closed book, closed notes exam. 80 Minutes 10 Pages Not all questions are of equal difficulty,
More informationCopyright 2012, Elsevier Inc. All rights reserved.
Computer Architecture A Quantitative Approach, Fifth Edition Chapter 2 Memory Hierarchy Design 1 Introduction Introduction Programmers want unlimited amounts of memory with low latency Fast memory technology
More informationComputer Architecture. A Quantitative Approach, Fifth Edition. Chapter 2. Memory Hierarchy Design. Copyright 2012, Elsevier Inc. All rights reserved.
Computer Architecture A Quantitative Approach, Fifth Edition Chapter 2 Memory Hierarchy Design 1 Programmers want unlimited amounts of memory with low latency Fast memory technology is more expensive per
More informationSPACE SPlit Application architecture
SPACE SPlit Application architecture Enabling predictable SW integration Bas Engel Royal Philips / Consumer Electronics Division CELF Embedded Linux Conference 2007 April 17, 2007 Introduction Royal Philips
More informationTAG Word 0 Word 1 Word 2 Word 3 0x0A0 D2 55 C7 C8 0x0A0 FC FA AC C7 0x0A0 A5 A6 FF 00
ELE 758 Final Examination 2000: Answers and solutions Number of hits = 15 Miss rate = 25 % Miss rate = [5 (misses) / 20 (total memory references)]* 100% = 25% Show the final content of cache using the
More informationCOSC 6385 Computer Architecture. - Memory Hierarchies (I)
COSC 6385 Computer Architecture - Hierarchies (I) Fall 2007 Slides are based on a lecture by David Culler, University of California, Berkley http//www.eecs.berkeley.edu/~culler/courses/cs252-s05 Recap
More informationOPERATING SYSTEMS II DPL. ING. CIPRIAN PUNGILĂ, PHD.
OPERATING SYSTEMS II DPL. ING. CIPRIAN PUNGILĂ, PHD. File System Implementation FILES. DIRECTORIES (FOLDERS). FILE SYSTEM PROTECTION. B I B L I O G R A P H Y 1. S I L B E R S C H AT Z, G A L V I N, A N
More informationHW1 Solutions. Type Old Mix New Mix Cost CPI
HW1 Solutions Problem 1 TABLE 1 1. Given the parameters of Problem 6 (note that int =35% and shift=5% to fix typo in book problem), consider a strength-reducing optimization that converts multiplies by
More informationCS5460: Operating Systems Lecture 14: Memory Management (Chapter 8)
CS5460: Operating Systems Lecture 14: Memory Management (Chapter 8) Important from last time We re trying to build efficient virtual address spaces Why?? Virtual / physical translation is done by HW and
More informationENGR 3950U / CSCI 3020U Midterm Exam SOLUTIONS, Fall 2012 SOLUTIONS
SOLUTIONS ENGR 3950U / CSCI 3020U (Operating Systems) Midterm Exam October 23, 2012, Duration: 80 Minutes (10 pages, 12 questions, 100 Marks) Instructor: Dr. Kamran Sartipi Question 1 (Computer Systgem)
More informationCopyright 2012, Elsevier Inc. All rights reserved.
Computer Architecture A Quantitative Approach, Fifth Edition Chapter 2 Memory Hierarchy Design 1 Introduction Programmers want unlimited amounts of memory with low latency Fast memory technology is more
More informationModern Virtual Memory Systems. Modern Virtual Memory Systems
6.823, L12--1 Modern Virtual Systems Asanovic Laboratory for Computer Science M.I.T. http://www.csg.lcs.mit.edu/6.823 6.823, L12--2 Modern Virtual Systems illusion of a large, private, uniform store Protection
More informationCS 333 Introduction to Operating Systems. Class 11 Virtual Memory (1) Jonathan Walpole Computer Science Portland State University
CS 333 Introduction to Operating Systems Class 11 Virtual Memory (1) Jonathan Walpole Computer Science Portland State University Virtual addresses Virtual memory addresses (what the process uses) Page
More informationObjectives and Functions Convenience. William Stallings Computer Organization and Architecture 7 th Edition. Efficiency
William Stallings Computer Organization and Architecture 7 th Edition Chapter 8 Operating System Support Objectives and Functions Convenience Making the computer easier to use Efficiency Allowing better
More informationMultimedia Systems 2011/2012
Multimedia Systems 2011/2012 System Architecture Prof. Dr. Paul Müller University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de Sitemap 2 Hardware
More informationCS399 New Beginnings. Jonathan Walpole
CS399 New Beginnings Jonathan Walpole Virtual Memory (1) Page Tables When and why do we access a page table? - On every instruction to translate virtual to physical addresses? Page Tables When and why
More informationCSCI 4717 Computer Architecture. Memory Management. What is Swapping? Swapping. Partitioning. Fixed-Sized Partitions (continued)
CSCI 4717/5717 Computer Architecture Topic: Memory Management Reading: Stallings, Sections 8.3 and 8.4 Memory Management Uni-program memory split into two parts One for Operating System (monitor) One for
More informationOperating Systems. File Systems. Thomas Ropars.
1 Operating Systems File Systems Thomas Ropars thomas.ropars@univ-grenoble-alpes.fr 2017 2 References The content of these lectures is inspired by: The lecture notes of Prof. David Mazières. Operating
More informationMultimedia. Sape J. Mullender. Huygens Systems Research Laboratory Universiteit Twente Enschede
Multimedia Sape J. Mullender Huygens Systems Research Laboratory Universiteit Twente Enschede 1 What is Multimedia? Videophone CD Interactive One socket, many services (video) phone TV video on demand
More informationGPUfs: Integrating a file system with GPUs
GPUfs: Integrating a file system with GPUs Mark Silberstein (UT Austin/Technion) Bryan Ford (Yale), Idit Keidar (Technion) Emmett Witchel (UT Austin) 1 Traditional System Architecture Applications OS CPU
More informationCS399 New Beginnings. Jonathan Walpole
CS399 New Beginnings Jonathan Walpole Memory Management Memory Management Memory a linear array of bytes - Holds O.S. and programs (processes) - Each cell (byte) is named by a unique memory address Recall,
More informationChapter 12: File System Implementation
Chapter 12: File System Implementation Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods Free-Space Management Efficiency
More informationOperating System Support
Operating System Support Objectives and Functions Convenience Making the computer easier to use Efficiency Allowing better use of computer resources Layers and Views of a Computer System Operating System
More informationComp 204: Computer Systems and Their Implementation. Lecture 18: Devices
Comp 204: Computer Systems and Their Implementation Lecture 18: Devices 1 Today Devices Introduction Handling I/O Device handling Buffering and caching 2 Operating System An Abstract View User Command
More informationThe Virtual Memory Abstraction. Memory Management. Address spaces: Physical and Virtual. Address Translation
The Virtual Memory Abstraction Memory Management Physical Memory Unprotected address space Limited size Shared physical frames Easy to share data Virtual Memory Programs are isolated Arbitrary size All
More informationDRAFT. HDF5 Data Flow Pipeline for H5Dread. 1 Introduction. 2 Examples
This document describes the HDF5 library s data movement and processing activities when H5Dread is called for a dataset with chunked storage. The document provides an overview of how memory management,
More information3. Quality of Service
3. Quality of Service Usage Applications Learning & Teaching Design User Interfaces Services Content Process ing Security... Documents Synchronization Group Communi cations Systems Databases Programming
More informationDatabase Management and Tuning
Database Management and Tuning Concurrency Tuning Johann Gamper Free University of Bozen-Bolzano Faculty of Computer Science IDSE Unit 8 May 10, 2012 Acknowledgements: The slides are provided by Nikolaus
More informationSAP IQ - Business Intelligence and vertical data processing with 8 GB RAM or less
SAP IQ - Business Intelligence and vertical data processing with 8 GB RAM or less Dipl.- Inform. Volker Stöffler Volker.Stoeffler@DB-TecKnowledgy.info Public Agenda Introduction: What is SAP IQ - in a
More informationComputer Memory. Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1
Computer Memory Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Warm Up public int sum1(int n, int m, int[][] table) { int output = 0; for (int i = 0; i < n; i++) { for (int j = 0; j
More informationMemory management OS
Memory management 1 Memory (ideally) 2 Ideally Extremely fast (faster than the CPU in executing an instruction) Abundantly large Dirt cheap Memory (for real) 3 Typical access time 1 nsec Registers 2 nsec
More informationOracle Performance on M5000 with F20 Flash Cache. Benchmark Report September 2011
Oracle Performance on M5000 with F20 Flash Cache Benchmark Report September 2011 Contents 1 About Benchware 2 Flash Cache Technology 3 Storage Performance Tests 4 Conclusion copyright 2011 by benchware.ch
More informationChapter 10: File System Implementation
Chapter 10: File System Implementation Chapter 10: File System Implementation File-System Structure" File-System Implementation " Directory Implementation" Allocation Methods" Free-Space Management " Efficiency
More informationOracle Database 11g Release 2 for SAP Advanced Compression. Christoph Kersten Oracle Database for SAP Global Technology Center (Walldorf, Germany)
Oracle Database 11g Release 2 for SAP Advanced Compression Christoph Kersten Oracle Database for SAP Global Technology Center (Walldorf, Germany) Implicit Compression Efficient Use
More informationEECS 482 Introduction to Operating Systems
EECS 482 Introduction to Operating Systems Winter 2018 Baris Kasikci Slides by: Harsha V. Madhyastha OS Abstractions Applications Threads File system Virtual memory Operating System Next few lectures:
More informationPerformance Sentry VM Provider Objects April 11, 2012
Introduction This document describes the Performance Sentry VM (Sentry VM) Provider performance data objects defined using the VMware performance groups and counters. This version of Performance Sentry
More informationAdvanced file systems: LFS and Soft Updates. Ken Birman (based on slides by Ben Atkin)
: LFS and Soft Updates Ken Birman (based on slides by Ben Atkin) Overview of talk Unix Fast File System Log-Structured System Soft Updates Conclusions 2 The Unix Fast File System Berkeley Unix (4.2BSD)
More informationDevices. Today. Comp 104: Operating Systems Concepts. Operating System An Abstract View 05/01/2017. Devices. Devices
Comp 104: Operating Systems Concepts Devices Today Devices Introduction Handling I/O Device handling Buffering and caching 1 2 Operating System An Abstract View User Command Interface Processor Manager
More informationVirtual memory why? Virtual memory parameters Compared to first-level cache Parameter First-level cache Virtual memory. Virtual memory concepts
Lecture 16 Virtual memory why? Virtual memory: Virtual memory concepts (5.10) Protection (5.11) The memory hierarchy of Alpha 21064 (5.13) Virtual address space proc 0? s space proc 1 Physical memory Virtual
More informationENGN 2910A Homework 03 (140 points) Due Date: Oct 3rd 2013
ENGN 2910A Homework 03 (140 points) Due Date: Oct 3rd 2013 Professor: Sherief Reda School of Engineering, Brown University 1. [from Debois et al. 30 points] Consider the non-pipelined implementation of
More informationChapter 12: File System Implementation. Operating System Concepts 9 th Edition
Chapter 12: File System Implementation Silberschatz, Galvin and Gagne 2013 Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods
More informationColumn Stores vs. Row Stores How Different Are They Really?
Column Stores vs. Row Stores How Different Are They Really? Daniel J. Abadi (Yale) Samuel R. Madden (MIT) Nabil Hachem (AvantGarde) Presented By : Kanika Nagpal OUTLINE Introduction Motivation Background
More informationMemory Management. To improve CPU utilization in a multiprogramming environment we need multiple programs in main memory at the same time.
Memory Management To improve CPU utilization in a multiprogramming environment we need multiple programs in main memory at the same time. Basic CPUs and Physical Memory CPU cache Physical memory
More informationChapter 12: File System Implementation
Chapter 12: File System Implementation Silberschatz, Galvin and Gagne 2013 Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods
More informationECCAIRS 5 Technical Course. Standards and Platforms. Minimal System Requirements. Architecture. Uniting Aviation On Safety Security Environment
ECCAIRS 5 Technical Course Architecture Uniting Aviation On Safety Security Environment Standards and Platforms Industry Standards Microsoft Windows Operating System, 32-bit and 64-bit OS Support for relational
More informationZBD: Using Transparent Compression at the Block Level to Increase Storage Space Efficiency
ZBD: Using Transparent Compression at the Block Level to Increase Storage Space Efficiency Thanos Makatos, Yannis Klonatos, Manolis Marazakis, Michail D. Flouris, and Angelos Bilas {mcatos,klonatos,maraz,flouris,bilas}@ics.forth.gr
More informationAnnouncements. ! Previous lecture. Caches. Inf3 Computer Architecture
Announcements! Previous lecture Caches Inf3 Computer Architecture - 2016-2017 1 Recap: Memory Hierarchy Issues! Block size: smallest unit that is managed at each level E.g., 64B for cache lines, 4KB for
More informationCS252 S05. Main memory management. Memory hardware. The scale of things. Memory hardware (cont.) Bottleneck
Main memory management CMSC 411 Computer Systems Architecture Lecture 16 Memory Hierarchy 3 (Main Memory & Memory) Questions: How big should main memory be? How to handle reads and writes? How to find
More information20-EECE-4029 Operating Systems Spring, 2013 John Franco
20-EECE-4029 Operating Systems Spring, 2013 John Franco Second Exam name: Question 1: Translation Look-aside Buffer (a) Describe the TLB. Include its location, why it is located there, its contents, and
More informationCS 134: Operating Systems
CS 134: Operating Systems More Memory Management CS 134: Operating Systems More Memory Management 1 / 27 2 / 27 Overview Overview Overview Segmentation Recap Segmentation Recap Segmentation Recap Segmentation
More informationCS 405G: Introduction to Database Systems. Storage
CS 405G: Introduction to Database Systems Storage It s all about disks! Outline That s why we always draw databases as And why the single most important metric in database processing is the number of disk
More informationMEMORY HIERARCHY BASICS. B649 Parallel Architectures and Programming
MEMORY HIERARCHY BASICS B649 Parallel Architectures and Programming BASICS Why Do We Need Caches? 3 Overview 4 Terminology cache virtual memory memory stall cycles direct mapped valid bit block address
More informationOutline. Database Tuning. Ideal Transaction. Concurrency Tuning Goals. Concurrency Tuning. Nikolaus Augsten. Lock Tuning. Unit 8 WS 2013/2014
Outline Database Tuning Nikolaus Augsten University of Salzburg Department of Computer Science Database Group 1 Unit 8 WS 2013/2014 Adapted from Database Tuning by Dennis Shasha and Philippe Bonnet. Nikolaus
More informationChapter 13: I/O Systems
Chapter 13: I/O Systems DM510-14 Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests to Hardware Operations STREAMS Performance 13.2 Objectives
More informationFILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23
FILE SYSTEMS CS124 Operating Systems Winter 2015-2016, Lecture 23 2 Persistent Storage All programs require some form of persistent storage that lasts beyond the lifetime of an individual process Most
More informationInformation Retrieval
Introduction to Information Retrieval Lecture 4: Index Construction 1 Plan Last lecture: Dictionary data structures Tolerant retrieval Wildcards Spell correction Soundex a-hu hy-m n-z $m mace madden mo
More informationOptimizing Fusion iomemory on Red Hat Enterprise Linux 6 for Database Performance Acceleration. Sanjay Rao, Principal Software Engineer
Optimizing Fusion iomemory on Red Hat Enterprise Linux 6 for Database Performance Acceleration Sanjay Rao, Principal Software Engineer Version 1.0 August 2011 1801 Varsity Drive Raleigh NC 27606-2072 USA
More informationCHAPTER 8 - MEMORY MANAGEMENT STRATEGIES
CHAPTER 8 - MEMORY MANAGEMENT STRATEGIES OBJECTIVES Detailed description of various ways of organizing memory hardware Various memory-management techniques, including paging and segmentation To provide
More information