Commit Graph

12605 Commits

Author SHA1 Message Date
David Yat Sin e969e01f54 rocr: Perform range based cache invalidates
Invalidate only the address range that covers the newly copied
code-object. This avoids invalidating I$ for old code objects and thus
might increase I$ hit rate.
2025-05-22 18:39:19 -04:00
Vaddireddy, Sushma 7045a4c689 Unit test fix - calculate aggregate sum based on instance size (#410)
* Unit test fix- calculate aggregate sum based on instance size

* Update GRBM instance size

* aggregate sum

---------

Co-authored-by: Sushma Vaddireddy <svaddire@amd.com>
2025-05-22 13:35:38 -07:00
Baraldi, Giovanni 3cb0c87f53 ATT Doc updates. Fix trace-decode return error. (#406)
* Doc updates. Some cleanup.

* Formatting

---------

Co-authored-by: Giovanni Baraldi <gbaraldi@amd.com>
2025-05-22 14:50:45 -05:00
anujshuk-amd ef90bab236 Update transpose-rocprofiler-* tests (#210)
- Updating counters collected and tested for on Navi-based machines
- Update add CMake function to query GPU architectures
- Update decode tests to use new functions

[ROCm/rocprofiler-systems commit: 4c24975626]
2025-05-22 14:04:33 -04:00
anujshuk-amd 4c24975626 Update transpose-rocprofiler-* tests (#210)
- Updating counters collected and tested for on Navi-based machines
- Update add CMake function to query GPU architectures
- Update decode tests to use new functions
2025-05-22 14:04:33 -04:00
Ramakrishnan, Ranjith 1785cff6a5 CMake: Remove file reorganization backward compatibility code (#176)
The feature has already been disabled, and the related source code is no longer required
2025-05-22 09:47:26 -07:00
Philip Yang bd86fb1e63 kfdtest: Add KFDQMTest UserQueueBufValidation
Create CP queue and SDMA queue should fail with invalid queue ring
buffer or ring buffer size.

Test unmap or free queue buffers should fail before queue is destroyed.

Use child process to test unmap CWSR buffer will evict queue.

Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Change-Id: I5dcd51d6b43445d19a986f8b0b82063e20348a5f
2025-05-22 10:06:42 -04:00
Philip Yang 3e6f51b715 libhsakmt: unmap from GPU error handling
If unmap from GPU return failed, for example, unmap user queue buffer
while queue is active, we should not free obj->mapped_node_id_array,
otherwise, the following unmap user queue buffer after queue is
destroyed still return failed.

Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Change-Id: I32aeb18871c2e971d01900d92916c54680f5c9fa
2025-05-22 10:06:42 -04:00
Galantsev, Dmitrii 7b06b778b9 RDCI - Fix misaligned fields
Change-Id: I7914c01b82e7e2fb5c63521d6d4803570447790c
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2025-05-21 19:11:17 -05:00
Galantsev, Dmitrii eff955fdf7 Profiler - Align SMI and Profiler indices
Change-Id: If2bb850ffd1c1b8b16a8f5963a0f6971f82d4863
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2025-05-21 19:11:17 -05:00
Elwazir, Ammar e587a8b23a HSA API Addition in EXT Table (#407)
* HSA API Addition in EXT Table

* Adding the real new API trace capability

* Formatting fix
2025-05-21 18:39:31 -05:00
Apurv Mishra f853dda9ba kfdtest: Disable tests that cause unwanted behavior
disable KFDLocalMemoryTest.Fragmentation and
KFDEventTest.MeasureInterruptConsumption as
part of the  KFD test suite improvement feature

Signed-off-by: Apurv Mishra <Apurv.Mishra@amd.com>
2025-05-21 16:29:15 -04:00
Ben Vanik d54124383f kfdtest: Fix SVM profiler QUEUE_RESTORE parsing 2025-05-21 13:17:25 -04:00
Ben Vanik 1a32392912 rocr: Fix SVM profiler QUEUE_RESTORE parsing 2025-05-21 13:17:25 -04:00
7b30f3f5e26d48061f873d04cc7e1d1f_amdeng 856491944b Add VGPR and SGPR counts to kernel trace file (#371)
Signed-off-by: Tim <Tim.Gu@Amd.com>
Co-authored-by: sonadeem <sohaib.nadeem@amd.com>
2025-05-21 08:55:48 -07:00
Flora Cui 8cf4b7fc05 rocr: try defaultSignal for intercept_queue
if interrupt is not supported

Signed-off-by: Flora Cui <flora.cui@amd.com>
2025-05-21 09:37:47 -04:00
Rawat, Swati 578db226c2 Update README.md (#8)
Updating README to add a note about doc on rocm.docs portal

Co-authored-by: srawat <120587655+SwRaw@users.noreply.github.com>
Co-authored-by: Bhardwaj, Gopesh <Gopesh.Bhardwaj@amd.com>
2025-05-21 14:45:06 +05:30
Rawat, Swati 327442a451 Update README.md (#8)
Updating README to add a note about doc on rocm.docs portal

Co-authored-by: srawat <120587655+SwRaw@users.noreply.github.com>
Co-authored-by: Bhardwaj, Gopesh <Gopesh.Bhardwaj@amd.com>

[ROCm/rocprofiler commit: 578db226c2]
2025-05-21 14:45:06 +05:30
Ramakrishnan, Ranjith d32ff28ebf SWDEV-532478 - Add rocm-core dependency to RPM packages (#67)
rocm-core dependency was missing for rpm packages and fixed the same
2025-05-20 14:41:38 -07:00
David Galiffi 52a132a3d8 Add note about workaround required for older versions of tool. (#209)
Versions prior to ROCm 6.3.1 require that Perfetto UI v46.0 is used to view output files.
For SWDEV-510143

[ROCm/rocprofiler-systems commit: dfbcbee55f]
2025-05-20 17:27:02 -04:00
David Galiffi dfbcbee55f Add note about workaround required for older versions of tool. (#209)
Versions prior to ROCm 6.3.1 require that Perfetto UI v46.0 is used to view output files.
For SWDEV-510143
2025-05-20 17:27:02 -04:00
Yiannis Papadopoulos 700078d335 Fix formatting 2025-05-20 13:59:22 -05:00
Yiannis Papadopoulos c80616d807 rocr/aie: Correct operand count 2025-05-20 13:59:22 -05:00
jamessiddeley-amd ba61cc36f5 Fixed duplicate keys in analysis_configs yamls (#707)
* fixed duplicate keys in analysis_configs yamls

* Fix: removed TODO comment

Signed-off-by: James Siddeley <james.siddeley@amd.com>

---------

Signed-off-by: James Siddeley <james.siddeley@amd.com>

[ROCm/rocprofiler-compute commit: 09b6ef4508]
2025-05-20 13:12:46 -04:00
jamessiddeley-amd 09b6ef4508 Fixed duplicate keys in analysis_configs yamls (#707)
* fixed duplicate keys in analysis_configs yamls

* Fix: removed TODO comment

Signed-off-by: James Siddeley <james.siddeley@amd.com>

---------

Signed-off-by: James Siddeley <james.siddeley@amd.com>
2025-05-20 13:12:46 -04:00
David Yat Sin f011a9506d rocr: Fix doorbell ring
When compiling with -O0, some compilers generate a xchg instruction for
the __atomic_store(...) built-in. Using xchg on MMIO memory is
undefined-behavior and may be ignored on certain CPUs.
2025-05-20 09:19:10 -04:00
Maisam Arif 3f11537401 Updated Maintenance mode notice
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
2025-05-20 01:44:57 -05:00
Madsen, Jonathan 14c2dc55ff [roctx] Python bindings for rocprofiler-sdk-roctx (#402)
* [roctx] Python bindings for rocprofiler-sdk-roctx

* Update CHANGELOG

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2025-05-19 20:02:51 -05:00
Trowbridge, Ian afb27f3f1a Use Internal Correlation ID values for Kernel Rename Feature (#397)
* Updated kernel rename service to use internal correaltion IDs for external correlation IDs and kernel rename values

* Updated for review comments

* Changed if-condition in generateJSON.cpp to check if string view is empty before calling get_entry
2025-05-19 01:34:44 -05:00
Madsen, Jonathan 7166b1ab58 [rocprofv3] Add rocpd output support (part 1: prelude) (#401)
* [rocprofv3] Add rocpd output support (part 1: prelude)

- git submodules for sqlite3, GOTCHA, and pybind11
- HIP stream data
- rocprofiler_query_intercept_table_name(...)
- serialization load
- rocprofiler::sdk::get_perfetto_category(KindT)
- rocprofiler::sdk::parse::strip
- common library updates
  - md5sum
  - hasher
  - simple_timer
  - static_tl_object
  - get_process_start_time_ns(pid_t)
- output library updates
  - node_info
  - file_generator (generator is now virtual base class)
  - stream info updates

* Added submodules

* Code review updates

* Minor unused-but-set-X warning fixes

* Update CI

- install libsqlite3-dev package

* Update CI

- install libsqlite3-dev package

* Fix static thread-local object memory leak

- also fix signal handler chaining

* Remove URL from comment

* Remove page migration exception

* Enable ROCPROFILER_BUILD_SQLITE3 by default

- try find_package(SQLite3) first and then build when ROCPROFILER_BUILD_SQLITE3=ON

* Fix gotcha installation

- make install of target optional

* Validate tracing + counter collection dispatch data

- i.e. correlation ids, thread ids, timestamps

* Make find_package(SQLite3) optional

- ROCm CI does not have SQLite3 dev package installed and cannot build from source (missing tclsh)

* Fixes to tracing + counter collection test

* get_process_start_time_ns update

- original implementation did not work

* Fix pytest-packages test_perfetto_data for counter collection

- erroneous failure when used with same PMC + multiple agents

* cmake policy: option() honors normal variables

- for GOTCHA submodule

* Improve samples/api_buffered_tracing stability

- reduce likelihood of sporadic exception throw

* Update gotcha submodule

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2025-05-18 20:11:26 -05:00
Arif, Maisam 40671be7c9 Revert "Correct the dependencies of rocm_smi package."
This reverts commit 6d53d9f9cf.
2025-05-18 10:34:28 -05:00
Arif, Maisam a0ad4a3fcd Revert "Use devel in RPM package requires field"
This reverts commit cea68cd940.
2025-05-18 10:34:28 -05:00
Arif, Maisam c7797b19a3 Revert "Use the alphabetic 'or' in the CPack RPM package Requires field."
This reverts commit 4d201ad2c2.
2025-05-18 10:32:12 -05:00
Baraldi, Giovanni 65786f619d [RSERP-1802] Add trace decoder to API (#398)
* Add trace decoder to API.

* Cleanup and activity

* Rename

* Minor fix

* Replace tt/TT with thread_trace/THREAD_TRACE

- public API types are not abbreviated

* Fix aliases

* Build system updates

- activate clang-tidy for all subfolders in lib
- fix addition of sources for att-tool

* Fix clang-tidy issues with lib/att-tool/counters.{hpp,cpp}

* Delete counters.cpp

* Formatting

---------

Co-authored-by: Giovanni Baraldi <gbaraldi@amd.com>
Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2025-05-17 12:08:33 -07:00
Ben Richard 4899cfa160 Update illegal character check for profile name (#703)
[ROCm/rocprofiler-compute commit: 41dd4aab90]
2025-05-16 15:45:16 -04:00
Ben Richard 41dd4aab90 Update illegal character check for profile name (#703) 2025-05-16 15:45:16 -04:00
cfallows-amd 72af81c528 Check mode during soc init for roofline (#705)
Check mode before creating roofline object- skip if only printing specs

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

[ROCm/rocprofiler-compute commit: 43dbf38b27]
2025-05-16 12:54:53 -04:00
cfallows-amd 43dbf38b27 Check mode during soc init for roofline (#705)
Check mode before creating roofline object- skip if only printing specs

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
2025-05-16 12:54:53 -04:00
Madsen, Jonathan 3eb921a34c [CI] Disable page-migration tests (#396)
* Disable page-migration tests

* Account for gfx hexadecimal characters

* Update continuous integration action

- remove test exclude for test-page-migration since test is disabled at cmake level

* Fix internal ctest error

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2025-05-16 09:33:46 -07:00
David Galiffi 909602e1f4 Update Dockerfiles (#207)
Add chrpath to dockerfiles

[ROCm/rocprofiler-systems commit: fc08d56fb4]
2025-05-15 21:06:12 -04:00
David Galiffi fc08d56fb4 Update Dockerfiles (#207)
Add chrpath to dockerfiles
2025-05-15 21:06:12 -04:00
Ranjith Ramakrishnan 4d201ad2c2 Use the alphabetic 'or' in the CPack RPM package Requires field.
Using the OR symbol "|" is causing error in cpack
2025-05-15 15:28:26 -07:00
Castillo, Juan 47f80145cb Fix WARNING: AMD GPUs visible, but data is inaccessible (#58)
* [SWDEV-531834] Fix AMD GPUs visible, but data is inaccessible:
- Scans directories under /sys/bus/pci/drivers/amdgpu
- Verifies each device's runtime_status to determine if it's active
- Returns False if any device is not in active state
- Handles permission errors gracefully with proper debug logging
- Includes comments explaining behavior differences between Instinct / NAVI hardware

The default status is set to True, assuming devices are active unless
proven otherwise, which accommodates hardware like some Instinct ASICS
which do not support runtime power management.

Signed-off-by: Juan Castillo <juan.castillo@amd.com>
2025-05-15 14:30:33 -05:00
vedithal-amd 5d03532296 Fix MI350 tests (#706)
- TCC counter collection tests are still failing due to recent
  rocprofiler-sdk change

[ROCm/rocprofiler-compute commit: 7b755fcd86]
2025-05-15 13:37:55 -04:00
vedithal-amd 7b755fcd86 Fix MI350 tests (#706)
- TCC counter collection tests are still failing due to recent
  rocprofiler-sdk change
2025-05-15 13:37:55 -04:00
Pranjal Swarup 3fa24a0012 ROCPROFSYS_AMD_SMI_METRICS visibility (#208)
* Removed advanced category from ROCPROFSYS_AMD_SMI_METRICS to have this property visible with rocprof-sys-avail.

[ROCm/rocprofiler-systems commit: 4c7560c78c]
2025-05-15 13:31:40 -04:00
Pranjal Swarup 4c7560c78c ROCPROFSYS_AMD_SMI_METRICS visibility (#208)
* Removed advanced category from ROCPROFSYS_AMD_SMI_METRICS to have this property visible with rocprof-sys-avail.
2025-05-15 13:31:40 -04:00
Vignesh Edithal 93e36e5491 Add James Siddley to code reviewers
[ROCm/rocprofiler-compute commit: 6522fe954b]
2025-05-15 12:14:39 -04:00
Vignesh Edithal 6522fe954b Add James Siddley to code reviewers 2025-05-15 12:14:39 -04:00
Welton, Benjamin 33e43e66d3 [SDK] Standardize rocprofiler-sdk counter definition YAML schema (#370)
* Convert YAML Format

Convert YAML format and reader to properly read the YAML.

Comparison between output's from the YAML show only changes in ordering
of architectures (and ids).

* Test fixes

* Add script for converting the YAML schema to source/scripts

* Update documentation

* Change the extra counter code block to YAML

* Add missing new line at EOF

* remove name issues

---------

Co-authored-by: Benjamin Welton <bewelton@amd.com>
Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2025-05-14 13:31:51 -05:00