Update to use rocprofiler-sdk (#55)
- Renames the CMake option "ROCPROFSYS_USE_HIP" to "ROCPROFSYS_USE_ROCM" - Remove the "ROCPROFSYS_USE_ROCM_SMI option. Controlled with the "ROCPROFSYS_USE_ROCM" option, instead. - Runtime configuration can still toggle ROCPROFSYS_USE_ROCM_SMI to disable the sampling. - Rename ROCPROFSYS_HIP_VERSION macro to ROCPROFSYS_ROCM_VERSION and remove blocks for `ROCPROFSYS_ROCM_VERSION < 60000` - Remove ROCPROFSYS_USE_ROCTRACER and ROCPROFSYS_USE_ROCPROFILER - Update test cases - Update docker files and workflows to install cmake 3.21, which is required for the rocprofiler-sdk findPackage script. - Removed rocm-6.2 from workflows due to a rocprofiler-sdk API change.
This commit is contained in:
@@ -228,7 +228,7 @@ Generating a default configuration file
|
||||
ROCPROFSYS_PROFILE = false
|
||||
ROCPROFSYS_USE_SAMPLING = false
|
||||
ROCPROFSYS_USE_PROCESS_SAMPLING = true
|
||||
ROCPROFSYS_USE_ROCTRACER = true
|
||||
ROCPROFSYS_USE_ROCM = true
|
||||
ROCPROFSYS_USE_ROCM_SMI = true
|
||||
ROCPROFSYS_USE_KOKKOSP = false
|
||||
ROCPROFSYS_USE_CODE_COVERAGE = false
|
||||
@@ -248,9 +248,6 @@ Generating a default configuration file
|
||||
ROCPROFSYS_PERFETTO_FILE = perfetto-trace.proto
|
||||
ROCPROFSYS_PERFETTO_FILL_POLICY = discard
|
||||
ROCPROFSYS_PERFETTO_SHMEM_SIZE_HINT_KB = 4096
|
||||
ROCPROFSYS_ROCTRACER_HSA_ACTIVITY = false
|
||||
ROCPROFSYS_ROCTRACER_HSA_API = false
|
||||
ROCPROFSYS_ROCTRACER_HSA_API_TYPES =
|
||||
ROCPROFSYS_SAMPLING_CPUS =
|
||||
ROCPROFSYS_SAMPLING_DELAY = 0.5
|
||||
ROCPROFSYS_SAMPLING_FREQ = 10
|
||||
@@ -363,13 +360,10 @@ Viewing the setting descriptions
|
||||
| ROCPROFSYS_PERFETTO_FILL_POLICY | Behavior when perfetto buffer is ful... |
|
||||
| ROCPROFSYS_PERFETTO_SHMEM_SIZE_HINT_KB | Hint for shared-memory buffer size i... |
|
||||
| ROCPROFSYS_PRECISION | Set the global output precision for ... |
|
||||
| ROCPROFSYS_ROCTRACER_HSA_ACTIVITY | Enable HSA activity tracing support |
|
||||
| ROCPROFSYS_ROCTRACER_HSA_API | Enable HSA API tracing support |
|
||||
| ROCPROFSYS_ROCTRACER_HSA_API_TYPES | HSA API type to collect |
|
||||
| ROCPROFSYS_SAMPLING_CPUS | CPUs to collect frequency informatio... |
|
||||
| ROCPROFSYS_SAMPLING_DELAY | Number of seconds to wait before the... |
|
||||
| ROCPROFSYS_SAMPLING_FREQ | Number of software interrupts per se... |
|
||||
| ROCPROFSYS_SAMPLING_GPUS | Devices to query when ROCPROFSYS_USE_... |
|
||||
| ROCPROFSYS_SAMPLING_GPUS | Devices to query when ROCPROFSYS_USE... |
|
||||
| ROCPROFSYS_SCIENTIFIC | Set the global numerical reporting t... |
|
||||
| ROCPROFSYS_STRICT_CONFIG | Throw errors for unknown setting nam... |
|
||||
| ROCPROFSYS_SUPPRESS_CONFIG | Disable processing of setting config... |
|
||||
@@ -391,13 +385,13 @@ Viewing the setting descriptions
|
||||
| ROCPROFSYS_TRACE | Enable perfetto backend |
|
||||
| ROCPROFSYS_USE_PID | Enable tagging filenames with proces... |
|
||||
| ROCPROFSYS_USE_ROCM_SMI | Enable sampling GPU power, temp, uti... |
|
||||
| ROCPROFSYS_USE_ROCTRACER | Enable ROCM tracing |
|
||||
| ROCPROFSYS_USE_ROCM | Enable ROCM tracing |
|
||||
| ROCPROFSYS_USE_SAMPLING | Enable statistical sampling of call-... |
|
||||
| ROCPROFSYS_USE_PROCESS_SAMPLING | Enable a background thread which sam... |
|
||||
| ROCPROFSYS_PROFILE | Enable timemory backend |
|
||||
| ROCPROFSYS_VERBOSE | Verbosity level |
|
||||
| ROCPROFSYS_WIDTH | Set the global output width for comp... |
|
||||
|-----------------------------------------|-----------------------------------------|
|
||||
|------------------------------------------|-----------------------------------------|
|
||||
|
||||
Viewing components
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -268,8 +268,6 @@ The following snippets show how ``rocprof-sys-sample`` runs with various environ
|
||||
|
||||
$ rocprof-sys-sample -- ./parallel-overhead-locks 30 4 100
|
||||
|
||||
HSA_TOOLS_LIB=/opt/rocprofiler-systems/lib/librocprof-sys-dl.so.1.7.1
|
||||
HSA_TOOLS_REPORT_LOAD_FAILURE=1
|
||||
LD_PRELOAD=/opt/rocprofiler-systems/lib/librocprof-sys-dl.so.1.7.1
|
||||
ROCPROFSYS_USE_PROCESS_SAMPLING=false
|
||||
ROCPROFSYS_USE_SAMPLING=true
|
||||
@@ -283,8 +281,6 @@ The following snippets show how ``rocprof-sys-sample`` runs with various environ
|
||||
|
||||
$ rocprof-sys-sample -PTDH -I all -- ./parallel-overhead-locks 30 4 100
|
||||
|
||||
HSA_TOOLS_LIB=/opt/rocprofiler-systems/lib/librocprof-sys-dl.so.1.7.1
|
||||
HSA_TOOLS_REPORT_LOAD_FAILURE=1
|
||||
KOKKOS_PROFILE_LIBRARY=/opt/rocprofiler-systems/lib/librocprof-sys.so.1.7.1
|
||||
LD_PRELOAD=/opt/rocprofiler-systems/lib/librocprof-sys-dl.so.1.7.1
|
||||
ROCPROFSYS_CPU_FREQ_ENABLED=true
|
||||
@@ -298,9 +294,7 @@ The following snippets show how ``rocprof-sys-sample`` runs with various environ
|
||||
ROCPROFSYS_USE_PROCESS_SAMPLING=true
|
||||
ROCPROFSYS_USE_RCCLP=true
|
||||
ROCPROFSYS_USE_ROCM_SMI=true
|
||||
ROCPROFSYS_USE_ROCPROFILER=true
|
||||
ROCPROFSYS_USE_ROCTRACER=true
|
||||
ROCPROFSYS_USE_ROCTX=true
|
||||
ROCPROFSYS_USE_ROCM=true
|
||||
ROCPROFSYS_USE_SAMPLING=true
|
||||
ROCPROFSYS_PROFILE=true
|
||||
OMP_TOOL_LIBRARIES=/opt/rocprofiler-systems/lib/librocprof-sys-dl.so.1.7.1
|
||||
@@ -330,9 +324,7 @@ The following snippets show how ``rocprof-sys-sample`` runs with various environ
|
||||
ROCPROFSYS_USE_PROCESS_SAMPLING=true
|
||||
ROCPROFSYS_USE_RCCLP=false
|
||||
ROCPROFSYS_USE_ROCM_SMI=false
|
||||
ROCPROFSYS_USE_ROCPROFILER=false
|
||||
ROCPROFSYS_USE_ROCTRACER=false
|
||||
ROCPROFSYS_USE_ROCTX=false
|
||||
ROCPROFSYS_USE_ROCM=false
|
||||
ROCPROFSYS_USE_SAMPLING=true
|
||||
ROCPROFSYS_PROFILE=true
|
||||
...
|
||||
@@ -363,9 +355,7 @@ Here is the full output from the previous
|
||||
ROCPROFSYS_USE_PROCESS_SAMPLING=true
|
||||
ROCPROFSYS_USE_RCCLP=false
|
||||
ROCPROFSYS_USE_ROCM_SMI=false
|
||||
ROCPROFSYS_USE_ROCPROFILER=false
|
||||
ROCPROFSYS_USE_ROCTRACER=false
|
||||
ROCPROFSYS_USE_ROCTX=false
|
||||
ROCPROFSYS_USE_ROCM=false
|
||||
ROCPROFSYS_USE_SAMPLING=true
|
||||
[rocprof-sys][dl][1785877] rocprofsys_main
|
||||
[rocprof-sys][1785877][rocprofsys_init_tooling] Instrumentation mode: Sampling
|
||||
|
||||
+15
-17
@@ -241,8 +241,8 @@ Installing ROCm Systems Profiler
|
||||
-----------------------------------
|
||||
|
||||
ROCm Systems Profiler has CMake configuration options for MPI support (``ROCPROFSYS_USE_MPI`` or
|
||||
``ROCPROFSYS_USE_MPI_HEADERS``), HIP kernel tracing (``ROCPROFSYS_USE_ROCTRACER``),
|
||||
ROCm device sampling (``ROCPROFSYS_USE_ROCM_SMI``), OpenMP-Tools (``ROCPROFSYS_USE_OMPT``),
|
||||
``ROCPROFSYS_USE_MPI_HEADERS``),
|
||||
ROCm tracing and sampling (``ROCPROFSYS_USE_ROCM``), OpenMP-Tools (``ROCPROFSYS_USE_OMPT``),
|
||||
hardware counters via PAPI (``ROCPROFSYS_USE_PAPI``), among other features.
|
||||
Various additional features can be enabled via the
|
||||
``TIMEMORY_USE_*`` `CMake options <https://timemory.readthedocs.io/en/develop/installation.html#cmake-options>`_.
|
||||
@@ -256,22 +256,20 @@ in `the Perfetto UI <https://ui.perfetto.dev>`_.
|
||||
.. code-block:: shell
|
||||
|
||||
git clone https://github.com/ROCm/rocprofiler-systems.git rocprof-sys-source
|
||||
cmake \
|
||||
-B rocprof-sys-build \
|
||||
cmake \
|
||||
-B rocprof-sys-build \
|
||||
-D CMAKE_INSTALL_PREFIX=/opt/rocprofiler-systems \
|
||||
-D ROCPROFSYS_USE_HIP=ON \
|
||||
-D ROCPROFSYS_USE_ROCM_SMI=ON \
|
||||
-D ROCPROFSYS_USE_ROCTRACER=ON \
|
||||
-D ROCPROFSYS_USE_PYTHON=ON \
|
||||
-D ROCPROFSYS_USE_OMPT=ON \
|
||||
-D ROCPROFSYS_USE_MPI_HEADERS=ON \
|
||||
-D ROCPROFSYS_BUILD_PAPI=ON \
|
||||
-D ROCPROFSYS_BUILD_LIBUNWIND=ON \
|
||||
-D ROCPROFSYS_BUILD_DYNINST=ON \
|
||||
-D DYNINST_BUILD_TBB=ON \
|
||||
-D DYNINST_BUILD_BOOST=ON \
|
||||
-D DYNINST_BUILD_ELFUTILS=ON \
|
||||
-D DYNINST_BUILD_LIBIBERTY=ON \
|
||||
-D ROCPROFSYS_USE_ROCM=ON \
|
||||
-D ROCPROFSYS_USE_PYTHON=ON \
|
||||
-D ROCPROFSYS_USE_OMPT=ON \
|
||||
-D ROCPROFSYS_USE_MPI_HEADERS=ON \
|
||||
-D ROCPROFSYS_BUILD_PAPI=ON \
|
||||
-D ROCPROFSYS_BUILD_LIBUNWIND=ON \
|
||||
-D ROCPROFSYS_BUILD_DYNINST=ON \
|
||||
-D DYNINST_BUILD_TBB=ON \
|
||||
-D DYNINST_BUILD_BOOST=ON \
|
||||
-D DYNINST_BUILD_ELFUTILS=ON \
|
||||
-D DYNINST_BUILD_LIBIBERTY=ON \
|
||||
rocprof-sys-source
|
||||
cmake --build rocprof-sys-build --target all --parallel 8
|
||||
cmake --build rocprof-sys-build --target install
|
||||
|
||||
Reference in New Issue
Block a user