From 62d3c0018c4b147aba09ba7a57e983a428944252 Mon Sep 17 00:00:00 2001 From: Giovanni LB Date: Sun, 18 Jun 2023 18:09:33 -0300 Subject: [PATCH] SWDEV-406042: Updated readme and changelog Change-Id: If67e96f898f7eae041c879ad0bee278badc8681f [ROCm/rocprofiler commit: a1eb64603ba4d76c230d43672b2c281217fb7683] --- projects/rocprofiler/CHANGELOG.md | 5 +---- projects/rocprofiler/README.md | 16 ++++++++++------ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/projects/rocprofiler/CHANGELOG.md b/projects/rocprofiler/CHANGELOG.md index 7acc649023..c7bf30f5bc 100644 --- a/projects/rocprofiler/CHANGELOG.md +++ b/projects/rocprofiler/CHANGELOG.md @@ -221,10 +221,7 @@ The resulting `a.out` will depend on ## ROCprofiler for rocm 5.7.0 ### Navi support Rocprofiler for ROCm 5.7 added support for counter collection (PMC) and advanced thread tracing (ATT) for Navi21 and Navi31 GPUs. -- On Navi, specially Navi31, counter collection requires the GPU to be in a stable power state. See README.md for instructions. -- Navi does not support streaming SQ counters and ATT at the same time, unlike GFX9. -- On Navi ATT, "att: target_cu" indexes the WGP and the SIMD_MASK parameter is actually the SIMD_ID, in the range [0,3]. -- HIP RT in ATT not yet supported. +- On Navi3x, counter collection requires the GPU to be in a stable power state. See README.md for instructions. HIP RT in ATT not yet supported. ### Changed - ATT analysis will not run by default. For ATT to have the same behaviour as 5.5, use --plugin att --mode network ### Optimized diff --git a/projects/rocprofiler/README.md b/projects/rocprofiler/README.md index 530aae1fe5..7a906eed32 100644 --- a/projects/rocprofiler/README.md +++ b/projects/rocprofiler/README.md @@ -236,15 +236,19 @@ The user has two options for building: # app_relative_path is the path for the application binary # Mode: # - Network: opens the server with the browser UI. - # att needs 2 ports opened (8000, 18000), In case the browser is running on a different machine. + # att needs 2 ports available (e.g. 8000, 18000). There is an option (default: --ports "8000,18000") option to change these. + # In case the browser is running on a different machine, port forwarding can be done with ssh -L 8000:localhost:8000 . # - File: dumps the json files to disk, it can be used to quickly verify if there is anything wrong with the data. - # - Off runs collection but not analysis/parsing. So it can be later used on another system to be viewed. + # Run python3 httpserver.py from within the generated ui/ folder to view the trace. The folder can be copied to another machine, and will run without rocm. + # - Off runs collection but not analysis/parsing. So it can be later viewed another time and/or system. # input.txt gives flexibility to to target the compute unit and provide filters. # input.txt contents: - # TARGET_CU=1 // or some other CU [0,15] - # SE_MASK=0x1 // bitmask of shader engines. The fewer, the easier on the hardware. Default enables all 24 because SE_MASK code is recent. - # SIMD_MASK=0xF // bitmask of SIMDs, there are four in GFX9. - # samples/att.txt is having an example on how to right input file for ATT + # TARGET_CU=1 // or some other CU [0,15] - WGP for Navi + # SE_MASK=0x1 // bitmask of shader engines. The fewer, the easier on the hardware. Default enables all shader engines. + # SIMD_MASK=0xF // There are four SIMDs. GFX9: bitmask of SIMDs. Navi: SIMD Index [0-3]. + # PERFCOUNTERS_COL_PERIOD=0x3 // Multiplier period for counter collection [0~31]. GFX9 only. + # PERFCOUNTER= // Add a SQ counter to be collected with ATT; period defined by PERFCOUNTERS_COL_PERIOD. GFX9 only. + # samples/att.txt is the simplest input file for ATT ``` - Plugin Support: We have a template for adding new plugins. New plugins can be written on top of rocprofv2 to support the desired output format using include/rocprofiler/v2/rocprofiler_plugins.h header file. These plugins are modular in nature and can easily be decoupled from the code based on need. E.g.