From a814ba15fdf79d6362bba782810d84dda1fd7172 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Pietil=C3=A4?= <> Date: Mon, 2 Feb 2026 11:15:46 -0500 Subject: [PATCH] Add profiling documentation. --- .../images/roofline_8_group_merged.jpg | Bin 0 -> 91153 bytes .../images/roofline_no_group_merging.jpg | Bin 0 -> 86961 bytes docs/profiling/rocprof-compute.md | 139 ++++++++++++++++++ 3 files changed, 139 insertions(+) create mode 100644 docs/profiling/images/roofline_8_group_merged.jpg create mode 100644 docs/profiling/images/roofline_no_group_merging.jpg create mode 100644 docs/profiling/rocprof-compute.md diff --git a/docs/profiling/images/roofline_8_group_merged.jpg b/docs/profiling/images/roofline_8_group_merged.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e71e554d27e21620e9320aae48f01560a1db8d6d GIT binary patch literal 91153 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

Pz*#FcU|Z*-k)S{l{d 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 VG@$s;cmHA?^#3urT{;{4zW_b<$o~KU literal 0 HcmV?d00001 diff --git a/docs/profiling/images/roofline_no_group_merging.jpg b/docs/profiling/images/roofline_no_group_merging.jpg new file mode 100644 index 0000000000000000000000000000000000000000..19eda688894137426bba5b55b714e9e11ebcbe57 GIT binary patch literal 86961 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

tn<-tFSH?I8*QV2W}a*=wez?v}%s8 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 ~/.bashrc +source ~/.bashrc +```` + +You can verify that `rocprof-compute` points to your local build by running + +````bash +rocprof-compute --version +```` + +# Running the profler step + +Run the profiler: + +````bash +rocprof-compute profile -n -- +```` + +For grouped convs, I usually use the CK examples to create an entry point to a single kernel. This corresponds to profiling with command + +````bash +rocprof-compute profile -n grouped_conv_fwd --roofline-data-type FP16 -- ./bin/example_grouped_conv_fwd_xdl_fp16 0 1 0 2 32 32 4 4 3 3 200 200 1 1 1 1 1 1 1 1 +```` + +If you are runnign e.g. multiple version of the same kernel, make sure that the run name (specified by `-n`) +is unique. This allows comparison of two runs later in the analysis stage. + +It it important set the first and third args to zero. These disable result verification and kernel timing. +If timig is enabled, the kernel will be run multiple times during a single example run. +The `rockprof-compute` will internally take care of running the application multiple times to reliable statistics. + +The profiling runs are saved by default in directory where the profiler was executed. The parent directory is +`workloads` which contains all profiler runs in subdirectories corresponding to the run names, e.g., +the example run is loacted at ``workloads\grouped_conv_fwd` + +## Roofline plots + +For the roofline plots, we can specify the data type with flag `--roofline-data-type`. +This flag takes values FP4, FP6, FP8, FP16, BF16, FP32, FP64, I8, I32, I64. +If the roofline data type is notspecified, it defaults to FP32. + +The profiling step can produce a roofline chart to get an idea what is the bottleneck for given kernel and given convolution shape. +The roofline analysis takes into account the various cache level (L1, L2) and the global memory bandwidth. +The roofline plots alone can tell something about the relative performance of kernels. + +**Use case**: Consider a grouped fwd conv problem with small number of channels per group and large image. +This is typically a memory bound problem as we can see from this roofline chart + +![Roofline Chart](./images/roofline_no_group_merging.jpg) + +When we combine multiple conv groups into a single GEMM batch, we can do more meaninful compute per tile, +which moves the problem more into the compute bound regime and improves performance. We can see this directly from the +profiler roofline charts. + +![Roofline Chart](./images/roofline_8_group_merged.jpg) + +# Running the analysis step + +Running the analysis step requires that the data has been collected with the profier step. +To run full analysis, use + +````bash +rocprof-compute analyze -p --output-format txt --output-name +```` + +For example, + +````bash +rocprof-compute analyze -p workloads/grouped_conv_fwd/MI350/ --output-format txt --output-name full-analysis +```` + +This will create a fairly large file that contains all metrics available in `rockprof-compute`. In practice, we +will want to limit to some specific metrics. + +## Analyzing specific metrics + +To get a list of available metrics for given architecture, use `--list-metrics` flag + +````bash +rocprof-compute --list-metrics gfx950 +```` + +This command list all blocks in the analysis, and one limit the analysis to specific blocks for brevity. +To limit the analysis to L1 cache metrics, we run the analysis with only block 13, which corresponds to +instruction cache + +````bash +rocprof-compute analyze -p workloads/grouped_conv_fwd/MI350/ --output-format txt --output-name L1-cache-analysis -b 13 +```` + +## Analyzing two different implementations + +One of the most useful features of `rockprof-compute` is the ability to analyze two different implementations +side-by-side. Assuming we have two implementation that we have profiling and we want to know how they compare +against each other, we can run the analysis as follows + +````bash +rocprof-compute analyze -p -p +```` + +This allows to compare the baseline implementation agains a new implementation. +Running the full analysis allowos to investigate what metrics are changed, and which direction. +The profiler reports absolute differences agains the baseline (first argument), which can be +used to determine where two implementations differ the most. + + +To compare our two different conv implementations in terms of L1 cache efficiency, we can run + +```bash +rocprof-compute analyze -p workloads/no_group_merge/MI350/ -p workloads/8_group_merged/MI350/ -b 13 --output-format txt --output-name L1-cache-comparison +``` + +For LDS utilization and statistics, we can use + +```bash +rocprof-compute analyze -p workloads/no_group_merge/MI350/ -p workloads/8_group_merged/MI350/ -b 12 --output-format txt --output-name LDS-comparison +``` \ No newline at end of file