Gem5 Explained

gem5
Developer:Community contributors
Latest Release Version:v24.0.0.1
Programming Language:C++, Python
Operating System:Linux, Unix-like
License:BSD 3-Clause

The gem5 simulator is an open source discrete-event computer architecture simulator[1] . It combines system-level and microarchitectural simulation, allowing users to analyze and test a multiplicity of hardware configurations, architectures, and software environments, without access or development of any hardware.

The simulator is capable of simulating modern operating system running on a simulator system and supports a variety of instruction set architectures (ISAs), including x86, ARM, RISC-V. gem5 comes with a library of pre-made components that conform to a modular design methodology allowing researchers to conduct experiments on a wide systems with relative ease. As such gem5 is used to in research tasks as diverse as processor design, the development of memory subsystems, and application performance optimization. In addition to research, gem5 serves as an important education tool, enabling educators to demonstrate to the impact computer architecture design decisions can have on computer system performance.

History

The gem5 simulator was born out of the merger of m5 (a detailed CPU simulator) and GEMS simulator (a detailed memory system simulator) in 2011.[2]

Features and Capabilities

External links

Notes and References

  1. Lowe-Power J, Ahmad AM, Akram A, Alian M, Amslinger R, Andreozzi M, Armejach A, Asmussen N, Beckmann B, Bharadwaj S, Black G, Bloom G, Bruce BR etal . 2020 . The gem5 simulator: Version 20.0+ . 2007.03152.
  2. Binkert. Nathan. Sardashti. Somayeh. Sen. Rathijit. Sewell. Korey. Shoaib. Muhammad. Vaish. Nilay. Hill. Mark D.. Wood. David A.. Beckmann. Bradford. Black. Gabriel. Reinhardt. Steven K.. 2011-08-31. The gem5 simulator. ACM SIGARCH Computer Architecture News. en. 39. 2. 1–7. 10.1145/2024716.2024718. 195349294 .