FSU DEPARTMENT OF COMPUTER SCIENCE
|
|
- Melvyn Bruce
- 6 years ago
- Views:
Transcription
1 of Computer Science Department State University Florida On Debugging RealTime Applications Frank Mueller and David Whalley Tallahassee, FL On Debugging RealTime Applications LCTS'94 1
2 deadline monitoring time distortion due to interference of debugging new debugging environment: cache simulation to keep track of elapsed cycles Overview debugging part of development cycle (up to 50% of time) few debuggers address realtime issues: displays elapsed execution time (cycles) works without changing debugger slows down execution by factor of 14 much faster than hardware simulators to nd missed deadlines to locate timeconsuming code portions On Debugging RealTime Applications LCTS'94 2
3 time distortion: interference: breakpoints, debugger kernel traps, caching replace real time with virtual time external events simulated Problems with RealTime Debugging deadline monitoring and task tuning uni vs. multiprocessor On Debugging RealTime Applications LCTS'94 3
4 Overview of Debugging Environment time estimation routines source files compiler object files linker executable program sourcelevel debugger cache configuration control flow information static cache simulator instruction annotation On Debugging RealTime Applications LCTS'94 4
5 elapsed time tracing: query during debugging (any breakpoint) calculate based on cache hit and misses simulated so far can translate number of cycles into seconds debugging optimized code: allows realistic timing simulation restricts debugging to basic blocks (breakpoints) can also display most variables in registers RealTime Debugging Environment sometimes inconsistent values (due to optimizations) On Debugging RealTime Applications LCTS'94 5
6 Sample Session with dbx stop at 43 (dbx) stop at 123 if elapsed_cycles() > (dbx) display elapsed_cycles() (dbx) [...] in four at line 43 stopped mmax=2; 43 = elapsed_cycles() next (dbx) in four at line 44 stopped while(n>mmax) { 44 = elapsed_cycles() [...] four(tdata,nn,isign); 123 = elapsed_cycles() [...] cycles() = elapsed execution completed, exit code is 1 On Debugging RealTime Applications LCTS'94 6
7 Frank Mueller and David Whalley LCTS'94 break after 4 million cycles display elapsed time breakpoints do not aect virtual time keeping deadline missed after 4+ million cycles (points to area where it's misses) program terminated even later could set breakpoint at inner nesting level next to localize missed deadline On Debugging RealTime Applications (notes) 61
8 1kB 2kB 4kB 8kB code Performance Overhead unopt. opt. code with time estimates On Debugging RealTime Applications LCTS'94 7
9 used dbx under SunOS veried correctness of instruction cache simulation by comparing with tracedriven simulation Frank Mueller and David Whalley LCTS'94 implemented on SPARC modied VPO 11 test programs unopt. about 1.8 times slower than opt. code instr. opt. about 2.1 to 7.8 times slower than opt. code instr. opt. about 1 to 4 times slower than common unopt. code cache size inuences overhead (due to conicts) On Debugging RealTime Applications (notes) 71
10 board proling with timing information Future Work external event table pragma zero t imetoinsertnon intrusivedebuggingcodeextendtodatacaching; pipelining to be used with Pthreads realtime kernel on SPARC VME On Debugging RealTime Applications LCTS'94 8
11 Related Work debugging capabilities typically very restricted Remedy: interface, suspend all processors on breakpoint DCT: special hardware (bus monitoring), nonintrusive RED, ART: software instrumentation, remote debugging DARTS: (1) program trace (2) debug timestamped trace hardware simulators: very slow On Debugging RealTime Applications LCTS'94 9
12 Frank Mueller and David Whalley LCTS'94 debugging remote, indirect (oline), not within program Remedy: DCT: Distributed computing testbed RED: Remotely executed debugger ART: instrumentation permanent part of programs DARTS: Debug assistant for RTSs, no data queries On Debugging RealTime Applications (notes) 91
13 Summary developed new debugging enhancement for realtime replace real time with virtual time keep track of virtual time by instruction cache simulation feasible through static cache simulation debug unoptimized or optimized code display time repeatedly at breakpoints nd missed deadlines through conditional breakpoints locate timeconsuming code, tune it tuning may be used to make schedule feasible performance overhead of factor 1 to 4 over unoptimized code On Debugging RealTime Applications LCTS'94 10
FSU DEPARTMENT OF COMPUTER SCIENCE
mueller@cs.fsu.edu whalley@cs.fsu.edu of Computer Science Department State University Florida Predicting Instruction Cache Behavior Frank Mueller () David Whalley () Marion Harmon(FAMU) Tallahassee, FL
More informationFSU DEPARTMENT OF COMPUTER SCIENCE
den Linden 6 Tallahassee, FL 323044019 Unter Berlin (Germany) U.S.A. 10099 Fast Instruction Cache Analysis via Static Cache Simulation Frank Mueller David Whalley HumboldtUniversitat zu Berlin Florida
More informationFrank Mueller. Dept. of Computer Science. Florida State University. Tallahassee, FL phone: (904)
Static Cache Simulation and its Applications by Frank Mueller Dept. of Computer Science Florida State University Tallahassee, FL 32306-4019 e-mail: mueller@cs.fsu.edu phone: (904) 644-3441 July 12, 1994
More informationSupporting the Specification and Analysis of Timing Constraints *
Supporting the Specification and Analysis of Timing Constraints * Lo Ko, Christopher Healy, Emily Ratliff Marion Harmon Robert Arnold, and David Whalley Computer and Information Systems Dept. Computer
More informationVirtual Execution Environments: Support and Tools
Virtual Execution Environments: Support and Tools PIs: Bruce Childers #, Jack Davidson*, Mary Lou Soffa* Apala Guha*, Jason Hiser*, Naveen Kumar #, Jing Yang*, Min Zhao #, Shukang Zhou*, Kim Hazelwood*
More informationKeil uvision development story (Adapted from (Valvano, 2014a))
Introduction uvision has powerful tools for debugging and developing C and Assembly code. For debugging a code, one can either simulate it on the IDE s simulator or execute the code directly on ta Keil
More informationFSU. Av oiding Unconditional Jumps by Code Replication. Frank Mueller and David B. Whalley. Florida State University DEPARTMENT OF COMPUTER SCIENCE
Av oiding Unconditional Jumps by Code Replication by Frank Mueller and David B. Whalley Florida State University Overview uncond. jumps occur often in programs [4-0% dynamically] produced by loops, conditional
More informationCompiler and Architectural Support for. Jerey S. Snyder, David B. Whalley, and Theodore P. Baker. Department of Computer Science
Fast Context Switches: Compiler and Architectural Support for Preemptive Scheduling Jerey S. Snyder, David B. Whalley, and Theodore P. Baker Department of Computer Science Florida State University, Tallahassee,
More informationTechniques described here for one can sometimes be used for the other.
01-1 Simulation and Instrumentation 01-1 Purpose and Overview Instrumentation: A facility used to determine what an actual system is doing. Simulation: A facility used to determine what a specified system
More informationAvoiding Unconditional Jumps by Code Replication. Frank Mueller and David B. Whalley. from the execution of a number of programs.
voiding Unconditional Jumps by Code Replication Frank Mueller and David B Whalley Department of Computer Science, B-73 Florida State University Tallahassee, Florida 32306-09 e-mail: whalley@csfsuedu bstract
More informationfor control-ow partitioning is presented for ecient on-the-y analysis, i.e. for program
Ecient On-the-y Analysis of Program Behavior and Static Cache Simulation? Frank Mueller and David B. Whalley Dept. of Computer Science, Florida State University, Tallahassee, FL 32306-019 e-mail: whalley@cs.fsu.edu
More information_ V Renesas R8C In-Circuit Emulation. Contents. Technical Notes
_ V9.12. 225 Technical Notes Renesas R8C In-Circuit Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document assumes knowledge
More informationr[2] = M[x]; M[x] = r[2]; r[2] = M[x]; M[x] = r[2];
Using a Swap Instruction to Coalesce Loads and Stores Apan Qasem, David Whalley, Xin Yuan, and Robert van Engelen Department of Computer Science, Florida State University Tallahassee, FL 32306-4530, U.S.A.
More informationTechniques for Fast Instruction Cache Performance Evaluation
Techniques for Fast Instruction Cache Performance Evaluation DAVID B. WHALLEY Department of Computer Science B-173, Florida State University, Tallahassee, FL 32306, U.S.A. SUMMARY Cache performance has
More informationdirector executor user program user program signal, breakpoint function call communication channel client library directing server
(appeared in Computing Systems, Vol. 8, 2, pp.107-134, MIT Press, Spring 1995.) The Dynascope Directing Server: Design and Implementation 1 Rok Sosic School of Computing and Information Technology Grith
More informationApril 4, 2001: Debugging Your C24x DSP Design Using Code Composer Studio Real-Time Monitor
1 This presentation was part of TI s Monthly TMS320 DSP Technology Webcast Series April 4, 2001: Debugging Your C24x DSP Design Using Code Composer Studio Real-Time Monitor To view this 1-hour 1 webcast
More information52 Remote Target. Simulation. Chapter
Chapter 52 Remote Target Simulation This chapter describes how to run a simulator on a target and connect it to the SDL simulator interface (SimUI) on the host via TCP/IP communication. July 2003 Telelogic
More informationChapter 8: Memory-Management Strategies
Chapter 8: Memory-Management Strategies Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and
More informationMartin Kruliš, v
Martin Kruliš 1 Optimizations in General Code And Compilation Memory Considerations Parallelism Profiling And Optimization Examples 2 Premature optimization is the root of all evil. -- D. Knuth Our goal
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 informationCycle Approximate Simulation of RISC-V Processors
Cycle Approximate Simulation of RISC-V Processors Lee Moore, Duncan Graham, Simon Davidmann Imperas Software Ltd. Felipe Rosa Universidad Federal Rio Grande Sul Embedded World conference 27 February 2018
More informationFlow of Control: Loops
Walter Savitch Frank M. Carrano Flow of Control: Loops Chapter 4 Java Loop Statements: Outline The while statement The do-while statement The for Statement Java Loop Statements A portion of a program that
More informationCompiler Support for Software-Based Cache Partitioning. Frank Mueller. Humboldt-Universitat zu Berlin. Institut fur Informatik. Unter den Linden 6
ACM SIGPLAN Workshop on Languages, Compilers and Tools for Real-Time Systems, La Jolla, California, June 1995. Compiler Support for Software-Based Cache Partitioning Frank Mueller Humboldt-Universitat
More informationChapter 8: Main Memory. Operating System Concepts 9 th Edition
Chapter 8: Main Memory Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel
More informationSimplifying the Development and Debug of 8572-Based SMP Embedded Systems. Wind River Workbench Development Tools
Simplifying the Development and Debug of 8572-Based SMP Embedded Systems Wind River Workbench Development Tools Agenda Introducing multicore systems Debugging challenges of multicore systems Development
More informationCommercial Real-time Operating Systems An Introduction. Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory
Commercial Real-time Operating Systems An Introduction Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory swamis@iastate.edu Outline Introduction RTOS Issues and functionalities LynxOS
More informationChapter 8: Main Memory
Chapter 8: Main Memory Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel
More informationLecture 11 Reducing Cache Misses. Computer Architectures S
Lecture 11 Reducing Cache Misses Computer Architectures 521480S Reducing Misses Classifying Misses: 3 Cs Compulsory The first access to a block is not in the cache, so the block must be brought into the
More informationChapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition
Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation
More informationClearSpeed Visual Profiler
ClearSpeed Visual Profiler Copyright 2007 ClearSpeed Technology plc. All rights reserved. 12 November 2007 www.clearspeed.com 1 Profiling Application Code Why use a profiler? Program analysis tools are
More informationA Tutorial for ECE 175
Debugging in Microsoft Visual Studio 2010 A Tutorial for ECE 175 1. Introduction Debugging refers to the process of discovering defects (bugs) in software and correcting them. This process is invoked when
More informationThe members of the Committee approve the thesis of Baosheng Cai defended on March David B. Whalley Professor Directing Thesis Xin Yuan Commit
THE FLORIDA STATE UNIVERSITY COLLEGE OF ARTS AND SCIENCES COMPILER MODIFICATIONS TO SUPPORT INTERACTIVE COMPILATION By BAOSHENG CAI A Thesis submitted to the Department of Computer Science in partial fulllment
More informationChapter 7: Main Memory. Operating System Concepts Essentials 8 th Edition
Chapter 7: Main Memory Operating System Concepts Essentials 8 th Edition Silberschatz, Galvin and Gagne 2011 Chapter 7: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure
More informationCS3600 SYSTEMS AND NETWORKS
CS3600 SYSTEMS AND NETWORKS SPRING 2013 Lecture 13: Paging Prof. Alan Mislove (amislove@ccs.neu.edu) Paging Physical address space of a process can be noncontiguous; process is allocated physical memory
More informationTutorial Introduction
Tutorial Introduction PURPOSE: - To explain how to prepare a project for debugging and describe how to configure the CodeWarrior Debugger to communicate with various types of embedded hardware OBJECTIVES:
More informationChapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition
Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation
More informationChapter 8: Memory- Management Strategies
Chapter 8: Memory Management Strategies Chapter 8: Memory- Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and
More information4. Hardware Platform: Real-Time Requirements
4. Hardware Platform: Real-Time Requirements Contents: 4.1 Evolution of Microprocessor Architecture 4.2 Performance-Increasing Concepts 4.3 Influences on System Architecture 4.4 A Real-Time Hardware Architecture
More informationMemory Hierarchies. Instructor: Dmitri A. Gusev. Fall Lecture 10, October 8, CS 502: Computers and Communications Technology
Memory Hierarchies Instructor: Dmitri A. Gusev Fall 2007 CS 502: Computers and Communications Technology Lecture 10, October 8, 2007 Memories SRAM: value is stored on a pair of inverting gates very fast
More informationLECTURE 4: LARGE AND FAST: EXPLOITING MEMORY HIERARCHY
LECTURE 4: LARGE AND FAST: EXPLOITING MEMORY HIERARCHY Abridged version of Patterson & Hennessy (2013):Ch.5 Principle of Locality Programs access a small proportion of their address space at any time Temporal
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 informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 20 Main Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Pages Pages and frames Page
More informationCHAPTER 8: MEMORY MANAGEMENT. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.
CHAPTER 8: MEMORY MANAGEMENT By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the
More informationC6000 Compiler Roadmap
C6000 Compiler Roadmap CGT v7.4 CGT v7.3 CGT v7. CGT v8.0 CGT C6x v8. CGT Longer Term In Development Production Early Adopter Future CGT v7.2 reactive Current 3H2 4H 4H2 H H2 Future CGT C6x v7.3 Control
More informationDebugging and Testing Optimizers through Comparison Checking
Electronic Notes in Theoretical Computer Science 65 No. 2 (2002) URL: http://www.elsevier.nl/locate/entcs/volume65.html 17 pages Debugging and Testing Optimizers through Comparison Checking Clara Jaramillo
More informationBasic Memory Management. Basic Memory Management. Address Binding. Running a user program. Operating Systems 10/14/2018 CSC 256/456 1
Basic Memory Management Program must be brought into memory and placed within a process for it to be run Basic Memory Management CS 256/456 Dept. of Computer Science, University of Rochester Mono-programming
More informationCache Profiling with Callgrind
Center for Information Services and High Performance Computing (ZIH) Cache Profiling with Callgrind Linux/x86 Performance Practical, 17.06.2009 Zellescher Weg 12 Willers-Bau A106 Tel. +49 351-463 - 31945
More informationNightStar. NightView Source Level Debugger. Real-Time Linux Debugging and Analysis Tools BROCHURE
NightStar Real-Time Linux Debugging and Analysis Tools Concurrent s NightStar is a powerful, integrated tool set for debugging and analyzing time-critical Linux applications. NightStar tools run with minimal
More informationReview: A simple architecture
Single -bus slow simple cheap Review: A simple architecture cpu Bus M p M s D io CS 350 Part I 1 Review: A simple architecture where cpu = control ALU Register file CS 350 Part I 2 Slightly fancier architecture
More informationCS307: Operating Systems
CS307: Operating Systems Chentao Wu 吴晨涛 Associate Professor Dept. of Computer Science and Engineering Shanghai Jiao Tong University SEIEE Building 3-513 wuct@cs.sjtu.edu.cn Download Lectures ftp://public.sjtu.edu.cn
More information1. Memory technology & Hierarchy
1 Memory technology & Hierarchy Caching and Virtual Memory Parallel System Architectures Andy D Pimentel Caches and their design cf Henessy & Patterson, Chap 5 Caching - summary Caches are small fast memories
More informationHumboldt-Universitȧ. t zu Berlin Institut fu.. r Informatik
mueller@informatik.huberlin.de WWW: HumboldtUniversitȧ. t zu Berlin Institut fu.. r Informatik A ThreadAware Debugger with an Open Interface Daniel Schulz Frank Mueller Qcentic Gmbh Institut für Informatik
More informationA Multiprocessor Memory Processor for Efficient Sharing And Access Coordination
1 1 A Multiprocessor Memory Processor for Efficient Sharing And Access Coordination David M. Koppelman Department of Electrical & Computer Engineering Louisiana State University, Baton Rouge koppel@ee.lsu.edu
More information3 TUTORIAL. In This Chapter. Figure 1-0. Table 1-0. Listing 1-0.
3 TUTORIAL Figure 1-0. Table 1-0. Listing 1-0. In This Chapter This chapter contains the following topics: Overview on page 3-2 Exercise One: Building and Running a C Program on page 3-4 Exercise Two:
More informationMemory and multiprogramming
Memory and multiprogramming COMP342 27 Week 5 Dr Len Hamey Reading TW: Tanenbaum and Woodhull, Operating Systems, Third Edition, chapter 4. References (computer architecture): HP: Hennessy and Patterson
More informationBasic Memory Management
Basic Memory Management CS 256/456 Dept. of Computer Science, University of Rochester 10/15/14 CSC 2/456 1 Basic Memory Management Program must be brought into memory and placed within a process for it
More informationChapter 8: Main Memory
Chapter 8: Main Memory Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and 64-bit Architectures Example:
More informationParametric Timing Analysis
Parametric Timing Analysis EMILIO VIVANCOS 1,CHISTOPHER HEALY 2,FRANK MUELLER 3,AND DAVID WHALLEY 4 1 Departamento de Sistemas Informaticos y Computacion, Universidad Politecnica de Valencia, 46022-Valencia,
More informationChapter 8 Main Memory
COP 4610: Introduction to Operating Systems (Spring 2014) Chapter 8 Main Memory Zhi Wang Florida State University Contents Background Swapping Contiguous memory allocation Paging Segmentation OS examples
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 informationEclipse-Based CodeWarrior Debugger
July 14-16, 2009 Eclipse-Based CodeWarrior Debugger QorIQ Multicore Linux Kernel Debug Bogdan Irimia CodeWarrior Software Engineer Tool used to develop software running on Freescale Power Architecture
More informationSupplement: Visual C++ Debugging
Supplement: Visual C++ Debugging For Introduction to C++ Programming By Y. Daniel Liang Note: The screen shots are taken from VC++ 2010. It is the same for the later version. 1 Introduction The debugger
More informationIntro to MS Visual C++ Debugging
Intro to MS Visual C++ Debugging 1 Debugger Definition A program used to control the execution of another program for diagnostic purposes. Debugger Features / Operations Single-Stepping 100011101010101010
More informationCSC227: Operating Systems Fall Chapter 1 INTERRUPTS. Dr. Soha S. Zaghloul
CSC227: Operating Systems Fall 2016 Chapter 1 INTERRUPTS Dr. Soha S. Zaghloul LAYOUT 1.3 Devices Controlling Techniques 1.3.1 Polling 1.3.2 Interrupts H/W Interrupts Interrupt Controller Process State
More informationThe New ABAP Debugger
The New ABAP Debugger "How to find and correct the most elusive problems in ABAP" Tony Cecchini The New ABAP Debugger Part 1 This ebook will deal with the NEW ABAP debugger in ECC. Part 1 will explore
More informationUsing POSIX Threading to Build Scalable Multi-Core Applications
d font sizes: Title: Arial 14, bold Using POSIX Threading to Build Scalable Multi-Core Applications Kerry Johnson Senior Product Manager QNX Software Systems kjohnson@qnx.com Introduction Until recently,
More informationMILOŠ RADIVOJEVIĆ, PRINCIPAL DATABASE CONSULTANT, BWIN GVC, VIENNA, AUSTRIA
MILOŠ RADIVOJEVIĆ, PRINCIPAL DATABASE CONSULTANT, BWIN GVC, VIENNA, AUSTRIA Performance Tuning with SQL Server 2017 Sponsors About Me Principal Database Consultant, bwin GVC, Vienna, Austria Data Platform
More informationComputing and compilers
Computing and compilers Comp Sci 1570 to Outline 1 2 3 4 5 Evaluate the difference between hardware and software Find out about the various types of software Get a high level understanding of how program
More informationVirtual Memory. Chapter 8
Virtual Memory 1 Chapter 8 Characteristics of Paging and Segmentation Memory references are dynamically translated into physical addresses at run time E.g., process may be swapped in and out of main memory
More informationObservability in Multiprocessor Real-Time Systems with Hardware/Software Co-Simulation
Observability in Multiprocessor Real-Time Systems with /Software Co-Simulation Mohammed El Shobaki Mälardalen University, IDt/CUS P.O. Box 833, S-721 23 Västerås, Sweden E-mail: mohammed.el.shobaki@mdh.se
More informationMotivations for Virtual Memory Virtual Memory Oct. 29, Why VM Works? Motivation #1: DRAM a Cache for Disk
class8.ppt 5-23 The course that gives CMU its Zip! Virtual Oct. 29, 22 Topics Motivations for VM Address translation Accelerating translation with TLBs Motivations for Virtual Use Physical DRAM as a Cache
More informationOpenACC Course. Office Hour #2 Q&A
OpenACC Course Office Hour #2 Q&A Q1: How many threads does each GPU core have? A: GPU cores execute arithmetic instructions. Each core can execute one single precision floating point instruction per cycle
More informationSIC: Provably Timing-Predictable Strictly In-Order Pipelined Processor Core
SIC: Provably Timing-Predictable Strictly In-Order Pipelined Processor Core Sebastian Hahn and Jan Reineke RTSS, Nashville December, 2018 saarland university computer science SIC: Provably Timing-Predictable
More informationCSE 431 Computer Architecture Fall Chapter 5A: Exploiting the Memory Hierarchy, Part 1
CSE 431 Computer Architecture Fall 2008 Chapter 5A: Exploiting the Memory Hierarchy, Part 1 Mary Jane Irwin ( www.cse.psu.edu/~mji ) [Adapted from Computer Organization and Design, 4 th Edition, Patterson
More informationVirtual Memory Oct. 29, 2002
5-23 The course that gives CMU its Zip! Virtual Memory Oct. 29, 22 Topics Motivations for VM Address translation Accelerating translation with TLBs class9.ppt Motivations for Virtual Memory Use Physical
More informationFinal Lecture. A few minutes to wrap up and add some perspective
Final Lecture A few minutes to wrap up and add some perspective 1 2 Instant replay The quarter was split into roughly three parts and a coda. The 1st part covered instruction set architectures the connection
More informationTopic 18: Virtual Memory
Topic 18: Virtual Memory COS / ELE 375 Computer Architecture and Organization Princeton University Fall 2015 Prof. David August 1 Virtual Memory Any time you see virtual, think using a level of indirection
More informationMemory Cache. Memory Locality. Cache Organization -- Overview L1 Data Cache
Memory Cache Memory Locality cpu cache memory Memory hierarchies take advantage of memory locality. Memory locality is the principle that future memory accesses are near past accesses. Memory hierarchies
More informationDSP Mapping, Coding, Optimization
DSP Mapping, Coding, Optimization On TMS320C6000 Family using CCS (Code Composer Studio) ver 3.3 Started with writing a simple C code in the class, from scratch Project called First, written for C6713
More informationDynamic Tracing and Instrumentation
Dynamic Tracing and Instrumentation Bryan Cantrill and Mike Shapiro (bmc, mws@eng.sun.com) Solaris Kernel Group Kernel Debugging Today if (no_advanced_debugging) printf(9f) ASSERT(i_am_a_debug_kernel!=
More informationARMv8-A Software Development
ARMv8-A Software Development Course Description ARMv8-A software development is a 4 days ARM official course. The course goes into great depth and provides all necessary know-how to develop software for
More informationLecture 16: Memory Hierarchy Misses, 3 Cs and 7 Ways to Reduce Misses. Professor Randy H. Katz Computer Science 252 Fall 1995
Lecture 16: Memory Hierarchy Misses, 3 Cs and 7 Ways to Reduce Misses Professor Randy H. Katz Computer Science 252 Fall 1995 Review: Who Cares About the Memory Hierarchy? Processor Only Thus Far in Course:
More informationEE 355 Lab 3 - Algorithms & Control Structures
1 Introduction In this lab you will gain experience writing C/C++ programs that utilize loops and conditional structures. This assignment should be performed INDIVIDUALLY. This is a peer evaluated lab
More informationLecture 16: Memory Hierarchy Misses, 3 Cs and 7 Ways to Reduce Misses Professor Randy H. Katz Computer Science 252 Spring 1996
Lecture 16: Memory Hierarchy Misses, 3 Cs and 7 Ways to Reduce Misses Professor Randy H. Katz Computer Science 252 Spring 1996 RHK.S96 1 Review: Who Cares About the Memory Hierarchy? Processor Only Thus
More informationPredicting the Worst-Case Execution Time of the Concurrent Execution. of Instructions and Cycle-Stealing DMA I/O Operations
ACM SIGPLAN Workshop on Languages, Compilers and Tools for Real-Time Systems, La Jolla, California, June 1995. Predicting the Worst-Case Execution Time of the Concurrent Execution of Instructions and Cycle-Stealing
More informationChapter 9 Memory Management Main Memory Operating system concepts. Sixth Edition. Silberschatz, Galvin, and Gagne 8.1
Chapter 9 Memory Management Main Memory Operating system concepts. Sixth Edition. Silberschatz, Galvin, and Gagne 8.1 Chapter 9: Memory Management Background Swapping Contiguous Memory Allocation Segmentation
More informationC5500 Compiler Build Options One Use Case
C5500 Compiler Build Options One Use Case May 2008 Page 1 Page 1 TI Internal Use Only Overview These slides are the collective wisdom on C5500 Compiler Build options from a highly experienced development
More information9/5/17. The Design and Implementation of Programming Languages. Compilation. Interpretation. Compilation vs. Interpretation. Hybrid Implementation
Language Implementation Methods The Design and Implementation of Programming Languages Compilation Interpretation Hybrid In Text: Chapter 1 2 Compilation Interpretation Translate high-level programs to
More informationRepetition and Loop Statements Chapter 5
Repetition and Loop Statements Chapter 5 1 Chapter Objectives To understand why repetition is an important control structure in programming To learn about loop control variables and the three steps needed
More informationIBM Education Assistance for z/os V2R1
IBM Education Assistance for z/os V2R1 Item: Debug Optimized Code Element/Component: z/os UNIX System Services DBX Material is current as of June 2013 Agenda Trademarks Presentation Objectives Overview
More informationAssembling and Debugging VPs of Complex Cycle Accurate Multicore Systems. July 2009
Assembling and Debugging VPs of Complex Cycle Accurate Multicore Systems July 2009 Model Requirements in a Virtual Platform Control initialization, breakpoints, etc Visibility PV registers, memories, profiling
More informationComputing platforms. Design methodology. Consumer electronics architectures. System-level performance and power analysis.
Computing platforms Design methodology. Consumer electronics architectures. System-level performance and power analysis. Evaluation boards Designed by CPU manufacturer or others. Includes CPU, memory,
More informationReducing Instruction Fetch Cost by Packing Instructions into Register Windows
Reducing Instruction Fetch Cost by Packing Instructions into Register Windows Stephen Hines, Gary Tyson, David Whalley Computer Science Dept. Florida State University November 14, 2005 ➊ Introduction Reducing
More informationUNIT - 5 EDITORS AND DEBUGGING SYSTEMS
UNIT - 5 EDITORS AND DEBUGGING SYSTEMS 5.1 Introduction An Interactive text editor has become an important part of almost any computing environment. Text editor acts as a primary interface to the computer
More informationSECTION 5: STRUCTURED PROGRAMMING IN MATLAB. ENGR 112 Introduction to Engineering Computing
SECTION 5: STRUCTURED PROGRAMMING IN MATLAB ENGR 112 Introduction to Engineering Computing 2 Conditional Statements if statements if else statements Logical and relational operators switch case statements
More informationCISC 360. Virtual Memory Dec. 4, 2008
CISC 36 Virtual Dec. 4, 28 Topics Motivations for VM Address translation Accelerating translation with TLBs Motivations for Virtual Use Physical DRAM as a Cache for the Disk Address space of a process
More informationFPQ9 - MPC8360E implementation
Training MPC8360E implementation: This course covers PowerQUICC II Pro MPC8360E - PowerPC processors: NXP Power CPUs FPQ9 - MPC8360E implementation This course covers PowerQUICC II Pro MPC8360E Objectives
More informationParallel Debugging. ª Objective. ª Contents. ª Learn the basics of debugging parallel programs
ª Objective ª Learn the basics of debugging parallel programs ª Contents ª Launching a debug session ª The Parallel Debug Perspective ª Controlling sets of processes ª Controlling individual processes
More information14 May 2012 Virtual Memory. Definition: A process is an instance of a running program
Virtual Memory (VM) Overview and motivation VM as tool for caching VM as tool for memory management VM as tool for memory protection Address translation 4 May 22 Virtual Memory Processes Definition: A
More informationTrace Getting Started V8.02
Trace Getting Started V8.02 1. Introduction This paper helps the user to entirely exploit the trace and troubleshoot most often situations that the developer is confronted with while debugging the application.
More information