Commit Graph

1246 Commits

Author SHA1 Message Date
Bobby R. Bruce
ae3c3fccd4 tests: Update the the docker images in Nightly to v22-0
Change-Id: Id7aa4e1cbd2cf3123f82a152b96cd14281e798bd
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60549
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
2022-06-17 05:34:13 +00:00
Hoa Nguyen
02ed53ff6b stdlib,configs,tests: Examples of saving/restoring checkpoints
This change consists of two scripts,
- riscv-hello-save-checkpoint.py: runs the first million ticks of the
simulation and save a checkpoint.
- riscv-hello-load-checkpoint.py: loads the above checkpoint, and runs
the rest of the simulation.

This change also adds the two scripts as part of quick tests.

Change-Id: I7bd97ba953fab52f298cbbcf213f2ea5c185cc38
Signed-off-by: Hoa Nguyen <hoanguyen@ucdavis.edu>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58829
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
2022-06-08 21:51:52 +00:00
Bobby R. Bruce
f6ca466d09 tests: Add ISA test for stdlib 'requires' function
Change-Id: I94192fa7f026abc8bc48c6de06ce0471a0515f32
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60429
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-06-08 17:24:13 +00:00
Bobby R. Bruce
74942dc08e tests: Add tests for 'gem5.runtime.get_supported_isas'
Change-Id: I4224cca9384af48c1e090d9b34627cae8ce00715
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60094
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-06-08 17:24:13 +00:00
Bobby R. Bruce
fda4137780 stdlib: Refactor multi-isa stdlib incorporation
The previous version of this requires the user to set the `main-isa` at
runtime, as inplemented via
https://gem5-review.googlesource.com/c/public/gem5/+/55423. In order to
keep this work in-sync with how the multi-protocol approach will work
(see here: https://gem5-review.googlesource.com/c/public/gem5/+/59193),
it's been decided this should be set at compile time. With this we are
keeping the `TARGET_ISA` parameter. If this is set, this is the de
facto "main-isa". The `main-isa` parameter has been removed from the
gem5 command-line.

If the `TARGET_ISA` parameter is not set, but only one ISA is compiled,
then this single ISA is assumed to be the `main-isa` for simulation. If
neither `TARGET_ISA` is set or the binary is compiled to a single ISA,
an exception is thrown when `get_runtime_isa` is called.

At the time of writing this change is moot as the multi-isa work has
yet to be merged into the gem5 develop branch. It exists here:
https://gem5.googlesource.com/public/gem5/+/refs/heads/multi-isa and
will need refactored to work with this patch.

The multi-isa tests have been updated. As we no longer pass the
`main-isa` as a run-time parameter, we remove many tests which validated
this use-case.

Change-Id: If3366212fe1dacbae389efa43d79349deb907537
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59949
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
2022-06-08 17:24:13 +00:00
Bobby R. Bruce
f2a7a46db0 tests: Disable max_tick for asmtests
These tests are very short and do not need to be limited by a set number
of ticks. They should be ran to completion.

Change-Id: I0ea2193efe01e5ed01afd10d8e5934512a4027c6
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60251
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-06-06 18:46:52 +00:00
Bobby R. Bruce
8ad21f7039 tests: Fix downloader check
This test was failing due to references to a "downloader_dir" variable.
It should be "downloader_directory".

This is responsible for the Weekly test failing:
https://jenkins.gem5.org/job/weekly/55

Change-Id: Ia898726b75be1bfc2b6f49383be750a250c24af0
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60349
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-06-06 16:41:19 +00:00
Bobby R. Bruce
6b92e8ddde tests,arch-riscv: Add rv64uzfh-ps tests to asmtests
These were added to gem5-resources via these commits:
https://gem5-review.googlesource.com/c/public/gem5-resources/+/60249
https://gem5-review.googlesource.com/c/public/gem5-resources/+/60149

Change-Id: I3b6d75ab09960c9aa2e211288eaaf52d43d00368
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60250
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
2022-06-02 05:07:11 +00:00
Bobby R. Bruce
0770c80fb9 tests: Wipe 'build/ARM' dir before running SystemC tests
It if the ARM code is changed, the building of the library for the
systemc tests can sometimes fail. This appears to have happened in
recent Nightly test failures: https://jenkins.gem5.org/job/nightly/237.

It's safer to just wipe the 'build/ARM' directory before running this
test.

Change-Id: I203c4e74c01215128b85bf69176921f8ecef4988
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60096
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
2022-06-02 05:06:27 +00:00
Bobby R. Bruce
d7f5b70576 tests: Replace multi-isa test GCN3 compilation with VEGA
As of this commit,
https://gem5-review.googlesource.com/c/public/gem5/+/59012, all GCN3
tests were replaced with VEGA. However, this commit,
https://gem5-review.googlesource.com/c/public/gem5/+/57510, was added
and used GCN3_X86 instead of Vega.

It is likely this is the root cause of recent Kokoro timeouts as
compiling both GCN3_X86 and VEGA_X86 is costly. This patch fixes this.

Change-Id: Iee2a08189a73283877f5d599191e9d1b105322ca
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60169
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-06-01 15:50:41 +00:00
Bobby R. Bruce
041cc65899 tests: Increase Weekly Docker Container mem limit to 24GB
The following weekly tests were failing:
https://jenkins.gem5.org/job/weekly/53

This appears to be due to the "lulesh" tests failing with the docker
container running out of memory. This can be recreated with:

```
git clone -b develop https://gem5.googlesource.com/public/gem5

cd gem5

git clone -b develop https://gem5.googlesource.com/public/gem5-resources

docker pull gcr.io/gem5-test/gcn-gpu:latest
docker build -t hacc-test-weekly gem5-resources/src/gpu/halo-finder

docker run --rm -u $UID:$GID --volume $(pwd):$(pwd) -w \
    $(pwd) --memory="18g" hacc-test-weekly bash -c \
    "scons build/GCN3_X86/gem5.opt -j`nproc`"

docker run --rm --volume $(pwd):$(pwd) -w \
       "$(pwd)/gem5-resources/src/gpu/lulesh" \
       -u $UID:$GID --memory="18g" hacc-test-weekly make

docker run --rm -u $UID:$GID --volume "$(pwd)":"$(pwd)" -w \
    "$(pwd)" --memory="18g" \
    hacc-test-weekly build/GCN3_X86/gem5.opt configs/example/apu_se.py -n3 \
    --mem-size=8GB --reg-alloc-policy=dynamic \
    --benchmark-root="$(pwd)/gem5-resources/src/gpu/lulesh/bin" -c lulesh
```

It is currently unknown as to why this process consumes so much memory
or how it can be reduced, but increasing the docker container limit to
24GB for the Weekly tests does appear to fix the issue.

Change-Id: Ifcd65d4ab8bf6a12ddf7a45d61c779e691619072
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/60009
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-06-01 00:59:49 +00:00
Bobby R. Bruce
53500ac611 stdlib: Introduce an ARM Board
This changes adds a new board to the gem5 stdlib, which is capable
of simulating an ARM based full system. It also adds an example
config script to perform a boot-test using an Ubuntu 18.04 disk
image. A test has been added in the gem5-library-example for the
same.

Change-Id: Ic95ee56084a444c7f1cf21cdcbf40585dcf5274a
Signed-off-by: Kaustav Goswami <kggoswami@ucdavis.edu>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58910
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
2022-05-25 17:34:25 +00:00
Bobby R. Bruce
2643f3c4ee tests,stdlib: Add test to check gem5-resources downloading
This test ensures all the resources in resources.json can be downloaded
and that their md5 values are valid. This has been set as a
very-long/weekly test as downloading all the resources is costly.

Change-Id: Ia574d0a9610849af3653fc742acb214ea7496767
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59771
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-25 17:27:39 +00:00
Giacomo Travaglini
934590521a tests: Don't enable EL2/EL3 in AArch32 for long regressions
This is fixing long regressions, caused by
automatically enabling EL2 and EL3 in Arm.
This is temporary: either fixing EL3 boot in AArch32 or
disabling EL3 in AArch32 should be chosen in the long term

Change-Id: If92b219ff89dcf13916a151fac9a2a3ac0e7d69b
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59849
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-24 00:02:44 +00:00
Giacomo Travaglini
985dd1ea9d tests: Enable DVM in realview64-o3-dual-ruby.py
Change-Id: I3b4cec279e620ee416c3ecb34e45eec1d34b0166
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59871
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-24 00:02:17 +00:00
Giacomo Travaglini
a6704ff730 tests: Add enable_dvm flag to test DVM in long regressions
We are only adding the option to the LinuxArmFSSystem and not to the
LinuxArmFSSystemUniprocessor as DVM is only supported for more than one
CPU

Change-Id: I57004b85158fb898297fb9d91c38673a5bb88268
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59870
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-24 00:02:17 +00:00
Giacomo Travaglini
234d61663d tests: Add realview64-o3-dual-ruby.py long test
This will test Linux boot with two O3CPUs and ruby memory
subsystem

Change-Id: Iaf965fc29571ad003e7b8bc160d1e4d00b90e448
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59869
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
2022-05-24 00:02:17 +00:00
Jason Lowe-Power
e2fc2d5765 tests: Add systemc test
Change-Id: I2eb5f6725942829940fc2bd18f1c321dea567840
Signed-off-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59689
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-19 14:32:11 +00:00
Bobby R. Bruce
45e6e57b5a stdlib: Implicitly determine FS/SE mode via workload
Setting whether FS or SE mode is to be used explicitly is not necessary
as we can determine this depending on what kind of workload is set.

Change-Id: Icc0ac749df231eaa9af8ba2363b466fcb405ccea
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59571
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-05-13 19:04:21 +00:00
Bobby R. Bruce
90bb4cbebb tests: Fix docker '--memory' flag in GPU test
A missing space was resulting in an error:

```
invalid argument "18ghacc-test-weekly" for "-m, --memory" flag: invalid size: '18ghacc-test-weekly'
```

Change-Id: I63cd3f1cf877442b1b5fffc0a09024ca6ae94436
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59489
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
2022-05-10 00:48:47 +00:00
Giacomo Travaglini
5d45c50b48 misc: Add VExpress_GEM5_Foundation bootloader
The VExpress_GEM5_Foundation platform cannot use the VExpress_GEM5_V2
bootloader as the GIC has a different memory map

A new tarball has been uploaded to dist.gem5.org with the new bootloader

Change-Id: Ie0c16e623c3323b7be2a333cd6b0ffcf891b7b9b
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59392
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-07 22:40:47 +00:00
Bobby R. Bruce
6209641d33 tests: Disable 2 core Timing MESI_Two_Level X86 boot test
This is due to this error: https://gem5.atlassian.net/browse/GEM5-1219.
After several weeks of failing Weekly tests, this test will be disabled
until it can be fixed.

Change-Id: If7510426c33f3412a559681f653e955409fcdce4
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59329
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
2022-05-05 23:39:09 +00:00
Matt Sinclair
11ccc87c91 tests, gpu-compute, mem-ruby: add GPU Ruby random test to nightly
Add a longer test for the GPU Ruby random tester to the nightly
regression.  This test is sized to take approximately 30 minutes
while providing more coverage than the per check-in Ruby random test,
which takes 30 seconds.

Change-Id: I398feb1283b24f801275ba13d6c53d236849f2eb
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59272
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-04 20:57:45 +00:00
Bobby R. Bruce
cc6aa4c173 tests: Add tests for the resource downloader
Change-Id: Ibc2685670dc50234b9b216226c03ed24c8bc9925
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59089
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-05-03 19:22:57 +00:00
Bobby R. Bruce
bcabf189fb tests,gpu-compute,mem-ruby: Add GPU Ruby random test
This adds the GPU protocol random tester to the quick/Kokoro tests. The
input has been sized to take around 20 seconds and provides good
coverage for the coherence protocol.

This test can be run with the following:

```
cd tests
./main.py run -j`nproc` gem5/gpu
```

Change-Id: I08d199f0de8cca985f992b7f39b5f82e4218c82d
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58270
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com>
Maintainer: Matt Sinclair <mattdsinclair@gmail.com>
2022-04-26 19:14:22 +00:00
Bobby R. Bruce
33281840ff tests,gpu-compute: Replace gcn3 tests with vega testlib tests
Any X86 quick tests were set to use GCN3_86. This was to minimize the
number of gem5 targets to build during the quick tests. Since the
introduction of VEGA, we wish to test VEGA during the quick tests. As
such, this patch will replace all GCN3_X86 tests with VEGA_X86 tests.

Change-Id: Ibdd7832e43a284936db5102d41161388bc721bd1
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59012
Reviewed-by: Matthew Poremba <matthew.poremba@amd.com>
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com>
Maintainer: Matt Sinclair <mattdsinclair@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-26 19:14:22 +00:00
Bobby R. Bruce
e3fc3694a1 learning-gem5,tests: Fix 'valid_isas' in learning gem5 part 3
This was set to 'gcn3_x86_tag'. We only do this for quick X86 tests (to
minimize the build targets during the quick tests). This is not
necessary for the long tests.

Change-Id: I3bd20b53e04d129462e6f62a24f34b093f4a1b80
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59011
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-26 19:14:22 +00:00
Bobby R. Bruce
e33f9b830b stdlib: Update the stdlib resource's md5 utils
The commit does the following:

- Moves the md5 functions to their own Python module (this will allow us
to use this elsewhere).
- Add functionality to enable md5 values for directories.
- Adds Pyunit tests for the md5 functionality.

Change-Id: I224d4584ed6c35fac3a75e221b3cb48d863ffa6f
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58849
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
2022-04-19 22:01:00 +00:00
Bobby R. Bruce
35f7008602 tests: Fix 'valid_hosts' field for KVM tests
In some cases where we wish to use X86 KVM the 'valid_hosts' field was
set to 'constants.supported_hosts'. This can cause problems as the only
valid host for an X86 KVM test is X86. This patch fixes this.

This fix will likely fix some flakey errors observed in the Nightly
tests.

Change-Id: Id0a906ca6602c0358ae632cce314769807bf6e07
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58970
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-19 19:08:30 +00:00
Bobby R. Bruce
f6b1f3f850 tests: Disable failing 8-core Boot Tests for Timing/Atomic
As noted here: https://gem5.atlassian.net/browse/GEM5-1217, the Atomic
and Timing Core systems are not working with 8 cores when run with a
classic or MI_example cache heirarchy. Until the root cause of this
issue can be determined. These tests are being disabled.

Change-Id: Ia19579029bd20c57cca8d225068d17c4b29f1773
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58770
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-04-12 18:08:10 +00:00
Bobby R. Bruce
06881ae2a5 tests: Disable failing MI_Example/Timing CPU X86 Boot Tests
As noted in this jira issue:
https://gem5.atlassian.net/browse/GEM5-1216, these tests are failing.
We are going to disable them until we can figure out the root cause of
this problem.

Change-Id: I8511beaac0bae3c6d2a42af59035cc4620cd5bb2
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58769
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-04-12 18:08:10 +00:00
Bobby R. Bruce
c08c3fdcb2 tests: Skip "build/ALL/gem5.opt" build test
This commit,
https://gem5-review.googlesource.com/c/public/gem5/+/57509, added
'constants.all_compiled_tag' to test the "build/ALL/gem5.opt" target
once incorporated. However, the test_build.py tests automatically parse
these tags to generate build tests. As such the nightly tests fail
due to trying to build a target which has not yet been added to the
project: https://jenkins.gem5.org/job/nightly/183

This patch skips this build. It may be reverted once
"build/ALL/gem5.opt" is available.

Change-Id: Ib3a01113214f0715cd13ee0da4ee387efd403c8f
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58609
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-06 05:26:22 +00:00
Bobby R. Bruce
8f629fa638 stdlib,tests: Add Str-to-CPUTypes helper functions
The two functions are `get_cpu_types_str_set()` which returns a set of
valid CPUTypes as strings, and `get_cpu_type_from_str()` which will
return a CPUType enum given an input string.

The purpose of these functions is to aid and standardize user input
parameters or environment variables.

Test scripts are updated accordingly.

Change-Id: I7cb9263321fe36bc8a7530edfd0d8e8bbd329e0e
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58491
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-04 22:48:12 +00:00
Bobby R. Bruce
4f4c8b5eda tests: Add MinorCPU tests to the RISCV Boot tests
Change-Id: I9bd6665af00ea8a348152b5f5f83ff1017da4c7a
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/57691
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-04 22:48:12 +00:00
Bobby R. Bruce
bfb0353541 tests: Add MinorCPU tests to Hello World tests
At present, only the ARM and RISCV gem5 binaries support the MinorCPU by
default. Therefore, that is all that is tested for now.

Change-Id: I7cbcd2ee8cae470a3de0d59af20dc2fd911fb2bd
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/57690
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-04 22:48:12 +00:00
Bobby R. Bruce
de22295609 tests,testlib: Add tests for gem5.runtime.get_runtime_isa()
Included in this patch are tests to be enabled once build/ALL/gem5.opt
has been introduced.

Change-Id: I4c7ddd366af07b6d8ba4edcbbf58a1cfc7a6cc56
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/57510
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-04-04 22:48:12 +00:00
Bobby R. Bruce
79a93f3429 stdlib: Incorporating multi-isa work to the stdlib
The main restriction with this design is it results in one ISA target
per board. The ISA is declared per core. To make the design simpler it's
assumed a Processor (a collection of cores) are all of the same ISA. As
each board has one processor, this also means a board is typically tied
to one ISA per simulation.

In order to remain backwards compatible and maintain the standard
library APIs, this patch adds a `--main-isa` parameter which will
determine what `gem5.runtime.get_runtime_isa` returns in cases where
mutliple ISAs are compiled in. When setting the ISA in a simulation (via
the Processor or Cores), the user may, as before, choose not to and, in
this case, the `gem5.runtime.get_runtime_isa` function is used.

The `gem5.runtime.get_runtime_isa` function is an intermediate step
which should be removed in future versions of gem5 (users should specify
precisely what ISA they want via configuration scripts). For this reason
it throws a warning when used and should not be heavily relied upon. It
is deprecated.

Change-Id: Ia76541bfa9a5a4b6b86401309281849b49dc724b
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/55423
Reviewed-by: Gabe Black <gabe.black@gmail.com>
Maintainer: Gabe Black <gabe.black@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-04 22:48:12 +00:00
Bobby R. Bruce
5eed355fb0 tests: Remove accidentally included "exit 0" test code
This "exit 0" line was included accidentally in this commit:
https://gem5-review.googlesource.com/c/public/gem5/+/58169

It should not have been included, it was for testing purposes only.

Change-Id: Ia4be334d773bbb998906b0f0ae980f9ed14c87b4
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58269
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-03-28 22:16:04 +00:00
Bobby R. Bruce
71508bb484 tests: Increase test Dockers' memory limit to 18GB
The following error is being returned by the Jenkins,
https://jenkins.gem5.org, on a regular basis:

```
error waiting for container: unexpected EOF
```

An example can be found here:
https://jenkins.gem5.org/job/nightly/172/console

It is not known exactly what the cause of this error is, but increasing
the memory available to each container may help the issue. This patch
may be reverted if it does not fix the problem.

Change-Id: Ide341774439820def91b0373b03801396705cd62
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/58169
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-03-25 13:39:14 +00:00
Bobby R. Bruce
cfcb63d768 tests: Add KVM Tests to the nightly run
Unfortunately due to restrictions with Docker, we cannot run KVM tests
within a Docker container. As such we have elected to run them on the
host system in this instance.

Change-Id: I751903512eaba9d0e51732228a0706725e82295e
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/56831
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-03-18 18:16:09 +00:00
Bobby R. Bruce
2f48aa9e5c tests: Add 'kvm' tag to tests
Some of our tests require KVM. Tagging these tests as such allow us to
filter them in or out during testing.

Change-Id: I3f188d3e268409535043cc32b64d99e4657638cd
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/56829
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-03-18 18:16:09 +00:00
Bobby R. Bruce
febbb1bf1c tests,util-docker: Add clang-12 to the compiler tests
Change-Id: I07f37df42b370677f4a5f4cd948b7680d551a5ab
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/57430
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-03-14 16:02:07 +00:00
Bobby R. Bruce
4e4f8f1347 tests: Add o3 classic init x86 boot tests
These have been included to ensure the o3 CPU is tested sufficiently.

Change-Id: Ifa7564171be4a3bc94301ccfdbd85b72568d7c77
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/56203
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-02-11 17:58:39 +00:00
Bobby R. Bruce
a315df2dd8 tests: Add x86 mutlicore boot tests for timing CPUs
Due to a spin lock error affecting multicore timing cores,
https://gem5.atlassian.net/browse/GEM5-1105, gem5 only supported
single-core timing setups. As this has now been fixed, we support it.
This patch expands the boot tests to include tests for multicore timing
CPU systems.

Change-Id: I89b7f1bed077373dae5e9b8eb6818129da915fee
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/55744
Reviewed-by: Austin Harris <mail@austin-harris.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-02-09 21:36:18 +00:00
Bobby R. Bruce
e1af2b71d4 tests: Fix gem5 stdlib NPB example test
'--maxinst' was replaced with '--ticks' for the
'configs/example/gem5_library/x86-npb-benchmarks.py' script. This test
was never updated and resulted in failure. This patch fixes the issue.

Change-Id: I5491d48e3d42c37f703600a3dea323146e5ff6d7
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/56223
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-01-29 01:36:17 +00:00
Bobby R. Bruce
7c0c23b2da tests: Use clang-11 for the Kokoro compilation test
We support up to clang-11 which includes some additional checks. It's
better to catch these during the Kokoro/quick tests than during the
nightly compilation tests.

Change-Id: I8076f296875448d39416fecc947f71230ce2ddf7
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/56003
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-01-27 19:15:15 +00:00
Tiago Mück
da41d3eaa4 tests: extend ruby_mem_test
Replace ruby_mem_test by these tests which run different
configurations:

ruby_mem_test-garnet: use Garnet

ruby_mem_test-simple: use SimpleNetwork (same as original ruby_mem_test)

ruby_mem_test-simple-extra: use SimpleNetwork with
--simple-physical-channels option

ruby_mem_test-simple-extra-multicore: same as previous using 4 cores

JIRA: https://gem5.atlassian.net/browse/GEM5-920

Change-Id: I7716cd222dd56ddbf06f53f92ec9b568ed5a182c
Signed-off-by: Tiago Mück <tiago.muck@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/41867
Reviewed-by: Meatboy 106 <garbage2collector@gmail.com>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-01-20 15:26:58 +00:00
Gabe Black
e5187e279a tests: Decrease the iterations of the checkpoint test to 3.
Currently, the test in realview64-simple-atomic-checkpoint.py runs the
default number of checkpoint cycles which is 5. Each of these cycles
takes a long time to run (approximately 5 minutes) which makes this test
take a long time to run to completion. We would get almost all of the
benefit of this test in a fraction of the time if we reduce the number
of iterations down to 3. This still has enough iterations to catch bugs
which would happen in one, a different class of bugs which happen when
checkpointing more than once, and even a third iteration for safety.
Because this test is one of the (if not the) most time consuming test in
the quick tests, reducing its length will significantly improve turn
around time when running all those tests.

That is especially valuable when running the tests multiple times to try
to iterate on a bug, or when sweeping through a series of changes trying
to identify the source of breakages. In cases where we might need to
identify failures which don't effect the end product of a series, ie where
a problem is introduced and then coincidentally fixed in a later change,
this is especially important since every individual change needs to be
checked, not just log(n) of the changes like in a binary search.

Ideally in the future we will also try to figure out why taking and
restoring from checkpoints takes so long so that each iteration of this
test is substantially less expensive. If we do that, we could consider
increasing the iteration count again.

Change-Id: Icfa2a391a4a7457d893f2063fab231d22e572deb
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53123
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com>
2022-01-09 14:10:55 +00:00
Bobby R. Bruce
5e6a561a3f misc: Revert v21.2 specific commits for develop
These changes were made to the release staging branch for the v21.2
release. This commit reverts them for the develop branch.

Change-Id: I9f02470d00d5034a0797f32d4c1fe0e7055860a6
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/54904
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2021-12-28 21:30:21 +00:00
Bobby R. Bruce
b2ffa27f44 tests: Increase Kokoro test timeout to 7 hours
Change-Id: I5a334124cc14d7db3a6227981ed46ae0cc80e558
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/54824
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu>
Maintainer: Bobby Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
2021-12-27 05:58:04 +00:00