mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-23 02:05:57 +01:00
gem5: summarize the differences between the main cores
This commit is contained in:
17
README.adoc
17
README.adoc
@@ -12304,6 +12304,23 @@ In an Ubuntu 18.04 host where `python` is `python2` by default, build with Pytho
|
||||
|
||||
Python 3 is then automatically used when running if you use that build.
|
||||
|
||||
=== gem5 CPU types
|
||||
|
||||
gem5 has a few in tree CPU models for different purposes, here is an overview of the most interesting ones:
|
||||
|
||||
* `BaseSimpleCPU` descendants. Have no CPU pipeline.
|
||||
** `AtomicSimpleCPU`: the default one. Memory accesses happen instantaneously. The fastest simulation except for KVM, but not realistic at all. Useful to <<gem5-restore-checkpoint-with-a-different-cpu>>.
|
||||
** `TimingSimpleCPU: memory accesses are realistic, but the CPU has no pipeline. The simulation is faster than detailed models, but slower than `AtomicSimpleCPU`. TODO: application?
|
||||
* `MinorCPU`: in-order core. Its 4 stage pipeline is described at the "MinorCPU" section of <<gem5-arm-rsk>>.
|
||||
** `HPI`: derived from `MinorCPU` simply by parametrization. According to <<gem5-arm-rsk>>: "The HPI CPU timing model is tuned to be representative of a modern in-order Armv8-A implementation."
|
||||
* `DerivO3CPU`: out-of-order core
|
||||
|
||||
==== gem5 ARM RSK
|
||||
|
||||
https://github.com/arm-university/arm-gem5-rsk/blob/aa3b51b175a0f3b6e75c9c856092ae0c8f2a7cdc/gem5_rsk.pdf
|
||||
|
||||
Dated 2017, it contains a good overview of gem5 CPUs.
|
||||
|
||||
=== gem5 ARM platforms
|
||||
|
||||
The gem5 platform is selectable with the `--machine` option, which is named after the analogous QEMU `-machine` option, and which sets the `--machine-type`.
|
||||
|
||||
Reference in New Issue
Block a user