diff --git a/CHANGELOG.md b/CHANGELOG.md index 85b1339e10..84b2004b05 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -208,6 +208,8 @@ Full documentation for ROCprofiler-SDK is available at [rocm.docs.amd.com/projec - Fixed potential data race in rocprofiler-sdk double buffering scheme - Usage of std::regex in core rocprofiler-sdk library which causes segfaults/exceptions when used under dual ABI - Fixed perfetto counter collection by introducing per dispatch accumulation. +- Fixed queue preemption error and HSA_STATUS_ERROR_INVALID_PACKET_FORMAT error for stochastic PC-sampling for MI300X, leading to more stable runs. +- Fixed the system hang issue for host-trap PC-sampling on MI300X. ### Removed diff --git a/README.md b/README.md index f391c97236..921d54e961 100644 --- a/README.md +++ b/README.md @@ -97,7 +97,7 @@ Please report issues on GitHub OR send an email to [!WARNING] > The latest mainline version of AQLprofile can be found at [https://repo.radeon.com/rocm/misc/aqlprofile/](https://repo.radeon.com/rocm/misc/aqlprofile/). However, it's important to note that updates to the public AQLProfile may not occur as frequently as updates to the rocprofiler-sdk. This discrepancy could lead to a potential mismatch between the AQLprofile binary and the rocprofiler-sdk source. diff --git a/source/docs/how-to/using-pc-sampling.rst b/source/docs/how-to/using-pc-sampling.rst index f8dc0d4a6f..10e82dfa53 100644 --- a/source/docs/how-to/using-pc-sampling.rst +++ b/source/docs/how-to/using-pc-sampling.rst @@ -49,7 +49,24 @@ The output lists if ``rocprofv3`` supports PC sampling on the GPU and the suppor The preceding output shows that the GPU supports PC sampling with the ``ROCPROFILER_PC_SAMPLING_METHOD_HOST_TRAP`` method and the ``ROCPROFILER_PC_SAMPLING_UNIT_TIME`` unit. The minimum and maximum intervals are also displayed. -Based on the preceding configuration, you can use the following command to profile the application using PC sampling: +.. note:: + Important firmware fixes to host-trap and stochastic PC-sampling for AMD Instinct MI300X have been made in ROCm 7.0. + To ensure that you have the latest fixes, check if you have the correct firmware versions installed: + + For host-trap PC-sampling on MI300X: PSP TOS Firmware >= version 00.36.02.59 or 0x00360259 + For stochastic PC-sampling on MI300X as described in the following section: MEC Firmware feature version: 50, firmware version >= 0x0000001a + +To check the firmware versions, use: + +.. code-block:: bash + + # To check PSP TOS Firmware: + sudo cat /sys/kernel/debug/dri/0/amdgpu_firmware_info | grep SOS + + # To check MEC Firmware: + sudo cat /sys/kernel/debug/dri/1/amdgpu_firmware_info | grep MEC + +Based on the available PC-sampling configurations, use the following command to profile the application using PC-sampling: .. code-block:: bash