CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
76 lines
2.8 KiB
ReStructuredText
76 lines
2.8 KiB
ReStructuredText
.. meta::
|
|
:description: What is ROCm Compute Profiler?
|
|
:keywords: Omniperf, ROCm, profiler, tool, Instinct, accelerator, AMD
|
|
|
|
******************************
|
|
What is ROCm Compute Profiler?
|
|
******************************
|
|
|
|
ROCm Compute Profiler is a kernel-level profiling tool for machine learning and high
|
|
performance computing (HPC) workloads running on AMD Instinct™ GPUs.
|
|
|
|
AMD Instinct MI-Series GPUs are data center-class GPUs designed for
|
|
compute and have some graphics capabilities disabled or removed.
|
|
ROCm Compute Profiler primarily targets use with
|
|
:doc:`GPUs in the AMD Instinct MI300, MI200, and MI100 Series <rocm:conceptual/gpu-arch>`.
|
|
Development is in progress to support Radeon™ (RDNA) GPUs.
|
|
|
|
ROCm Compute Profiler is built on top of :doc:`ROCprofiler-SDK <rocprofiler-sdk:index>` to
|
|
monitor hardware performance counters.
|
|
|
|
.. _high-level-design:
|
|
|
|
High-level design
|
|
=================
|
|
|
|
The architecture of ROCm Compute Profiler consists of three major components shown in the
|
|
following diagram.
|
|
|
|
Core ROCm Compute Profiler
|
|
--------------------------
|
|
|
|
Acquires raw performance counters via application replay using
|
|
:doc:`ROCprofiler-SDK <rocprofiler-sdk:index>`. See
|
|
:ref:`core-install-rocprof-var` for details on the profiling backends and the
|
|
native counter collection tool. Counters are stored in a
|
|
comma-separated-values format for further
|
|
:doc:`analysis <how-to/analyze/mode>`. It runs a set of accelerator-specific
|
|
micro-benchmarks to acquire hierarchical roofline data. The roofline model is
|
|
not available on accelerators pre-MI200.
|
|
|
|
ROCm Compute Profiler standalone GUI analyzer (experimental)
|
|
-------------------------------------------------------------
|
|
|
|
ROCm Compute Profiler provides a :doc:`standalone GUI <how-to/analyze/standalone-gui>` to
|
|
enable basic performance analysis.
|
|
|
|
Features
|
|
========
|
|
|
|
ROCm Compute Profiler offers comprehensive profiling based on all available hardware counters
|
|
for the target accelerator. It delivers advanced performance analysis features,
|
|
such as system Speed-of-Light (SOL) and hardware block-level SOL evaluations.
|
|
Additionally, ROCm Compute Profiler provides in-depth memory chart analysis, roofline
|
|
analysis, baseline comparisons, and more, ensuring a thorough understanding of
|
|
system performance.
|
|
|
|
ROCm Compute Profiler supports several analysis options. See
|
|
:doc:`analyze mode </how-to/analyze/mode>` for the full list and guidance on
|
|
choosing between them.
|
|
|
|
The following list describes ROCm Compute Profiler's features at a high level.
|
|
|
|
* :doc:`Support for AMD Instinct MI300, MI200, and MI100 accelerators <reference/compatible-accelerators>`
|
|
|
|
* :ref:`Filtering <filtering>` to reduce profiling time
|
|
|
|
* Filtering by dispatch
|
|
|
|
* Filter by kernel
|
|
|
|
* Filtering by GPU ID
|
|
|
|
* :ref:`Baseline comparisons <analysis-baseline-comparison>`
|
|
|
|
* :ref:`Multiple normalizations <normalization-units>`
|