Simulation Of Computer Systems. Prof. S. Shakya

Similar documents
Locality. Cache. Direct Mapped Cache. Direct Mapped Cache

CISC 662 Graduate Computer Architecture Lecture 16 - Cache and virtual memory review

Memory Hierarchies. Instructor: Dmitri A. Gusev. Fall Lecture 10, October 8, CS 502: Computers and Communications Technology

ENGN 2910A Homework 03 (140 points) Due Date: Oct 3rd 2013

TDT Coarse-Grained Multithreading. Review on ILP. Multi-threaded execution. Contents. Fine-Grained Multithreading

The check bits are in bit numbers 8, 4, 2, and 1.

CS 2410 Mid term (fall 2015) Indicate which of the following statements is true and which is false.

Chapter 5 Large and Fast: Exploiting Memory Hierarchy (Part 1)

2 TEST: A Tracer for Extracting Speculative Threads

Memory Hierarchies 2009 DAT105

Pipelining, Instruction Level Parallelism and Memory in Processors. Advanced Topics ICOM 4215 Computer Architecture and Organization Fall 2010

Computer Architecture: Multi-Core Processors: Why? Prof. Onur Mutlu Carnegie Mellon University

SRAMs to Memory. Memory Hierarchy. Locality. Low Power VLSI System Design Lecture 10: Low Power Memory Design

LRU. Pseudo LRU A B C D E F G H A B C D E F G H H H C. Copyright 2012, Elsevier Inc. All rights reserved.

Virtual Memory. Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University

Cache Memory COE 403. Computer Architecture Prof. Muhamed Mudawar. Computer Engineering Department King Fahd University of Petroleum and Minerals

Course II Parallel Computer Architecture. Week 2-3 by Dr. Putu Harry Gunawan

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review

A Cache Hierarchy in a Computer System

A Review on Cache Memory with Multiprocessor System

Chapter 5 B. Large and Fast: Exploiting Memory Hierarchy

Computer Architecture: Multi-Core Processors: Why? Onur Mutlu & Seth Copen Goldstein Carnegie Mellon University 9/11/13

I/O Buffering and Streaming

Pipelining concepts The DLX architecture A simple DLX pipeline Pipeline Hazards and Solution to overcome

ECE468 Computer Organization and Architecture. Virtual Memory

1. Fundamental Concepts

A Fault Tolerant Superscalar Processor

Architectures for Instruction-Level Parallelism

ECE4680 Computer Organization and Architecture. Virtual Memory

c. What are the machine cycle times (in nanoseconds) of the non-pipelined and the pipelined implementations?

Memory Hierarchy. Goal: Fast, unlimited storage at a reasonable cost per bit.

Computer Organization and Structure. Bing-Yu Chen National Taiwan University

Memory Hierarchy Basics. Ten Advanced Optimizations. Small and Simple

Pipelining concepts The DLX architecture A simple DLX pipeline Pipeline Hazards and Solution to overcome

The Memory Hierarchy. Cache, Main Memory, and Virtual Memory (Part 2)

Memory Hierarchy, Fully Associative Caches. Instructor: Nick Riasanovsky

Virtual Memory. Patterson & Hennessey Chapter 5 ELEC 5200/6200 1

Cache Controller with Enhanced Features using Verilog HDL

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING UNIT I

Chapter Seven. Memories: Review. Exploiting Memory Hierarchy CACHE MEMORY AND VIRTUAL MEMORY

Handout 4 Memory Hierarchy

DHANALAKSHMI SRINIVASAN INSTITUTE OF RESEARCH AND TECHNOLOGY. Department of Computer science and engineering

Chapter 03. Authors: John Hennessy & David Patterson. Copyright 2011, Elsevier Inc. All rights Reserved. 1

CHAPTER 8: CPU and Memory Design, Enhancement, and Implementation

Advanced Computer Architecture

Shared memory. Caches, Cache coherence and Memory consistency models. Diego Fabregat-Traver and Prof. Paolo Bientinesi WS15/16

Modern Processor Architectures. L25: Modern Compiler Design

ECEN/CSCI 4593 Computer Organization and Design Exam-2

EITF20: Computer Architecture Part4.1.1: Cache - 2

Virtual Memory. Reading. Sections 5.4, 5.5, 5.6, 5.8, 5.10 (2) Lecture notes from MKP and S. Yalamanchili

Modern Processor Architectures (A compiler writer s perspective) L25: Modern Compiler Design

William Stallings Computer Organization and Architecture. Chapter 11 CPU Structure and Function

SE-292 High Performance Computing. Memory Hierarchy. R. Govindarajan

CACHE MEMORIES ADVANCED COMPUTER ARCHITECTURES. Slides by: Pedro Tomás

15-740/ Computer Architecture Lecture 21: Superscalar Processing. Prof. Onur Mutlu Carnegie Mellon University

Chapter 5 Memory Hierarchy Design. In-Cheol Park Dept. of EE, KAIST

Cache Optimization. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

6x86 PROCESSOR Superscalar, Superpipelined, Sixth-generation, x86 Compatible CPU

Advanced Parallel Programming I

Advanced Caching Techniques

Final Lecture. A few minutes to wrap up and add some perspective

Chapter 5. Large and Fast: Exploiting Memory Hierarchy

Memory Hierarchy Basics

AR-SMT: A Microarchitectural Approach to Fault Tolerance in Microprocessors

COSC 6385 Computer Architecture. - Memory Hierarchies (II)

Computer Systems. Binary Representation. Binary Representation. Logical Computation: Boolean Algebra

