From 3289681c373dde79926136942529681d51688414 Mon Sep 17 00:00:00 2001 From: Aaron Barnes <42706182+barnes88@users.noreply.github.com> Date: Tue, 9 Jul 2024 16:12:06 -0400 Subject: [PATCH] Fix stats (#231) * fix shared memory and l1d cache bankconflict stat and add shmem benchmark * this change requires dev branch of app collection --------- Co-authored-by: JRPan <25518778+JRPan@users.noreply.github.com> --- Jenkinsfile | 2 +- util/job_launching/apps/define-all-apps.yml | 7 +++++++ util/job_launching/stats/example_stats.yml | 2 ++ util/plotting/correl_mappings.py | 14 ++++++++++++-- 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 9d3e9d7e2..da62f8689 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -40,7 +40,7 @@ pipeline { source ./gpu-simulator/setup_environment.sh rm -rf ./gpu-app-collection - git clone git@github.com:accel-sim/gpu-app-collection.git + git clone -b dev git@github.com:accel-sim/gpu-app-collection.git source ./gpu-app-collection/src/setup_environment srun -c20 make rodinia_2.0-ft GPU_Microbenchmark -j20 -C ./gpu-app-collection/src ./gpu-app-collection/get_regression_data.sh diff --git a/util/job_launching/apps/define-all-apps.yml b/util/job_launching/apps/define-all-apps.yml index cc3e68d45..76d9585de 100644 --- a/util/job_launching/apps/define-all-apps.yml +++ b/util/job_launching/apps/define-all-apps.yml @@ -92,6 +92,13 @@ GPU_Microbenchmark: - shared_lat: - args: accel-sim-mem: 1G + - shared_bank_conflicts: + ## argument 1 kernel has conflicts + - args: 1 + accel-sim-mem: 1G + ## argument 2 kernel doesn't have conflicts + - args: 2 + accel-sim-mem: 1G - MaxFlops: - args: accel-sim-mem: 1G diff --git a/util/job_launching/stats/example_stats.yml b/util/job_launching/stats/example_stats.yml index 5b3a52351..768b0680d 100644 --- a/util/job_launching/stats/example_stats.yml +++ b/util/job_launching/stats/example_stats.yml @@ -24,6 +24,8 @@ collect_aggregate: - 'total dram reads\s*=\s*(.*)' - 'total dram writes\s*=\s*(.*)' - 'kernel_launch_uid\s*=\s*(.*)' + - 'gpgpu_n_shmem_bkconflict\s*=\s*(.*)' + - 'gpgpu_n_l1cache_bkconflict\s*=\s*(.*)' # These stats are reset each kernel and should not be diff'd diff --git a/util/plotting/correl_mappings.py b/util/plotting/correl_mappings.py index e474f3d8a..aa2e958e1 100644 --- a/util/plotting/correl_mappings.py +++ b/util/plotting/correl_mappings.py @@ -512,8 +512,18 @@ plottype="log", stattype="counter", ), - CorrelStat( - chart_name="DRAM Reads", + CorrelStat(chart_name="Shared Memory Bank Conflicts", + plotfile="shmem-bank-conflict", + hw_eval="np.average(hw[\"l1tex__data_bank_conflicts_pipe_lsu_mem_shared_op_ld.sum\"])\ + + np.average(hw[\"l1tex__data_bank_conflicts_pipe_lsu_mem_shared_op_st.sum\"])", + hw_error=None, + sim_eval="float(sim[\"gpgpu_n_shmem_bkconflict\s*=\s*(.*)\"])", + hw_name="all", + drophwnumbelow=0, + plottype="log", + stattype="counter" + ), + CorrelStat(chart_name="DRAM Reads", plotfile="dram-read-transactions", hw_eval='np.average(hw["dram__sectors_read.sum"])', hw_error=None,