Sources of Error in Full-System Simulation
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Imperas Tools Overview
Imperas Tools Overview This document provides an overview of the OVP and Imperas tools environment. Imperas Software Limited Imperas Buildings, North Weston, Thame, Oxfordshire, OX9 2HA, UK [email protected] Author: Imperas Software Limited Version: 2.0.2 Filename: Imperas_Tools_Overview.doc Project: Imperas Tools Overview Last Saved: January 22, 2021 Keywords: Imperas Tools Overview © 2021 Imperas Software Limited www.OVPworld.org Page 1 of 20 Imperas Tools Overview Copyright Notice Copyright © 2021 Imperas Software Limited All rights reserved. This software and documentation contain information that is the property of Imperas Software Limited. The software and documentation are furnished under a license agreement and may be used or copied only in accordance with the terms of the license agreement. No part of the software and documentation may be reproduced, transmitted, or translated, in any form or by any means, electronic, mechanical, manual, optical, or otherwise, without prior written permission of Imperas Software Limited, or as expressly provided by the license agreement. Right to Copy Documentation The license agreement with Imperas permits licensee to make copies of the documentation for its internal use only. Each copy shall include all copyrights, trademarks, service marks, and proprietary rights notices, if any. Destination Control Statement All technical data contained in this publication is subject to the export control laws of the United States of America. Disclosure to nationals of other countries contrary to United States law is prohibited. It is the reader’s responsibility to determine the applicable regulations and to comply with them. Disclaimer IMPERAS SOFTWARE LIMITED., AND ITS LICENSORS MAKE NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -
Ibex Documentation Release 0.1.Dev50+G873e228.D20211001
Ibex Documentation Release 0.1.dev50+g873e228.d20211001 lowRISC Oct 01, 2021 CONTENTS 1 Introduction to Ibex 3 1.1 Standards Compliance..........................................3 1.2 Synthesis Targets.............................................4 1.3 Licensing.................................................4 2 Ibex User Guide 5 2.1 System and Tool Requirements.....................................5 2.2 Getting Started with Ibex.........................................6 2.3 Core Integration.............................................6 2.4 Examples.................................................9 3 Ibex Reference Guide 11 3.1 Pipeline Details.............................................. 11 3.2 Instruction Cache............................................. 13 3.3 Instruction Fetch............................................. 17 3.4 Instruction Decode and Execute..................................... 19 3.5 Load-Store Unit............................................. 22 3.6 Register File............................................... 24 3.7 Control and Status Registers....................................... 27 3.8 Performance Counters.......................................... 36 3.9 Exceptions and Interrupts........................................ 38 3.10 Physical Memory Protection (PMP)................................... 41 3.11 Security Features............................................. 42 3.12 Debug Support.............................................. 43 3.13 Tracer................................................... 44 3.14 Verification............................................... -
OVP Debugging Applications with Eclipse User Guide
OVP Debugging Applications with Eclipse User Guide Imperas Software Limited Imperas Buildings, North Weston, Thame, Oxfordshire, OX9 2HA, UK [email protected] Author: Imperas Software Limited Version: 1.3 Filename: OVPsim_Debugging_Applications_with_Eclipse_User_Guide.doc Project: OVP Debugging Applications with Eclipse User Guide Last Saved: Monday, 13 January 2020 Keywords: © 2020 Imperas Software Limited www.OVPworld.org Page 1 of 39 OVP Debugging Applications with Eclipse User Guide Copyright Notice Copyright © 2020 Imperas Software Limited All rights reserved. This software and documentation contain information that is the property of Imperas Software Limited. The software and documentation are furnished under a license agreement and may be used or copied only in accordance with the terms of the license agreement. No part of the software and documentation may be reproduced, transmitted, or translated, in any form or by any means, electronic, mechanical, manual, optical, or otherwise, without prior written permission of Imperas Software Limited, or as expressly provided by the license agreement. Right to Copy Documentation The license agreement with Imperas permits licensee to make copies of the documentation for its internal use only. Each copy shall include all copyrights, trademarks, service marks, and proprietary rights notices, if any. Destination Control Statement All technical data contained in this publication is subject to the export control laws of the United States of America. Disclosure to nationals of other countries contrary to United States law is prohibited. It is the reader’s responsibility to determine the applicable regulations and to comply with them. Disclaimer IMPERAS SOFTWARE LIMITED, AND ITS LICENSORS MAKE NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -
Gem5, INTEROPERABILITY, and IMPROVING SIMULATOR METHODOLOGY
gem5, INTEROPERABILITY, AND IMPROVING SIMULATOR METHODOLOGY Jason Lowe-Power [email protected] @jlowepower Outline What is gem5? Recent gem5 features gem5’s future My vision Big news Features coming soon Created at Michigan by students of Steve Reinhardt, principally Nate Binkert. “A tool for simulating systems” 3 4 Created at Michigan by students of Steve Reinhardt, principally Nate Binkert. “A tool for simulating systems” Created at Wisconsin by students of Mark Hill and David Wood. Detailed memory system 5 6 Today today gem5 2011 paper cited over 3000 times 15-20% of ISCA/MICRO/HPCA papers use gem5 Thriving community project Average of 70-ish commits per month About 100 unique contributors over last 2 years 7 Today today Over 400 “models” Over 4000 parameters! 3 timing-based CPU models (simple, in order, out of order) 8 ISAs (ARM, RISC-V, x86, Alpha, Power, SPARC, MIPS, GCN3) 12 memory models (DDR3, DDR4, HBM, HMC, etc.) 42 devices (PCI, Arm platform, x86 platform, storage) AMD GPGPU 12 cache coherence protocols Network on chip (Garnet) 8 Today Programmatic configuration 9 Today Programmatic configuration 10 11 Today today Support for complex ML stacks See https://github.com/KyleRoarty/gem5_docker/ Support for ARM SVE instructions Integration with other simulators DRAMSim2 SST DSENT SystemC McPAT GPGPU-Sim 12 Simulator integration Choose a driver Choose an interface 13 gem5 + SST Multiple implementations SST used as driver for gem5 But two event queues Interface is memory requests Separate setup for each simulator 14 gem5 + SystemC -
Lost in Abstraction: Pitfalls of Analyzing Gpus at the Intermediate Language Level
2018 IEEE International Symposium on High Performance Computer Architecture Lost in Abstraction: Pitfalls of Analyzing GPUs at the Intermediate Language Level Anthony Gutierrez, Bradford M. Beckmann, Alexandru Dutu, Joseph Gross, John Kalamatianos, Onur Kayiran, Michael LeBeane, Matthew Poremba, Brandon Potter, Sooraj Puthoor, Matthew D. Sinclair, Mark Wyse, Jieming Yin, Xianwei Zhang, Akshay Jain†, Timothy G. Rogers† AMD Research, Advanced Micro Devices, Inc. †School of Electrical and Computer Engineering, Purdue University {anthony.gutierrez, brad.beckmann, alexandru.dutu, joe.gross, john.kalamatianos, onur.kayiran, michael.lebeane, matthew.poremba, brandon.potter, sooraj.puthoor, matthew.sinclair, mark.wyse, jieming.yin, xianwei.zhang}@amd.com {jain156, timrogers}@purdue.edu Abstract—Modern GPU frameworks use a two-phase handful of open-source simulators, such as GPGPU-Sim compilation approach. Kernels written in a high-level [11], gem5 [14], and Multi2Sim [35]. language are initially compiled to an implementation- Simulating a GPU is especially challenging because of agnostic intermediate language (IL), then finalized to the two-phase compilation flow typically used to generate the machine ISA only when the target GPU hardware GPU kernel binaries. To maintain portability between dif- is known. Most GPU microarchitecture simulators ferent generations of GPU hardware, GPU kernels are first available to academics execute IL instructions because compiled to an intermediate language (IL). Prior to launch- there is substantially less functional state associated ing a kernel, low-level software, such as the GPU driver or with the instructions, and in some situations, the ma- runtime, finalizes the IL into the machine instruction set chine ISA’s intellectual property may not be publicly architecture (ISA) representation that targets the GPU disclosed. -
Virtualized Hardware Environments for Supporting Digital I&C Verification
VIRTUALIZED HARDWARE ENVIRONMENTS FOR SUPPORTING DIGITAL I&C VERIFICATION Frederick E. Derenthal IV, Carl R. Elks, Tim Bakker, Mohammadbagher Fotouhi Department of Electrical and Computer Engineering, Virginia Commonwealth University (VCU) 601 West Main Street, Richmond, Virginia 23681 [email protected]; [email protected]; [email protected]; [email protected] ABSTRACT The technology of virtualized hardware testing platforms within the nuclear context in order to provide a framework for evaluating virtualized hardware/software approaches is discussed. To understand the applicability of virtualized hardware approaches, we have developed a virtual hardware model of an actual smart sensor using the Imperas product OVPsim development environment, as is seen in [1]. An evaluation of the modeling effort required to create the digital I&C smart sensor is provided, followed by an analysis and findings on the various tools in the OVPsim environment for supporting testing, evidence collecting, and analysis. The analyzed tools include traditional input/output testing, model-based testing, mutation testing, and fault injection techniques. Finally, the goal of this research effort is to analyze virtual hardware platforms and present findings to the nuclear community on the efficacy and viability of this technology as a complementary means to actual hardware-in-the-loop testing Factory Acceptance Testing for Nuclear Power Plant (NPP) digital I&C systems. Key Words: Virtual Hardware, Virtual Modeling, Verification, Validation 1 INTRODUCTION Much of the instrumentation and control (I&C) equipment in operating U.S. NPPs is based on very mature, primarily analog technology that is steadily trending toward obsolescence. The use of digital I&C systems for plant upgrades, particularly in NPP safety systems, has been slow primarily due to the fact that uncertainties, such as (e.g. -
OVP Guide to Using Processor Models
OVP Guide to Using Processor Models Model specific information for RISC-V RVB64I Imperas Software Limited Imperas Buildings, North Weston Thame, Oxfordshire, OX9 2HA, U.K. [email protected] Author Imperas Software Limited Version 20210408.0 Filename OVP Model Specific Information riscv RVB64I.pdf Created 5 May 2021 Status OVP Standard Release Imperas OVP Fast Processor Model Documentation for RISC-V RVB64I Copyright Notice Copyright (c) 2021 Imperas Software Limited. All rights reserved. This software and documentation contain information that is the property of Imperas Software Limited. The software and documentation are furnished under a license agreement and may be used or copied only in accordance with the terms of the license agreement. No part of the software and documentation may be reproduced, transmitted, or translated, in any form or by any means, electronic, mechanical, manual, optical, or otherwise, without prior written permission of Imperas Software Limited, or as expressly provided by the license agreement. Right to Copy Documentation The license agreement with Imperas permits licensee to make copies of the documentation for its internal use only. Each copy shall include all copyrights, trademarks, service marks, and proprietary rights notices, if any. Destination Control Statement All technical data contained in this publication is subject to the export control laws of the United States of America. Disclosure to nationals of other countries contrary to United States law is prohibited. It is the readers responsibility to determine the applicable regulations and to comply with them. Disclaimer IMPERAS SOFTWARE LIMITED, AND ITS LICENSORS MAKE NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -
Fast Virtual Prototyping for Embedded Computing Systems Design and Exploration Amir Charif, Gabriel Busnot, Rania Mameesh, Tanguy Sassolas, Nicolas Ventroux
Fast Virtual Prototyping for Embedded Computing Systems Design and Exploration Amir Charif, Gabriel Busnot, Rania Mameesh, Tanguy Sassolas, Nicolas Ventroux To cite this version: Amir Charif, Gabriel Busnot, Rania Mameesh, Tanguy Sassolas, Nicolas Ventroux. Fast Virtual Pro- totyping for Embedded Computing Systems Design and Exploration. RAPIDO2019 - 11th Workshop on Rapid Simulation and Performance Evaluation: Methods and Tools, Jan 2019, Valence, Spain. pp.1-8, 10.1145/3300189.3300192. hal-02023805 HAL Id: hal-02023805 https://hal.archives-ouvertes.fr/hal-02023805 Submitted on 18 Feb 2019 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Fast Virtual Prototyping for Embedded Computing Systems Design and Exploration Amir Charif, Gabriel Busnot, Rania Mameesh, Tanguy Sassolas and Nicolas Ventroux Computing and Design Environment Laboratory CEA, LIST Gif-sur-Yvette CEDEX, France [email protected] ABSTRACT 2.0 standard [1], which, in addition to offering interoper- Virtual Prototyping has been widely adopted as a cost- ability and reusability of SystemC models, provides several effective solution for early hardware and software co-validation. abstraction levels to cope with varying needs in accuracy and However, as systems grow in complexity and scale, both the speed. -
Imperas Platform User Guide
Imperas Virtual Platform Documentation for ghs-multi Imperas Guide to using Virtual Platforms Platform / Module Specific Information for renesas.ovpworld.org / ghs-multi Imperas Software Limited Imperas Buildings, North Weston Thame, Oxfordshire, OX9 2HA, U.K. [email protected]. Author Imperas Software Limited Version 20210408.0 Filename Imperas_Platform_User_Guide_ghs-multi.pdf Created 05 May 2021 Status OVP Standard Release Copyright (c) 2021 Imperas Software Limited www.imperas.com OVP License. Release 20210408.0 Page 1 of 14 Imperas Virtual Platform Documentation for ghs-multi Copyright Notice Copyright 2021 Imperas Software Limited. All rights reserved. This software and documentation contain information that is the property of Imperas Software Limited. The software and documentation are furnished under a license agreement and may be used or copied only in accordance with the terms of the license agreement. No part of the software and documentation may be reproduced, transmitted, or translated, in any form or by any means, electronic, mechanical, manual, optical, or otherwise, without prior written permission of Imperas Software Limited, or as expressly provided by the license agreement. Right to Copy Documentation The license agreement with Imperas permits licensee to make copies of the documentation for its internal use only. Each copy shall include all copyrights, trademarks, service marks, and proprietary rights notices, if any. Destination Control Statement All technical data contained in this publication is subject to the export control laws of the United States of America. Disclosure to nationals of other countries contrary to United States law is prohibited. It is the readers responsibility to determine the applicable regulations and to comply with them. -
SST + Gem5 = a Scalable Simulation Infrastructure for High Performance Computing
SST + gem5 = A Scalable Simulation Infrastructure for High Performance Computing Mingyu Hsieh Jie Meng Michael Levenhagen Sandia National Labs P.O.Box Boston University Sandia National Labs 5800 ECE Department P.O.Box 5800 Albuquerque, NM Boston, MA Albuquerque, NM [email protected] [email protected] [email protected] Kevin Pedretti Ayse Coskun Arun Rodrigues Sandia National Labs Boston University Sandia National Labs P.O.Box 5800 ECE Department P.O.Box 5800 Albuquerque, NM Boston, MA Albuquerque, NM [email protected] [email protected] [email protected] ABSTRACT 1. INTRODUCTION High Performance Computing (HPC) faces new challenges in As HPC continues to push the bounds of computation, it scalability, performance, reliability, and power consumption. faces new challenges in scalability, performance, reliability, Solving these challenges will require radically new hardware and power consumption. To address these challenges, we and software approaches. It is impractical to explore this need to design new architectures, operating systems, pro- vast design space without detailed system-level simulations. gramming models, and software. It is impractical to ex- However, most of the existing simulators are either not suffi- plore this vast design space without detailed system-level ciently detailed, not scalable, or cannot evaluate key system simulations. However, most simulators are either not suffi- characteristics such as energy consumption or reliability. ciently detailed (i.e., glossing over important details in pro- To address this problem, we integrate the highly detailed cessor, memory, or network implementations), not scalable gem5 performance simulator into the parallel Structural Sim- (i.e., simulating highly parallel architectures with serial sim- ulation Toolkit (SST). -
THE AMD Gem5 APU SIMULATOR: MODELING GPUS USING the MACHINE ISA
THE AMD gem5 APU SIMULATOR: MODELING GPUS USING THE MACHINE ISA TONY GUTIERREZ, SOORAJ PUTHOOR, TUAN TA*, MATT SINCLAIR, AND BRAD BECKMANN AMD RESEARCH, *CORNELL JUNE 2, 2018 OBJECTIVES AND SCOPE Objectives ‒ Introduce the Radeon Open Compute Platform (ROCm) ‒ AMD’s Graphics Core Next (GCN) architecture and GCN3 ISA ‒ Describe the gem5-based APU simulator Modeling Scope APU ‒ Emphasis on the GPU side of the simulator systems ‒ APU (CPU+GPU) model, not discrete GPU ‒ Covers GPU arch, GCN3 ISA, and HW-SW interfaces Why are we releasing our code? ‒ Encourage AMD-relevant research ‒ Modeling ISA and real system stack is important [1] ‒ Enhance academic collaborations ‒ Enable intern candidates to get experience before arriving ‒ Enable interns to take their experience back to school Acknowledgement ‒ AMD Research’s gem5 team [1] Gutierrez et al. Lost in Abstraction: Pitfalls of Analyzing GPUs at the Intermediate Language Level. HPCA, 2018. 2 | THE AMD gem5 APU SIMULATOR | JUNE 2, 2018 | ISCA 2018 TUTORIAL | QUICK SURVEY Who is in our audience? ‒ Graduate students ‒ Faculty members ‒ Working for government research labs ‒ Working for industry Have you written an GPU program? ‒ CUDA, OpenCLTM, HIP, HC, C++ AMP, other languages Have you used these simulators? ‒ GPGPU-Sim ‒ Multi2Sim ‒ gem5 ‒ Our HSAIL-based APU model Are you familiar with our HPCA 2018 paper? ‒ Lost in Abstraction: Pitfalls of Analyzing GPUs at the Intermediate Language Level 3 | THE AMD gem5 APU SIMULATOR | JUNE 2, 2018 | ISCA 2018 TUTORIAL | OUTLINE Topic Presenter Time Background Tony 8:00 – 8:15 ROCm, GCN3 ISA, and GPU Arch Tony 8:15 – 9:15 HSA Implementation in gem5 Sooraj 9:15 – 10:00 Break 10:00 – 10:30 Ruby and GPU Protocol Tester Tuan 10:30 – 11:15 Demo and Workloads Matt 11:15 – 11:50 Summary and Questions All 11:50 – 12:00 4 | THE AMD gem5 APU SIMULATOR | JUNE 2, 2018 | ISCA 2018 TUTORIAL | BACKGROUND Overview of gem5 ‒ Source tree GPU terminology and system overview HSA standard and building blocks ‒ Coherent shared virtual memory ‒ User-level queues ‒ Signals ‒ etc. -
Enhancing the RISC-V Instruction Set Architecture
Enhancing the RISC-V Instruction Set Architecture Plamen Petrov MInf Project (Part 1) Report Master of Informatics School of Informatics University of Edinburgh 2019 3 Abstract Since its emergence, RISC-V has offered a license-free alternative to proprietary in- struction sets designed by ARM and Intel by providing a stable base to researchers and small companies. This makes it possible for small companies and researchers to design new cores without incurring exorbitant costs. In our two-part project we explore RISC- V’s performance compared to the commercial ARM and X86 architectures. Most of the first part focuses on static code size, where we find that RISC-V performs very rea- sonably, but is behind Thumb2. For this reason, we propose improvements to RISC-V which constitute of new prologue and epilogue instructions that almost fully bridge this gap. We give ideas for other possible enhancements and plan to extend the project to cover dynamic measures in the second part. Overall, we conclude that RISC-V per- forms very well given the resources invested in it and open instruction sets, in general, deserve to be developed further for the better of the computer architecture field as a whole. 4 Acknowledgements I would like to express my gratitude to my supervisor Professor Nigel Topham for supporting me with the project throughout the year. Table of Contents 1 Introduction 7 1.1 Overview . 7 1.2 Aims . 9 1.3 Contributions . 10 1.4 Outline . 10 2 Background 11 2.1 Abbreviations . 11 2.2 Binary File . 11 2.3 SPEC2006 .