---
layout: post
title:  "gem5-21.1 Roadmap"
author: Jason Lowe-Power
date:   2021-04-25
categories: project
---

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 our [issue tracker](https://gem5.atlassian.net/jira/software/c/projects/GEM5/issues/). If the contribution is large with many different individual contributions, it would be best to create an epic to group all of the separate issues together.
2. Mark the issue as "Fix version 21.1" and assign yourself as the "Assignee".
3. Update [this roadmap document](https://gem5.googlesource.com/public/gem5-website/+/refs/heads/stable/_posts/2021-04-25-gem5-21-1-roadmap.md) by [downloading the website source](https://gem5.googlesource.com/public/gem5-website/) and creating a changeset [on gerrit](https://gem5.googlesource.com/public/gem5-website/+/refs/heads/stable/README.md).

## Roadmap for 21.1

We're planning to release gem5-21.1 **during July** (about 4 months after the gem5-21.0 release).
Below are the main features we're currently planning on including in 21.1.

### [gem5 component library](https://gem5.atlassian.net/browse/GEM5-648)

Wouldn't it be cool if using gem5 was like walking into [Microcenter](https://www.microcenter.com/) and choosing components?
The goal of this project is to make this happen!

We will create a library of components and "known-good" configurations.
With the *components*, you can choose components like different cache systems (e.g., private L1, shared L2), different CPUs, and different RAMs to plug into a "board" to create a system.

Alternatively, you can choose to use one of our prebuilt systems as a baseline.
These prebuilt systems will be benchmarked/tested and the data will be publically available on the gem5-resources webpage: <http://resources.gem5.org/>.

For the components, the goal is that they are always composable.
In other words, any memory can be connected to any cache system which can be connected to any CPU.
And, hopefully, this will work for any ISA, etc.

We're working on the details now and will have a proposal on gerrit in the next few weeks.
If you have feedback feel free to let us know on gem5-dev mailing list, the [Jira issue](https://gem5.atlassian.net/browse/GEM5-648), or the gerrit changesets when they are posted.

### [Continue improving python-based stats](https://gem5.atlassian.net/browse/GEM5-644)

In [gem5-21.0]({% post_url 2021-03-19-gem5-21-0 %}), we implemented a python-based API for accessing stats.
However, this was not enabled by default.
In 21.1, we are expecting this API to be improved and more features added.
Let us know what you would like to see from a new stats interface in the [Jira issue](https://gem5.atlassian.net/browse/GEM5-644) or on the mailing list!

### [SST integration](https://gem5.atlassian.net/browse/GEM5-399)

We have been working to revamp the gem5-SST integration for a couple of releases now.
We started by [creating a documented stable API](https://gem5.atlassian.net/browse/GEM5-172), which still has a few unresolved issues.
We expect that by 21.1 we will have a proof-of-concept where gem5 can be used as a component in SST.

### [Upstreaming power-gem5](https://gem5.atlassian.net/browse/GEM5-959)

POWER support in gem5 has languished over the years.
However, there has been significant effort in a [fork of gem5](https://github.com/power-gem5/gem5/tree/develop-power) to update to the latest POWER features and improve the support.

There are currently many changes on gerrit: E.g., <https://gem5-review.googlesource.com/c/public/gem5/+/40948> working to merge these two.
We would appreciate reviews and feedback on these changes especially if POWER support is important to you!

### GPU updates

#### [Full system GPU](https://gem5.atlassian.net/browse/GEM5-195)

Currently, gem5 also only supports GPU runs in SE mode, not FS mode.
As part of the next release, we plan on releasing FS mode support for gem5 GPU models.

#### [Supporting new runtimes and GPUs](https://gem5.atlassian.net/browse/GEM5-962)

Currently gem5's SE mode GPU support is for ROCm 1.6 and Carrizo-class GPUs, which is fairly old now.
To help address this, we are planning on releasing support for ROCm 4.0 in the next version of gem5.
Moreover, we will also include support for Vega-class GPUs, which are more modern.

### Other things we're working on

Below are some other things that we have either started to work on or would like to do, but are either smaller or on the back burner.
If anyone is interested in contributing, picking up one of these issues could be a great way!

- [Improving the multi-level TLB models](https://gem5.atlassian.net/browse/GEM5-790)
  - No current active development, but significant interest from many different users/developers
- [Pydoc documentation](https://gem5.atlassian.net/browse/GEM5-647)
- [RISC-V PMP support](https://gem5.atlassian.net/browse/GEM5-917)
- [Upgrade the replacement policies API to support state-of-the-art replacement policies](https://gem5.atlassian.net/jira/software/c/projects/GEM5/issues/GEM5-204)
  - [The respective chain does the change and adds SHiP to exemplify](https://gem5-review.googlesource.com/c/public/gem5/+/38118/5)
- [Enable GTesting of SimObjects (key part) and add as many unit tests as possible](https://gem5.atlassian.net/jira/software/c/projects/GEM5/issues/GEM5-4)
  - (Respective chain)[https://gem5-review.googlesource.com/c/public/gem5/+/44109/3]
- If the key changes of the GTesting issue are merged, [revamp probes](https://gem5.atlassian.net/jira/software/c/projects/GEM5/issues/GEM5-857)
  - [Respective chain](https://gem5-review.googlesource.com/c/public/gem5/+/38706/1)
- Finally, add a gem5 namespace. The change itself does not necessarily need to be over by the next version, but it would be great to have a decision and the very few first steps taken by then.
  - See <https://gem5.atlassian.net/jira/software/c/projects/GEM5/issues/GEM5-730>
