Hoa Nguyen has submitted this change. (
https://gem5-review.googlesource.com/c/public/gem5/+/68877?usp=email )
Change subject: stdlib: use atomic_noncaching when using AtomicSimpleCPU
with Ruby
......................................................................
stdlib: use atomic_noncaching when using AtomicSimpleCPU with Ruby
mem_mode is supposed to be atomic_noncaching when running
AtomicSimpleCPU with Ruby cache.
Change-Id: Icb419f9370038f5c1f80dd879b187338279a5b93
Signed-off-by: Hoa Nguyen <hoangu...@ucdavis.edu>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/68877
Reviewed-by: Jason Lowe-Power <power...@gmail.com>
Maintainer: Jason Lowe-Power <power...@gmail.com>
Tested-by: kokoro <noreply+kok...@google.com>
---
M src/python/gem5/components/processors/base_cpu_processor.py
M src/python/gem5/components/processors/simple_switchable_processor.py
2 files changed, 11 insertions(+), 0 deletions(-)
Approvals:
Jason Lowe-Power: Looks good to me, approved; Looks good to me, approved
kokoro: Regressions pass
diff --git a/src/python/gem5/components/processors/base_cpu_processor.py
b/src/python/gem5/components/processors/base_cpu_processor.py
index d311a0f..9a75615 100644
--- a/src/python/gem5/components/processors/base_cpu_processor.py
+++ b/src/python/gem5/components/processors/base_cpu_processor.py
@@ -97,6 +97,7 @@
"'atomic_noncaching' memory mode. This will skip
caching "
"completely."
)
+ board.set_mem_mode(MemMode.ATOMIC_NONCACHING)
else:
board.set_mem_mode(MemMode.ATOMIC)
else:
diff --git
a/src/python/gem5/components/processors/simple_switchable_processor.py
b/src/python/gem5/components/processors/simple_switchable_processor.py
index 56603fa..e397841 100644
--- a/src/python/gem5/components/processors/simple_switchable_processor.py
+++ b/src/python/gem5/components/processors/simple_switchable_processor.py
@@ -103,6 +103,16 @@
def incorporate_processor(self, board: AbstractBoard) -> None:
super().incorporate_processor(board=board)
+ if (
+ board.get_cache_hierarchy().is_ruby()
+ and self._mem_mode == MemMode.ATOMIC
+ ):
+ warn(
+ "Using an atomic core with Ruby will result in "
+ "'atomic_noncaching' memory mode. This will skip caching "
+ "completely."
+ )
+ self._mem_mode = MemMode.ATOMIC_NONCACHING
board.set_mem_mode(self._mem_mode)
def switch(self):
--
To view, visit
https://gem5-review.googlesource.com/c/public/gem5/+/68877?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: Icb419f9370038f5c1f80dd879b187338279a5b93
Gerrit-Change-Number: 68877
Gerrit-PatchSet: 4
Gerrit-Owner: Hoa Nguyen <hoangu...@ucdavis.edu>
Gerrit-Reviewer: Bobby Bruce <bbr...@ucdavis.edu>
Gerrit-Reviewer: Hoa Nguyen <hoangu...@ucdavis.edu>
Gerrit-Reviewer: Jason Lowe-Power <power...@gmail.com>
Gerrit-Reviewer: kokoro <noreply+kok...@google.com>
Gerrit-MessageType: merged
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org