Simplifying the Development and Debug of 8572-Based SMP Embedded Systems. Wind River Workbench Development Tools
|
|
- Amanda Bennett
- 5 years ago
- Views:
Transcription
1 Simplifying the Development and Debug of 8572-Based SMP Embedded Systems Wind River Workbench Development Tools
2 Agenda Introducing multicore systems Debugging challenges of multicore systems Development tool requirements for multicore Multicore development solutions from Wind River Wind River Systems, Inc.
3 What Is Multicore? Multicore: A single chip containing multiple distinct processing engines, with multiple independent program counters P C BUS P C L Wind River Systems, Inc.
4 Freescale Multicore Solutions Freescale MPC8572: High-performance dual-core processor Security Acceleration XOR Pattern Matching Engine 2 x Table Lookup Unit 32 KB L1 I-Cache E500 Core 32 KB L1 I-Cache 1MB L2 Cache Coherency Module System Bus 32 KB L1 I-Cache E500 Core 32 KB L1 I-Cache DDR2/DDR3 SDRAM Controller DDR2/DDR3 SDRAM Controller Local Bus Performance Monitor DART, MPIC, 2 x PC, Timers, GPIO, Interrupt Control 4 x Gigabit Ethernet 4 x SGMII PCI Express PCI Express On-Chip Network PCI Express Serial RapidIO 4-ch. DMA 4-ch. DMA 8-lane SerDes Wind River Systems, Inc.
5 Multiprocessing Business Issues Benefit Promise of better products Performance, capability, cost The ability to provide Increased horsepower More cost-efficiency Heterogeneous systems Stronger partitioning Reliability via redundancy Cost Increased development cost, time, and risk Algorithms, partitioning Hardware and software design Software development challenges No guaranteed benefits Wind River Systems, Inc.
6 Multicore Configuration Options Symmetric Multiprocessing (SMP) Asymmetric Multiprocessing (AMP) SMP OS OS OS OS P P P P P P Identical processors/cores Uniform access to shared memory Single OS Effort required to make data or resources private Multithreaded work distributed by OS at run-time Changed programming paradigm Higher level of kernel overhead Processors/cores may be different Each one has local memory Each one has an independent OS or control software, may be different Connected for communication and synchronization Work must be partitioned at design time and assigned to processors Not easily portable to different hardware Wind River Systems, Inc.
7 Embedded Development Embedded testing requirements Higher quality needs vs. desktop software Run-time debugging Debugging code on a target embedded system Difficult issues that developers face Memory issues and leaks Timing issues with multitasking Random crashes Resource access issues, especially with multicore Side effects and unintended consequences Integration of third-party code Performance or throughput bottlenecks Wind River Systems, Inc.
8 Multicore Development Challenges Multiple interacting contexts Parallel execution of threads in SMP Independent processors in AMP Race conditions, deadlocks, memory synchronization SMP Increased debug complexity in multicore Debug can change behavior May be very difficult to reproduce Different behavior on single core vs. multiple cores Synchronization issues Start, stop, and stepping through code Stopping one core but other runs then stops Latency causes skid AMP Wind River Systems, Inc.
9 A Day in the Life of a Developer Difficulty isolating problem cause and or location Crash, slow performance/throughput, undesired effect Don t know where or how to start the debug process Debugging tricky or confusing timing problems Hardware and software interaction cause random crashes Debug methodology can change system behavior, masks issue or gives misleading results AND Multicore development and debug is hard Confusing environments with multiple interacting contexts printf does not provide sufficient debug information Wind River Systems, Inc.
10 Why Is Multicore Debug Difficult? Simple example: Two threads execute at the same time accessing shared variable Thread 1 runs on Core 1 C Code global_var_x = global_var_x + 1; printf( added 1 to global_var_x ); Assembly Code MOV global_var_x, r0 ADD #1, r0 MOV r0, global_var_x JSR 0x Thread 2 runs on Core 2 C Code global_var_x = global_var_x - 1; printf( subtracted 1 from global_var_x ) Assembly Code MOV global_var_x, r0 SUB #1, r0 MOV r0, global_var_x JSR 0x Global_var_x starts at 10 Thread 1 and 2 execute once Final value ( ) = Wind River Systems, Inc.
11 Why Is Multicore Debug Difficult? Simple example: Two threads execute at the same time accessing shared variable Thread 1 runs on Core 1 C Code global_var_x = global_var_x + 1; printf( added 1 to global_var_x ); Assembly Code MOV global_var_x, r0 ADD #1, r0 MOV r0, global_var_x JSR 0x Thread 2 runs on Core 2 C Code global_var_x = global_var_x - 1; printf( subtracted 1 from global_var_x ) Assembly Code MOV global_var_x, r0 SUB #1, r0 MOV r0, global_var_x JSR 0x Global_var_x starts at 10 Thread 1 and 2 execute once Final value ( ) = 10 No problem If thread 1 and 2 run sequentially Error If thread 1 and 2 run concurrently incorrect result will be obtained Debug method Difficult to debug with printf May work sometimes, fails sporadically Wind River Systems, Inc.
12 Why Is Multicore Debug Difficult? Simple example: Two threads execute at the same time accessing shared variable Thread 1 runs on Core 1 C Code global_var_x = global_var_x + 1; printf( added 1 to global_var_x ); Assembly Code MOV global_var_x, r0 ADD #1, r0 MOV r0, global_var_x JSR 0x Thread 2 runs on Core 2 C Code global_var_x = global_var_x - 1; printf( subtracted 1 from global_var_x ) Assembly Code MOV global_var_x, r0 SUB #1, r0 MOV r0, global_var_x JSR 0x Global_var_x starts at 10 Thread 1 and 2 execute once Final value ( ) = 10 No problem If thread 1 and 2 run sequentially Error If thread 1 and 2 run concurrently incorrect result will be obtained Debug method Difficult to debug with printf May work sometimes, fails sporadically Debug solution requirement Breakpoint setting that works across cores Ability to synchronize cores to expose bugs Example: Works in single core but not in dual core Visibility needed to all cores simultaneously Observe race conditions Wind River Systems, Inc.
13 Confusing Race Conditions in Multicore Race conditions are among the hardest multicore problems to solve. They can occur when multiple threads have simultaneous access to the same data. The cause and effect are typically millions of cycles apart. Time Processor 1 Processor 2 1 read 2 modify 3 read 4 modify 5 write 6 write Wind River tools are good for race condition debugging Wind River Systems, Inc.
14 Multicore Debug Requirements Flexible solutions Visualize system events and system mode debug Visualizing See operating system events Observe timing and sequence Spot deadlock, race, and starvation conditions System mode debug Trigger when breakpoint is hit View local and global variables, registers, cache, and system state Stop all threads and processor on all cores Permits examination of variables, register, cache, etc. Minimizes skid with synchronized stop of cores Wind River Systems, Inc.
15 Addressing Challenges with Wind River Workbench, On-Chip Debugging Edition Full-Featured Debugger for Multicore Device Software Development Common environment for multicore Hardware bring-up Platform development Application development Multicore debugging methods JTAG on-chip device debugging Workbench debugging via target agent Debugging up to 16 cores simultaneously Architecture flexibility for multicore Target OS including VxWorks, Wind River Linux, and others Wide range of target processor support Wind River On-Chip Debugging Wind River ICE Wind River Systems, Inc.
16 Wind River ICE 2 JTAG server debugs multiple devices on same scan chain Debug up to 16 devices simultaneously, connects to 128 cores Start all, stop all, and correlated multicore breakpoints Synchronize commands to multiple cores simultaneously Responsive and fast interface JTAG accelerator maximizes JTAG interface bandwidth Fast response with target system LAN Target Firmware 1 Target Firmware 2 Target Firmware 3 Target Firmware 4 JTAG Server JTAG Accelerator JTAG Connection Hardware Design Wind River Systems, Inc.
17 Workbench On-Chip Debugging Eclipse-based Single interface Built for multicore Centralized debugging Project-oriented Simplified development Scalable, robust Visualized multicore operation Wind River Systems, Inc.
18 System Viewer for Multicore Processors Synchronized Timestamping Tasks Running in Parallel Wind River Systems, Inc.
19 VxWorks SMP Debug Support On-chip debugging support For latest VxWorks 6.6 with SMP Wind River Workbench, On-Chip Debugging Edition 3.0 Breakpoint setting Coordinated across all cores Triggered regardless of which core hits the breakpoint Run control Supports all, e.g., single step, step into, step out of, etc. Moves from core to core, when thread is rescheduled Flexible system configuration SMP across all cores SMP on a subset of cores Multiple SMP instances, each on a subset of cores Wind River Systems, Inc.
20 System Mode Debugging Problem Multiple threads accessing a shared resource, e.g., a global variable Synchronized threads to access only one at a time Incorrect use, lack of use leading to problems that are some of the most difficult issues to find and fix in programming Process 1 Thread A Thread B Process 2 Thread C Thread D Wind River on-chip debugging Ability to stop all cores in system Ability to see what is running in other core(s) at time of problem Agent-based debug solutions unable to stop the system SMP OS Core 1 Core Wind River Systems, Inc.
21 Remote Debugging Breakpoint Hit on Core 1 Network Wind River ICE 2 Target Remote User Breakpoint Hit on Core 1 Better core synchronization for accurate visibility and operability Other cores stopped in short time when breakpoint hit on core 1 Closer synchronization of cores resulting in less skid Ability to see what is occurring on each core at a point in time Wind River Systems, Inc.
22 Multiple Context Debugging Simultaneous debugging Multiple targets, boards Multiple cores, processors Multiple processes, tasks, threads Source, register, and stack back-trace views in each debug context On-chip debugging with Wind River ICE 2 One scan chain, one ICE, multiple devices Start all, stop all, and multicore breakpoints with system mode debug Flexible breakpoint capabilities Hardware breakpoint support Thread qualified breakpoints Developer Host Debugger TCP Network Core 0 Debug Proxy TIPC Shared Memory Core 1 Debug Agent Wind River Systems, Inc.
23 Bay N etworks Bay N etworks Bay N etworks Multiboard Debug Scenario Debugging Scenario One Workbench instance One target manager Three concurrent connections Two target OSes Three different target processors Three different device software applications Multiple Contexts Processor, process, or thread Each context with a set of views Source Stack Registers Processes/Threads Qualify breakpoints on a process or specific thread Stop the entire process or an individual thread OA&M Card Linux-based Shelf Controller VxWorks-based Line Card ThreadX-based No Ethernet for debug Wind River Solution Benefits Single Eclipse-based user interface for debug Works across a variety of target systems, processors, and boards Wind River Systems, Inc.
24 Benefits of Wind River On-Chip Debugging Find root cause with system mode debugging Breakpoint stops entire processor Avoids skid with other running cores Identify bugs faster Clearly see the order of instruction execution on all cores Find problems quickly Work with simpler, intuitive Eclipse-based user interface One window for viewing activity on all cores Clearly identified and color-coded Speed development with remote debugging Around-the-clock-access collaborative debugging Instantaneous response time with JTAG server Wind River Systems, Inc.
25 Wind River Multiprocessing Leadership Wind River Workbench Market-Specific Middleware Integrated Horizontal Middleware VxWorks Linux Integrated Partner Hardware Broadest range of technology Operating system choice Multiprocessing architecture choice Multicore-enabled networking Interprocessor communication Debug, analysis, and diagnostics Broad processor and board support Most complete solution Extensive partner ecosystem Professional services capability Most reliable corporate partner Proven experience/industry leadership Worldwide support capability Participation in standards Large, stable, financially secure Wind River Systems, Inc.
26 Demo Block Diagram Ethernet JTAG Connection On-Chip Debugging Wind River ICE 2 MPC8572 Board Wind River Systems, Inc.
27 Wind River Systems, Inc.
Software Development Using Full System Simulation with Freescale QorIQ Communications Processors
Patrick Keliher, Simics Field Application Engineer Software Development Using Full System Simulation with Freescale QorIQ Communications Processors 1 2013 Wind River. All Rights Reserved. Agenda Introduction
More information10 Steps to Virtualization
AN INTEL COMPANY 10 Steps to Virtualization WHEN IT MATTERS, IT RUNS ON WIND RIVER EXECUTIVE SUMMARY Virtualization the creation of multiple virtual machines (VMs) on a single piece of hardware, where
More informationMulticore Challenges and Choices: Deciding Which Solution Is Right for You
Multicore Challenges and Choices: Deciding Which Solution Is Right for You Tomas Evensen Chief Technology Officer, Wind River Table of Contents Executive Summary... 1 Business and Technology Trends...
More informationUsing a Hypervisor to Manage Multi-OS Systems Cory Bialowas, Product Manager
Using a Hypervisor to Manage Multi-OS Systems Cory Bialowas, Product Manager cory.bialowas@windriver.com Trends, Disruptions and Opportunity Wasn t life simple? Single-OS: SMP OS OS CPU Single Core Virtualization
More informationOn-Chip Debugging of Multicore Systems
Nov 1, 2008 On-Chip Debugging of Multicore Systems PN115 Jeffrey Ho AP Technical Marketing, Networking Systems Division of Freescale Semiconductor, Inc. All other product or service names are the property
More informationRTOS, Linux & Virtualization Wind River Systems, Inc.
taeyong.kim@windriver.com RTOS, Linux & Virtualization 2008 Wind River Systems, Inc. Simple Board Simple Code 2 2008 Wind River Systems, Inc. start: /* disable interrupts in CPU and switch to SVC32 mode
More informationMulti-core microcontroller design with Cortex-M processors and CoreSight SoC
Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Joseph Yiu, ARM Ian Johnson, ARM January 2013 Abstract: While the majority of Cortex -M processor-based microcontrollers are
More informationUsing Industry Standards to Exploit the Advantages and Resolve the Challenges of Multicore Technology
Using Industry Standards to Exploit the Advantages and Resolve the Challenges of Multicore Technology September 19, 2007 Markus Levy, EEMBC and Multicore Association Enabling the Multicore Ecosystem Multicore
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 Lecture 2 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 2 What is an Operating System? What is
More informationOperating Systems Overview. Chapter 2
Operating Systems Overview Chapter 2 Operating System A program that controls the execution of application programs An interface between the user and hardware Masks the details of the hardware Layers and
More informationOperating Systems, Fall Lecture 9, Tiina Niklander 1
Multiprocessor Systems Multiple processor systems Ch 8.1 8.3 1 Continuous need for faster computers Multiprocessors: shared memory model, access time nanosec (ns) Multicomputers: message passing multiprocessor,
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 2 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 2 System I/O System I/O (Chap 13) Central
More informationSimulation Based Analysis and Debug of Heterogeneous Platforms
Simulation Based Analysis and Debug of Heterogeneous Platforms Design Automation Conference, Session 60 4 June 2014 Simon Davidmann, Imperas Page 1 Agenda Programming on heterogeneous platforms Hardware-based
More informationMultiprocessor Systems Continuous need for faster computers Multiprocessors: shared memory model, access time nanosec (ns) Multicomputers: message pas
Multiple processor systems 1 Multiprocessor Systems Continuous need for faster computers Multiprocessors: shared memory model, access time nanosec (ns) Multicomputers: message passing multiprocessor, access
More informationFPGA Adaptive Software Debug and Performance Analysis
white paper Intel Adaptive Software Debug and Performance Analysis Authors Javier Orensanz Director of Product Management, System Design Division ARM Stefano Zammattio Product Manager Intel Corporation
More informationTile Processor (TILEPro64)
Tile Processor Case Study of Contemporary Multicore Fall 2010 Agarwal 6.173 1 Tile Processor (TILEPro64) Performance # of cores On-chip cache (MB) Cache coherency Operations (16/32-bit BOPS) On chip bandwidth
More informationMotivation. Threads. Multithreaded Server Architecture. Thread of execution. Chapter 4
Motivation Threads Chapter 4 Most modern applications are multithreaded Threads run within application Multiple tasks with the application can be implemented by separate Update display Fetch data Spell
More informationProfiling and Debugging OpenCL Applications with ARM Development Tools. October 2014
Profiling and Debugging OpenCL Applications with ARM Development Tools October 2014 1 Agenda 1. Introduction to GPU Compute 2. ARM Development Solutions 3. Mali GPU Architecture 4. Using ARM DS-5 Streamline
More informationWind River. All Rights Reserved.
1 Using Simulation to Develop and Maintain a System of Connected Devices Didier Poirot Simics Technical Account Manager THE CHALLENGES OF DEVELOPING CONNECTED ELECTRONIC SYSTEMS 3 Mobile Networks Update
More informationChapter 2 Operating System Overview
True / False Questions: Chapter 2 Operating System Overview 1. T / F An operating system controls the execution of applications and acts as an interface between applications and the computer hardware.
More informationCPSC 341 OS & Networks. Introduction. Dr. Yingwu Zhu
CPSC 341 OS & Networks Introduction Dr. Yingwu Zhu What to learn? Concepts Processes, threads, multi-processing, multithreading, synchronization, deadlocks, CPU scheduling, networks, security Practice:
More informationMarkets Demanding More Performance
The Tile Processor Architecture: Embedded Multicore for Networking and Digital Multimedia Tilera Corporation August 20 th 2007 Hotchips 2007 Markets Demanding More Performance Networking market - Demand
More informationARM Processors for Embedded Applications
ARM Processors for Embedded Applications Roadmap for ARM Processors ARM Architecture Basics ARM Families AMBA Architecture 1 Current ARM Core Families ARM7: Hard cores and Soft cores Cache with MPU or
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 informationSoftware Quality is Directly Proportional to Simulation Speed
Software Quality is Directly Proportional to Simulation Speed CDNLive! 11 March 2014 Larry Lapides Page 1 Software Quality is Directly Proportional to Test Speed Intuitively obvious (so my presentation
More informationOperating Systems : Overview
Operating Systems : Overview Bina Ramamurthy CSE421 8/29/2006 B.Ramamurthy 1 Topics for discussion What will you learn in this course? (goals) What is an Operating System (OS)? Evolution of OS Important
More informationComputer System Overview
Computer System Overview Introduction A computer system consists of hardware system programs application programs 2 Operating System Provides a set of services to system users (collection of service programs)
More informationNon-uniform memory access machine or (NUMA) is a system where the memory access time to any region of memory is not the same for all processors.
CS 320 Ch. 17 Parallel Processing Multiple Processor Organization The author makes the statement: "Processors execute programs by executing machine instructions in a sequence one at a time." He also says
More informationParallel Simulation Accelerates Embedded Software Development, Debug and Test
Parallel Simulation Accelerates Embedded Software Development, Debug and Test Larry Lapides Imperas Software Ltd. larryl@imperas.com Page 1 Modern SoCs Have Many Concurrent Processing Elements SMP cores
More informationSoftware Design Challenges for heterogenic SOC's
Software Design Challenges for heterogenic SOC's René Janssen, Product manager Logic Technology 1 Agenda 1. Advantages of heterogenous devices 2. How to manage inter-processor communication 3. Example
More informationFlash: an efficient and portable web server
Flash: an efficient and portable web server High Level Ideas Server performance has several dimensions Lots of different choices on how to express and effect concurrency in a program Paper argues that
More informationGedae cwcembedded.com. The CHAMP-AV6 VPX-REDI. Digital Signal Processing Card. Maximizing Performance with Minimal Porting Effort
Technology White Paper The CHAMP-AV6 VPX-REDI Digital Signal Processing Card Maximizing Performance with Minimal Porting Effort Introduction The Curtiss-Wright Controls Embedded Computing CHAMP-AV6 is
More informationParallelism Marco Serafini
Parallelism Marco Serafini COMPSCI 590S Lecture 3 Announcements Reviews First paper posted on website Review due by this Wednesday 11 PM (hard deadline) Data Science Career Mixer (save the date!) November
More informationFPQ6 - MPC8313E implementation
Formation MPC8313E implementation: This course covers PowerQUICC II Pro MPC8313 - Processeurs PowerPC: NXP Power CPUs FPQ6 - MPC8313E implementation This course covers PowerQUICC II Pro MPC8313 Objectives
More informationComputer Architecture Crash course
Computer Architecture Crash course Frédéric Haziza Department of Computer Systems Uppsala University Summer 2008 Conclusions The multicore era is already here cost of parallelism is dropping
More informationChapter 07: Instruction Level Parallelism VLIW, Vector, Array and Multithreaded Processors. Lesson 06: Multithreaded Processors
Chapter 07: Instruction Level Parallelism VLIW, Vector, Array and Multithreaded Processors Lesson 06: Multithreaded Processors Objective To learn meaning of thread To understand multithreaded processors,
More informationStreaming mode snapshot mode Faster Troubleshooting Higher Quality Better Performance Control System Tuning Other Benefits
Tracealyzer provides an unprecedented level of insight into the runtime world of your embedded software system. Tracealyzer allows you to solve complex software problems in a fraction of the time otherwise
More informationIntroduction to Operating Systems. Chapter Chapter
Introduction to Operating Systems Chapter 1 1.3 Chapter 1.5 1.9 Learning Outcomes High-level understand what is an operating system and the role it plays A high-level understanding of the structure of
More informationMultiprocessing and Scalability. A.R. Hurson Computer Science and Engineering The Pennsylvania State University
A.R. Hurson Computer Science and Engineering The Pennsylvania State University 1 Large-scale multiprocessor systems have long held the promise of substantially higher performance than traditional uniprocessor
More informationOperating Systems Course 2 nd semester 2016/2017 Chapter 1: Introduction
Operating Systems Course 2 nd semester 2016/2017 Chapter 1: Introduction Lecturer: Eng. Mohamed B. Abubaker Note: Adapted from the resources of textbox Operating System Concepts, 9 th edition What is an
More informationOperating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System
Operating System Operating System Overview Chapter 2 A program that controls the execution of application programs An interface between applications and hardware 1 2 Operating System Objectives Layers
More informationOperating System Overview. Operating System
Operating System Overview Chapter 2 1 Operating System A program that controls the execution of application programs An interface between applications and hardware 2 1 Operating System Objectives Convenience
More informationT1042-based Single Board Computer
T1042-based Single Board Computer High Performance/Low Power DO-254 Certifiable SBC IP Features and Benefits Part of the COTS-D family of safety certifiable modules Single conduction-cooled rugged module
More informationSupport for RISC-V. Lauterbach GmbH. Bob Kupyn Lauterbach Markus Goehrle - Lauterbach GmbH
Company Lauterbach Profile Debug Support for RISC-V Lauterbach GmbH Bob Kupyn Lauterbach USA @2016 Markus Goehrle - Lauterbach GmbH Leading Manufacturer of Microprocessor Development Tools Founded in 1979
More informationA Predictable RTOS. Mantis Cheng Department of Computer Science University of Victoria
A Predictable RTOS Mantis Cheng Department of Computer Science University of Victoria Outline I. Analysis of Timeliness Requirements II. Analysis of IO Requirements III. Time in Scheduling IV. IO in Scheduling
More informationIntel System Studio 2014 Overview
Intel System Studio 2014 Overview What you will learn from this slide deck High level overview of each component for Intel System Studio, along with how they address these development environments System
More informationTen Reasons to Optimize a Processor
By Neil Robinson SoC designs today require application-specific logic that meets exacting design requirements, yet is flexible enough to adjust to evolving industry standards. Optimizing your processor
More informationLabVIEW Programming for a Multicore Environment. Stefan Kreuzer Applications Engineer National Instruments
LabVIEW Programming for a Multicore Environment Stefan Kreuzer Applications Engineer National Instruments Agenda Overview of LabVIEW Multithreading Parallel Programming Techniques Real-Time Considerations
More informationCS 571 Operating Systems. Midterm Review. Angelos Stavrou, George Mason University
CS 571 Operating Systems Midterm Review Angelos Stavrou, George Mason University Class Midterm: Grading 2 Grading Midterm: 25% Theory Part 60% (1h 30m) Programming Part 40% (1h) Theory Part (Closed Books):
More informationIntroduction. TDDI04, K. Arvidsson, IDA, Linköpings universitet Contents. What is an Operating System (OS)?
TDDI04 Concurrent Programming, Operating Systems, and Real-time Operating Systems Introduction Copyright Notice: The lecture notes are mainly based on Silberschatz s, Galvin s and Gagne s book ( Operating
More informationIntroduction to Operating. Chapter Chapter
Introduction to Operating Systems Chapter 1 1.3 Chapter 1.5 1.9 Learning Outcomes High-level understand what is an operating system and the role it plays A high-level understanding of the structure of
More informationExample Networks on chip Freescale: MPC Telematics chip
Lecture 22: Interconnects & I/O Administration Take QUIZ 16 over P&H 6.6-10, 6.12-14 before 11:59pm Project: Cache Simulator, Due April 29, 2010 NEW OFFICE HOUR TIME: Tuesday 1-2, McKinley Exams in ACES
More informationChapter 2 Computer-System Structure
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 informationNexus Instrumentation architectures and the new Debug Specification
Nexus 5001 - Instrumentation architectures and the new Debug Specification Neal Stollon, HDL Dynamics Chairman, Nexus 5001 Forum neals@hdldynamics.com nstollon@nexus5001.org HDL Dynamics SoC Solutions
More informationADVANCED trouble-shooting of real-time systems. Bernd Hufmann, Ericsson
ADVANCED trouble-shooting of real-time systems Bernd Hufmann, Ericsson AGENDA 1 Introduction 2 3 Timing Analysis 4 References 5 Q&A Trace Compass Overview ADVANCED trouble-shooting of critical real-time
More informationCPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou ( Zhejiang University
Operating Systems (Fall/Winter 2018) CPU Scheduling Yajin Zhou (http://yajin.org) Zhejiang University Acknowledgement: some pages are based on the slides from Zhi Wang(fsu). Review Motivation to use threads
More informationSimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems
University of Toronto FPGA Seminar SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems Ruediger Willenberg and Paul Chow High-Performance Reconfigurable Computing Group University of Toronto
More informationSimXMD: Simulation-based HW/SW Co-Debugging for FPGA Embedded Systems
FPGAworld 2014 SimXMD: Simulation-based HW/SW Co-Debugging for FPGA Embedded Systems Ruediger Willenberg and Paul Chow High-Performance Reconfigurable Computing Group University of Toronto September 9,
More informationCase Study: Using System Tracing to Improve Packet Forwarding Performance
Case Study: Using System Tracing to Improve Packet Forwarding Performance Sebastien Marineau-Mes, Senior Networking Architect, sebastien@qnx.com Abstract Symmetric multiprocessing (SMP) can offer enormous
More informationCSE 120. Overview. July 27, Day 8 Input/Output. Instructor: Neil Rhodes. Hardware. Hardware. Hardware
CSE 120 July 27, 2006 Day 8 Input/Output Instructor: Neil Rhodes How hardware works Operating Systems Layer What the kernel does API What the programmer does Overview 2 Kinds Block devices: read/write
More informationCarrier Grade Linux and VxWorks
Carrier Grade Linux and VxWorks A Complete Solution for Next Generation Telecom Systems based on ATCA and AMC Hardware Vinay Panchdhari Regional FAE Manager - Asia Pacific Wind River Systems Telecom Market
More informationCSE Opera+ng System Principles
CSE 30341 Opera+ng System Principles Lecture 2 Introduc5on Con5nued Recap Last Lecture What is an opera+ng system & kernel? What is an interrupt? CSE 30341 Opera+ng System Principles 2 1 OS - Kernel CSE
More informationMission-Critical Space Software For Multi- Core Processors
-UNCLASSIFIED- Mission-Critical Space Software For Multi- Core Processors Steve Crago USC/ISI-East November 6, 2009 FSW-09 Pasadena, CA -UNCLASSIFIED- Outline Introduction Mission Critical Software Summary
More informationCIS 21 Final Study Guide. Final covers ch. 1-20, except for 17. Need to know:
CIS 21 Final Study Guide Final covers ch. 1-20, except for 17. Need to know: I. Amdahl's Law II. Moore s Law III. Processes and Threading A. What is a process? B. What is a thread? C. Modes (kernel mode,
More informationVxWorks Real-Time Kernel Connectivity Andrew Piñeiro CNT 4104 Janusz Zalewski FGCU December 9, 2011
VxWorks Real-Time Kernel Connectivity Andrew Piñeiro CNT 4104 Janusz Zalewski FGCU December 9, 2011 1. Introduction VxWorks is a proprietary real-time operating system (RTOS) made and sold by Wind River
More informationIntroduction to Operating Systems. Chapter Chapter
Introduction to Operating Systems Chapter 1 1.3 Chapter 1.5 1.9 Learning Outcomes High-level understand what is an operating system and the role it plays A high-level understanding of the structure of
More informationStefan Koestner on behalf of the LHCb Online Group ( IEEE - Nuclear Science Symposium San Diego, Oct.
Stefan Koestner on behalf of the LHCb Online Group (email: Stefan.Koestner@cern.ch) IEEE - Nuclear Science Symposium San Diego, Oct. 31 st 2006 Dedicated to B-physics : single arm forward spectrometer
More informationOS impact on performance
PhD student CEA, DAM, DIF, F-91297, Arpajon, France Advisor : William Jalby CEA supervisor : Marc Pérache 1 Plan Remind goal of OS Reproducibility Conclusion 2 OS : between applications and hardware 3
More informationFCQ2 - P2020 QorIQ implementation
Formation P2020 QorIQ implementation: This course covers NXP QorIQ P2010 and P2020 - Processeurs PowerPC: NXP Power CPUs FCQ2 - P2020 QorIQ implementation This course covers NXP QorIQ P2010 and P2020 Objectives
More informationPerformance Analysis on SMP and Non-SMP for Multicore Technology
June, 2010 Performance Analysis on SMP and Non-SMP for Multicore Technology FTF-ENT-F0697 TieFei Zang Principle Software Engineer Introduction Multicore in communication processor technology Dual cores
More informationSystem Wide Tracing User Need
System Wide Tracing User Need dominique toupin ericsson com April 2010 About me Developer Tool Manager at Ericsson, helping Ericsson sites to develop better software efficiently Background
More informationARM TrustZone for ARMv8-M for software engineers
ARM TrustZone for ARMv8-M for software engineers Ashok Bhat Product Manager, HPC and Server tools ARM Tech Symposia India December 7th 2016 The need for security Communication protection Cryptography,
More informationMisc. Third Generation Batch Multiprogramming. Fourth Generation Time Sharing. Last Time Evolution of OSs
Third Generation Batch Multiprogramming Misc. Problem: but I/O still expensive; can happen in middle of job Idea: have a pool of ready jobs in memory, switch to one when another needs I/O When one job
More informationAn Intelligent NIC Design Xin Song
2nd International Conference on Advances in Mechanical Engineering and Industrial Informatics (AMEII 2016) An Intelligent NIC Design Xin Song School of Electronic and Information Engineering Tianjin Vocational
More informationMultiprocessors and Thread Level Parallelism Chapter 4, Appendix H CS448. The Greed for Speed
Multiprocessors and Thread Level Parallelism Chapter 4, Appendix H CS448 1 The Greed for Speed Two general approaches to making computers faster Faster uniprocessor All the techniques we ve been looking
More informationNEWS 2018 CONTENTS SOURCE CODE COVERAGE WORKS WITHOUT CODE INSTRUMENTATION. English Edition
NEWS 2018 English Edition WORKS WITHOUT CODE INSTRUMENTATION SOURCE CODE COVERAGE CONTENTS Trace-based MCDC Coverage Code Coverage Live Tracing via PCI Express Transition Wind River to TRACE32 RISC-V Debugger
More informationOperating System Overview. Chapter 2
Operating System Overview Chapter 2 1 Operating System A program that controls the execution of application programs An interface between applications and hardware 2 Operating System Objectives Convenience
More informationChapter 5. Multiprocessors and Thread-Level Parallelism
Computer Architecture A Quantitative Approach, Fifth Edition Chapter 5 Multiprocessors and Thread-Level Parallelism 1 Introduction Thread-Level parallelism Have multiple program counters Uses MIMD model
More informationTask Partitioning and Placement in Multicore Microcontrollers. David Lacey 24 th September 2012
Task Partitioning and Placement in Multicore Microcontrollers David Lacey 24 th September 2012 Multicore Microcontrollers Many embedded systems are now multicore Maybe lots of cores: XMOS devices have
More informationIntroduction to Parallel Performance Engineering
Introduction to Parallel Performance Engineering Markus Geimer, Brian Wylie Jülich Supercomputing Centre (with content used with permission from tutorials by Bernd Mohr/JSC and Luiz DeRose/Cray) Performance:
More informationA unified multicore programming model
A unified multicore programming model Simplifying multicore migration By Sven Brehmer Abstract There are a number of different multicore architectures and programming models available, making it challenging
More informationFrequently Asked Questions about Real-Time
FAQ: RTX64 2014 Frequently Asked Questions about Real-Time What is Real-Time? Real-time describes an application which requires a response to an event within some small upper bounded time frame. Typically,
More informationMulticore and Multiprocessor Systems: Part I
Chapter 3 Multicore and Multiprocessor Systems: Part I Max Planck Institute Magdeburg Jens Saak, Scientific Computing II 44/342 Symmetric Multiprocessing Definition (Symmetric Multiprocessing (SMP)) he
More informationMultiprocessors & Thread Level Parallelism
Multiprocessors & Thread Level Parallelism COE 403 Computer Architecture Prof. Muhamed Mudawar Computer Engineering Department King Fahd University of Petroleum and Minerals Presentation Outline Introduction
More informationMigrating RC3233x Software to the RC32434/5 Device
Migrating RC3233x Software to the RC32434/5 Device Application Note AN-445 Introduction By Harpinder Singh and Nebojsa Bjegovic Operating system kernels, board support packages, and other processor-aware
More informationSpring CS 170 Exercise Set 1 (Updated with Part III)
Spring 2015. CS 170 Exercise Set 1 (Updated with Part III) Due on May 5 Tuesday 12:30pm. Submit to the CS170 homework box or bring to the classroom. Additional problems will be added as we cover more topics
More informationMaster Program (Laurea Magistrale) in Computer Science and Networking. High Performance Computing Systems and Enabling Platforms.
Master Program (Laurea Magistrale) in Computer Science and Networking High Performance Computing Systems and Enabling Platforms Marco Vanneschi Multithreading Contents Main features of explicit multithreading
More informationp5 520 server Robust entry system designed for the on demand world Highlights
Robust entry system designed for the on demand world IBM p5 520 server _` p5 520 rack system with I/O drawer Highlights Innovative, powerful, affordable, open and adaptable UNIX and Linux environment system
More informationSoftware Verification for Low Power, Safety Critical Systems
Software Verification for Low Power, Safety Critical Systems 29 Nov 2016, Simon Davidmann info@imperas.com, Imperas Software Ltd. Page 1 Software Verification for Low Power, Safety Critical Systems Page
More informationHardware and Software solutions for scaling highly threaded processors. Denis Sheahan Distinguished Engineer Sun Microsystems Inc.
Hardware and Software solutions for scaling highly threaded processors Denis Sheahan Distinguished Engineer Sun Microsystems Inc. Agenda Chip Multi-threaded concepts Lessons learned from 6 years of CMT
More informationCUDA Development Using NVIDIA Nsight, Eclipse Edition. David Goodwin
CUDA Development Using NVIDIA Nsight, Eclipse Edition David Goodwin NVIDIA Nsight Eclipse Edition CUDA Integrated Development Environment Project Management Edit Build Debug Profile SC'12 2 Powered By
More informationSystem Level Instrumentation using the Nexus specification
System Level Instrumentation using the Nexus 5001-2012 specification Neal Stollon, HDL Dynamics Chairman, IEEE 5001 Nexus Forum neals@hdldynamics.com nstollon@nexus5001.org HDL Dynamics SoC Solutions System
More informationPRACE Autumn School Basic Programming Models
PRACE Autumn School 2010 Basic Programming Models Basic Programming Models - Outline Introduction Key concepts Architectures Programming models Programming languages Compilers Operating system & libraries
More informationComputer-System Organization (cont.)
Computer-System Organization (cont.) Interrupt time line for a single process doing output. Interrupts are an important part of a computer architecture. Each computer design has its own interrupt mechanism,
More informationChapter 2: Computer-System Structures. Hmm this looks like a Computer System?
Chapter 2: Computer-System Structures Lab 1 is available online Last lecture: why study operating systems? Purpose of this lecture: general knowledge of the structure of a computer system and understanding
More informationChapter 1: Distributed Systems: What is a distributed system? Fall 2013
Chapter 1: Distributed Systems: What is a distributed system? Fall 2013 Course Goals and Content n Distributed systems and their: n Basic concepts n Main issues, problems, and solutions n Structured and
More informationUniprocessor Computer Architecture Example: Cray T3E
Chapter 2: Computer-System Structures MP Example: Intel Pentium Pro Quad Lab 1 is available online Last lecture: why study operating systems? Purpose of this lecture: general knowledge of the structure
More informationTECHNOLOGY BRIEF. Compaq 8-Way Multiprocessing Architecture EXECUTIVE OVERVIEW CONTENTS
TECHNOLOGY BRIEF March 1999 Compaq Computer Corporation ISSD Technology Communications CONTENTS Executive Overview1 Notice2 Introduction 3 8-Way Architecture Overview 3 Processor and I/O Bus Design 4 Processor
More informationChapter 4 Threads, SMP, and
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 4 Threads, SMP, and Microkernels Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Roadmap Threads: Resource ownership
More informationLecture 3: Intro to parallel machines and models
Lecture 3: Intro to parallel machines and models David Bindel 1 Sep 2011 Logistics Remember: http://www.cs.cornell.edu/~bindel/class/cs5220-f11/ http://www.piazza.com/cornell/cs5220 Note: the entire class
More information