Mesa (master): aco: simplify consecutive ordered vmem/lds writes optimization

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed May 13 12:38:20 UTC 2020


Module: Mesa
Branch: master
Commit: 0c7bed72f7948d51a2109f181e7a2d3c77dbd19e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0c7bed72f7948d51a2109f181e7a2d3c77dbd19e

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Thu May  7 15:02:20 2020 +0100

aco: simplify consecutive ordered vmem/lds writes optimization

This was unnecessary and messed with statistics

Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4949>

---

 src/amd/compiler/aco_insert_waitcnt.cpp | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/src/amd/compiler/aco_insert_waitcnt.cpp b/src/amd/compiler/aco_insert_waitcnt.cpp
index e4087e7add5..4a8596b5af8 100644
--- a/src/amd/compiler/aco_insert_waitcnt.cpp
+++ b/src/amd/compiler/aco_insert_waitcnt.cpp
@@ -402,22 +402,14 @@ wait_imm check_instr(Instruction* instr, wait_ctx& ctx)
             continue;
 
          /* Vector Memory reads and writes return in the order they were issued */
-         if (instr->isVMEM() && ((it->second.events & vm_events) == event_vmem)) {
-            it->second.remove_counter(counter_vm);
-            if (!it->second.counters)
-               it = ctx.gpr_map.erase(it);
+         if (instr->isVMEM() && ((it->second.events & vm_events) == event_vmem))
             continue;
-         }
 
          /* LDS reads and writes return in the order they were issued. same for GDS */
          if (instr->format == Format::DS) {
             bool gds = static_cast<DS_instruction*>(instr)->gds;
-            if ((it->second.events & lgkm_events) == (gds ? event_gds : event_lds)) {
-               it->second.remove_counter(counter_lgkm);
-               if (!it->second.counters)
-                  it = ctx.gpr_map.erase(it);
+            if ((it->second.events & lgkm_events) == (gds ? event_gds : event_lds))
                continue;
-            }
          }
 
          wait.combine(it->second.imm);



More information about the mesa-commit mailing list