Hello Tony Gutierrez,
I'd like you to do a code review. Please visit
https://gem5-review.googlesource.com/c/public/gem5/+/29941
to review the following change.
Change subject: arch-gcn3: ensure that atomics follow HSA conventions
......................................................................
arch-gcn3: ensure that atomics follow HSA conventions
Add asserts to make sure atomics are following the HSA conventions
that atomics should be word aligned (i.e., can't be byte aligned)
and should not be misaligned such that a given lane's access
spans multiple cache lines.
Change-Id: Ia48758b9ed96764864234dc607f337e30e287d1c
---
M src/arch/gcn3/gpu_mem_helpers.hh
1 file changed, 6 insertions(+), 0 deletions(-)
diff --git a/src/arch/gcn3/gpu_mem_helpers.hh
b/src/arch/gcn3/gpu_mem_helpers.hh
index 40ca565..562158d 100644
--- a/src/arch/gcn3/gpu_mem_helpers.hh
+++ b/src/arch/gcn3/gpu_mem_helpers.hh
@@ -80,6 +80,12 @@
misaligned_acc = split_addr > vaddr;
if (is_atomic) {
+ // make sure request is word aligned
+ assert((vaddr & 0x3) == 0);
+
+ // a given lane's atomic can't cross cache lines
+ assert(!misaligned_acc);
+
req = std::make_shared<Request>(vaddr, sizeof(T), 0,
gpuDynInst->computeUnit()->masterId(), 0,
gpuDynInst->wfDynId,
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/29941
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: Ia48758b9ed96764864234dc607f337e30e287d1c
Gerrit-Change-Number: 29941
Gerrit-PatchSet: 1
Gerrit-Owner: Anthony Gutierrez <[email protected]>
Gerrit-Reviewer: Tony Gutierrez <[email protected]>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s