Page 1. Multilevel Memories (Improving performance using a little cash )

Computer Architecture Review. Jo, Heeseung

Memory Hierarchy Computing Systems & Performance MSc Informatics Eng. Memory Hierarchy (most slides are borrowed)

CS/CoE 1541 Exam 2 (Spring 2019).

Memory Hierarchy Computing Systems & Performance MSc Informatics Eng. Memory Hierarchy (most slides are borrowed)

Modern CPU Architectures

Computer Performance Evaluation and Benchmarking. EE 382M Dr. Lizy Kurian John

Lecture 29 Review" CPU time: the best metric" Be sure you understand CC, clock period" Common (and good) performance metrics"

Serial. Parallel. CIT 668: System Architecture 2/14/2011. Topics. Serial and Parallel Computation. Parallel Computing

COSC 3406: COMPUTER ORGANIZATION

Computer Systems Architecture

Please state clearly any assumptions you make in solving the following problems.

Multi Cycle Implementation Scheme for 8 bit Microprocessor by VHDL

Pipelining to Superscalar

Chapter 2: Memory Hierarchy Design Part 2

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

Chapter 5. Large and Fast: Exploiting Memory Hierarchy. Part II Virtual Memory

MEMORY HIERARCHY DESIGN. B649 Parallel Architectures and Programming

COSC4201. Chapter 5. Memory Hierarchy Design. Prof. Mokhtar Aboelaze York University

Com S 321 Problem Set 3

COSC 6385 Computer Architecture. - Memory Hierarchies (I)

ELE 375 / COS 471 Final Exam Fall, 2001 Prof. Martonosi

Superscalar Processors Ch 14

Superscalar Processing (5) Superscalar Processors Ch 14. New dependency for superscalar case? (8) Output Dependency?

Lecture notes for CS Chapter 2, part 1 10/23/18

LECTURE 4: LARGE AND FAST: EXPLOITING MEMORY HIERARCHY

CS Computer Architecture

Modern Computer Architecture

CS / ECE 6810 Midterm Exam - Oct 21st 2008

Recall from Pipelining Review. Lecture 16: Instruction Level Parallelism and Dynamic Execution #1: Ideas to Reduce Stalls

Database Systems and Modern CPU Architecture

ECEC 355: Cache Design

Performance! (1/latency)! 1000! 100! 10! Capacity Access Time Cost. CPU Registers 100s Bytes <10s ns. Cache K Bytes ns 1-0.

CPU issues address (and data for write) Memory returns data (or acknowledgment for write)

Transcription:

Simulation Of Computer Systems Prof. S. Shakya

Purpose & Overview Computer systems are composed from timescales flip (10-11 sec) to time a human interacts (seconds) It is a multi level system

Different Level abstractions

I/O System Behavior Execution of computer program -The program execution should be modeled -Markov Chains are used for modeling inputs The program execution is modeled with randomly sampled CPU and I/O service time

Simulation Tools Different simulation tools exist for each level VHDL (Very High Speed Integrated Circuit-VHSIC) Hardware Description Language -AT low level l of abstraction -Modular design -Process based or event based? SMPL, CSIM,

Process and Event Oriented Simulation DES Trace Driven Event Based Process based It is like OS environment Resource sharing Mutual exclusion Semaphore Process communication

Process and Event Oriented Simulation

Model Input CPU (Instructions) Memory (References) Gate (signals)

Virtual Memory Referencing Why VM is good? Program is organized on units called pages Physical memory is divided into page frames Mapping is done by OS Page fault? Replacement policy (hit ratio) -Use simulation to find hit ratio fro some polices Why VM work -Working set (Finding them is OS challenges)well?

Generating reference trace Stochastically? Direct execution

High Level Computer Simulation good response time We should find bottleneck (delay)

Web site Server System

Web site Server System Router have table of sessions Web server has three queues of threads Application server has two queues of threads Goal is to find response time distribution First we find bottleneck and then look how to reduce load at bottleneck during change of scheduling policy, biding applications to servers, increasing CPU and I/O devices

Wb Web site Server System parameters

Process or event based The website model is an excellent candidate for process oriented approach!! How can we model with event based simulation? Event based is focused on queries. Process based is focused on servers.

CPU Simulation What is execution time? The input is streams of instructions. What is the bottleneck? Main challenges is to avoid stalling -Inputs are not ready -Miss load High performance CPU avoid it by recognizing additional instructions can be executed

Pipeline Modern microprocessors add some additional capabilities to exploit ILP (Instruction level parallelism) -Compiler or CPU? Pipelining has long been recognized as way of accelerating the execution of computer instructions.

ILP CPU Pipeline stages -Instruction fetch -Instruction decode -Instruction issue (non order) -Instruction execute -Instruction complete -Instruction graduate

Simulation model of ILP CPU Fetch Read from simulated memory and cache Decode -Register mapping -Branch prediction Issue -Input registers must be available -Functional units must be available Execute & complete - Find branch -Register writing - Release functional units and registers Graduation - Find exception

Memory Simulation One of the great challenges of computer architecture is finding way to deal effectively with the increasing gap in operation speed between CPU and memory (Chart) Solution is to use hierarchies of memories -L1-L2-Main memory We have data inconsistency -Write through -Write back -Comparing them with simulation

Memory Simulation Increasing hit ratio Replacement Policy (LRU) Set associative -Full associative

Reference Discrete Event system simulation, 4 th Edition, Jerry Banks, John S, Carson II, Barry L. Nelson, David M. Nicol, P. Shahabudeen