Blog


gem5-21.1 Roadmap

by Jason Lowe-Power

Early on in each release, we like to provide the community with a roadmap of what is being developed for the next gem5 release. This is a community-based document, and it is a summary of what different developers are currently work on. If you have something that you’re working on that you are planning to contribute before the gem5-21.1 release, we’d love to include it here!

To contribute to the roadmap you can following the steps below:

  1. Create a issue or an epic on ...

    Read more...




    gem5-21.0 Released!

    by Jason Lowe-Power

    Version 21.0 marks one full year of gem5 releases, and on this anniversary, I think we have some of the biggest new features yet! This has been a very productive release with 100 issues, over 813 commits, and 49 unique contributors.

    21.0 New features

    AMBA CHI protocol implemented in SLICC: Contributed by Tiago Mück

    ...

    Read more...




    Arm's Transactional Memory Extension support in gem5

    by Timothy Hayes

    This post was originally posted on the Arm Research Blog: here

    April 16 2021: The code example in this article has been updated to reflect the Armv9-A architecture release and to be ...

    Read more...




    gem5-20.1 Released!

    by Jason Lowe-Power

    gem5-20.1 has been released! The stable branch of the gem5 repo now points to the gem5-20.1 release instead of the gem5-20.0 release. Overall, the 20.1 release was much smoother than the gem5-19 and gem5-20.1 release. I think we’re learning how to do this!

    Thank you to everyone that made this release possib...

    Read more...




    gem5 O3CPU Backend Documentation Update

    by Zhengrong Wang

    The documentation about gem5 O3CPU is a little bit abstract and not closely related to the code. Therefore, this post extracts key function chains to show how an instruction is handled by the backend, with some basic description to ease the learning curve of the O3CPU backend (IEW and Commit stage).

    Hopefully this could help more people. Reader should already be familiar with gem5. This post has also been added to the

    Read more...




    gem5-20.1 Roadmap

    by Jason Lowe-Power and Bobby Bruce

    After our successful release of gem5-20, it’s time to start thinking about gem5’s next release, gem5-20.1!

    We received great feedback during the gem5 town hall held with the gem5 workshop about the new features that the community would like to see for the next release.

    Based on this feedback, below are the major projects...

    Read more...




    Towards full-system discrete GPU simulation

    by Mattew Poremba, Alexandru Dutu, Gaurav Jain, Pouya Fotouhi, Michael Boyer, and Bradford M. Beckmann.

    AMD Research is developing a full system GPU (Graphics Processing Unit) model capable of using the amdgpu Linux kernel driver and the most up to date software stacks. Previously AMD updated the gem5 [1] GPU compute timing model to execute the GCN (Graphics Core Next) generation 3 machine ISA [2,3], but it still relied on system-call emulation. With full-system support, the model can run the most recent open-source Radeon Open Compute platform (ROCm) stack without modification. This allows...

    Read more...




    Adaptive Traffic Profiles as a tool to model heterogeneous systems in gem5

    by Matteo Andreozzi, Frances Conboy, Giovanni Stea, and Raffaele Zippo

    Heterogeneous systems, composed of a variety of devices, are especially difficult to design and dimension for target use-cases. There is a pressing need for tools that can facilitate the exploration of their design space, so that designers and testers can be allowed to predict or measure performance on their target use-cases. On the other hand, a new generation of applications, such as automated driving or Industry 4.0 ones, is putting challenging requirements on heterogeneous systems. The...

    Read more...




    Enabling Multi-GPU Support in gem5

    by Bobbi W. Yogatama, Matthew D. Sinclair, Michael M. Swift

    Introduction

    In the past decade, GPUs have become an important resource for compute-intensive, general-purpose GPU applications such as machine learning, big data analysis, and large-scale simulations. In the future, with the explosion of machine learning and big data, application demands will keep increasing, resulting in more data and computation being pushed to GPUs. However, due to the slowing of Moore’s Law and rising manufacturing costs, it is becoming mor...

    Read more...




    A Modular and Secure System Architecture for the IoT

    by Nils Asmussen, Hermann Härtig, and Gerhard Fettweis

    Introduction

    The “Internet of Things (IoT)” is already pervasive in industrial production and it is expected to become ubiquitous in many other sectors, too. For example, such connected devices have great potential to better automate and optimize critical infrastructure such as electrical grids and transportation networks and are also promising for health care applications. However, a one-size-fits-all solution for the compute hardware and system software of all...

    Read more...




    gem5 GUI

    by Shivam Desai, Rohit Dhamankar, Ravishdeep Singh, Ahmed Farooqui, Jason Lowe-Power, and Bobby R. Bruce

    Overview

    Background and Motivation

    The current state of gem5 requires the development of python scripts to define and generate different architectures. This can be tedious to develop since the user flow can result in less visual thinking. We want a tool to have a better user flow to allow developers to create and tweak these models in a visual manner, much like Chisel. To make gem5 more accessible and allow new users to utili...

    Read more...




    A flexible cache coherency protocol for the Ruby memory system

    by Tiago Mück

    Gem5’s Ruby memory subsystem provides flexible on-chip network models and multiple cache coherency protocols modeled in detail. However, simple experiments are sometimes difficult to pull off. For instance, modifying an existing configuration by just adding another shared cache level requires either:

    1. switching to an entirely new protocol that models the desired cache hierarchy;
    2. or modify an existing protocol;

    While (1) is not always an option, (2) ...

    Read more...




    Modeling Modern GPU Applications in gem5

    by Kyle Roarty and Matthew D. Sinclair

    In 2018, AMD added support for an updated gem5 GPU model based on their GCN3 architecture. Having a high-fidelity GPU model allows for more accurate research into optimizing modern GPU applications. However, the complexity of getting the necessary libraries and drivers, needed for this model to run GPU applications in gem5, made it difficult to use. This post describes the work we have done with increasing the usability of the GPU model by simplifying the setup process, extending the typ...

    Read more...




    Memory controller updates for new DRAM technologies, NVM interfaces and flexible memory topologies

    by Wendy Elsasser and Nikos Nikoleris

    Adding LPDDR5 support to DRAMCtrl

    LPDDR5 is currently in mass production for use in multiple markets including mobile, automotive, AI, and 5G. This technology is expected to become the mainstream Flagship Low-Power DRAM by 2021 with anticipated longevity due to proposed speed grade extensions. The specification defines a flexible architecture and multiple options to optimize across different use cases, trading off power, performance, reliabi...

    Read more...




    HeteroGarnet - A Detailed Simulator for Diverse Interconnect Systems

    by Srikant Bharadwaj, Jieming Ying, Bradford Beckmann, and Tushar Krishna

    Networks-on-Chips (NoCs) have become inevitably more complex with the increased heterogeneity of Systems-On-Chip (SoCs). Recent advances in die-stacking and 2.5D chip integration introduce in-package network heterogeneities that can complicate the interconnect design. Detailed modeling of such complex systems necessitates accurate modeling of their characteristics. Unfortunately, NoC simulators today lack the flexibility and features required to model these diverse interconnects.

    W...

    Read more...




    gem5art announcement

    by Hoa Nguyen

    gem5art-logo

    gem5art: a gem5 Experiment Framework

    Hoa Nguyen, Ayaz Akram, Mahyar Samani, Krithiga Murugavel, Trivikram Reddy, Marjan Fariborz, Pouya Fotouhi, Jason Lowe-Power

    We are excited to announce the gem5art project, a framework aiming to tackle the issue of reproducibility of gem5 experiments and improve the overall testing and expe...

    Read more...




    gem5-20.0 Released!

    by Jason Lowe-Power

    After much waiting, and a few surprising issues, gem5-20.0 has been released! The master branch of the gem5 repo now points to the gem5-20 release instead of the gem5-19 release.

    Thank you to everyone that made this release possible! This has been a very productive release with 84 issues, ab...

    Read more...




    gem5 joins Season of Docs!

    by Bobby R. Bruce

    We are pleased to announce that the gem5 project will be participating in this year’s Season of Docs. Season of Docs is a program, run by Google, with the goal of fostering collaboration between open source projects and technical writers.

    In this blog post we shall outline who we are and what kind of projects we are looking for technical writers to undertake. Durin...

    Read more...




    X86 Linux Boot Status on gem5-19

    by Ayaz Akram

    gem5-linux-logo

    The frequency of changes pushed to gem5 is increasing with time. This makes it important to have an up-to-date idea of what is working with gem5 and what is not. The booting of the Linux kernel is a very important benchmark to ascertain the working status of gem5, considering that gem5 is a full-system simulator which should be able to simulate a modern operating system. However, the state of support of latest Linu...

    Read more...




    gem5-19 Released!

    by Jason Lowe-Power

    gem5-19.0.0.0 has officially been released! We’re a couple of months behind schedule, but future releases should be better.

    The main goal of the gem5-19 release was to test our release mechanisms to make sure that things go smoothly for the first “RE-gem5” release. In this sense, gem5-19 is a major success! We were able to find several bugs in our release methodology that have been worked out. I’m hopeful that the gem5-20 release will ...

    Read more...




    gem5 Website Redesign

    by Jason Lowe-Power

    Welcome to gem5’s new website! The old wiki has needed a refresh for a few years (see screenshot below), and we’re excited to finally have something to share with the community! We hope the new site has better usability and makes it easier to find information about gem5 and how to use it. If you have any questions or comments, don’t hesitate to reach out on the gem5-dev mailing list!

    Read more...




    RE-gem5: Building Sustainable Research Infrastructure

    by Jason Lowe-Power and Matt Sinclair

    Note: this post originally appeared on Computer Architecture Today.

    RE-gem5 is a directed effort to rejuvenate the underlying infrastructure of gem5. RE-gem5 is not a new simulator or a new project; it is a project to enhance and support the current gem5 infrastructure.

    The community-developed gem5 infrastructure is one of the most popular and widely known cycle-level...

    Read more...




    subscribe via RSS