Commit Graph

13501 Commits

Author SHA1 Message Date
Giovanni LB 76e25cff42 Output GPU index for kernel.txt files
Change-Id: Ib32e051bd035c0ecd30ba79b347fd65fe289c3fb


[ROCm/rocprofiler commit: 71dcc432da]
2024-10-25 19:41:19 -04:00
Ben Richard b0c7f78ca6 Add broken mclk workaround for all arch (#453)
* Check for missing mclk, use hard-coded values if needed

Signed-off-by: benrichard-amd <ben.richard@amd.com>

* Fix typo

Signed-off-by: benrichard-amd <ben.richard@amd.com>

---------

Signed-off-by: benrichard-amd <ben.richard@amd.com>

[ROCm/rocprofiler-compute commit: 2de2faf944]
2024-10-25 17:13:10 -05:00
Ben Richard 2de2faf944 Add broken mclk workaround for all arch (#453)
* Check for missing mclk, use hard-coded values if needed

Signed-off-by: benrichard-amd <ben.richard@amd.com>

* Fix typo

Signed-off-by: benrichard-amd <ben.richard@amd.com>

---------

Signed-off-by: benrichard-amd <ben.richard@amd.com>
2024-10-25 17:13:10 -05:00
Benjamin Welton 48fe6573a4 SDK: counter collection serialization per device (#1157)
Migrates profiler_serializer class in QueueController to have an instance per-agent instead of one globally. Other changes in this commit are to allow for maps of the queues associated with each agent to be passed to profiler_serializer when it is turned on/off. Existing test cases cover whether or not the kernels are serialized (multistream app). New test case added to show that this serialization only occurs on a per device level with a kernel launched on one device waiting for a value to be set on the other.

[ROCm/rocprofiler-sdk commit: 4a5b1d98c2]
2024-10-25 13:13:36 -07:00
Benjamin Welton 4a5b1d98c2 SDK: counter collection serialization per device (#1157)
Migrates profiler_serializer class in QueueController to have an instance per-agent instead of one globally. Other changes in this commit are to allow for maps of the queues associated with each agent to be passed to profiler_serializer when it is turned on/off. Existing test cases cover whether or not the kernels are serialized (multistream app). New test case added to show that this serialization only occurs on a per device level with a kernel launched on one device waiting for a value to be set on the other.
2024-10-25 13:13:36 -07:00
Jonathan R. Madsen 6752f1ea9b rocprofv3: stabilize rocprofv3 summary tests (#1161)
* Update tests/bin/transpose/transpose.cpp

- add hipMemGetInfo call to display the available vs. total memory on the GPU

* Update tests/rocprofv3/summary/validate.py

- Updated test_summary_display_data after addition of hipMemGetInfo to transpose test exe

* Tweak code coverage comment uploading

- create unique orphan branch per PR
- reduce quality of PNG files (85 -> 70)

* Revert some of code coverage comment uploading

- remove creation of unique orphan branch per PR

* Tweak code coverage comment uploading

- create unique orphan branch per PR

[ROCm/rocprofiler-sdk commit: 5e1643cf81]
2024-10-25 14:14:59 -05:00
Jonathan R. Madsen 5e1643cf81 rocprofv3: stabilize rocprofv3 summary tests (#1161)
* Update tests/bin/transpose/transpose.cpp

- add hipMemGetInfo call to display the available vs. total memory on the GPU

* Update tests/rocprofv3/summary/validate.py

- Updated test_summary_display_data after addition of hipMemGetInfo to transpose test exe

* Tweak code coverage comment uploading

- create unique orphan branch per PR
- reduce quality of PNG files (85 -> 70)

* Revert some of code coverage comment uploading

- remove creation of unique orphan branch per PR

* Tweak code coverage comment uploading

- create unique orphan branch per PR
2024-10-25 14:14:59 -05:00
German Andryeyev 0fc7369ba5 rocr: Disable WaitAny() in AsyncEventsLoop()
- Add the new path to avoid WaitAny() calls  in AsyncEventsLoopp() with
HSA_WAIT_ANY_DEBUG key. The new path is selected by default.
The optimizaiton combines all logic of WaitAny() in a single processing loop
and avoids extra memory allocations or ref counting.  Also it won't spin
on the CPU if all events are busy.

Change-Id: I197ce60d0d023fbb672f700d6e87702686f1f55a
2024-10-25 14:37:02 -04:00
David Yat Sin d90fbee9c4 rocr: find first dispatch pkt that needs scratch
On GPUs where EOP is handled in asic, the read_dispatch_id is not always
updated after each packet. Look for the first dispatch packet that needs
scratch memory before allocating scratch.

Change-Id: Ibf4b4b485f99bf2fabfe48e9609ca99111fdafbe
2024-10-25 14:36:40 -04:00
Jonathan R. Madsen 07f698a532 CMake: Consistently name CMake Targets (#1082)
* Change all rocprofiler-X target names to rocprofiler-sdk-X

* Update rocprofiler-sdk-config.cmake

- fix install tree target names
- simplify logic for using find w/ components and find w/o components

* Update rocprofiler-sdk-roctx-config.cmake

- simplify logic for using find w/ components and find w/o components

* Update samples/intercept_table/CMakeLists.txt

- demonstrate/test use of `find_package(rocprofiler-sdk ... COMPONENTS ...)`

[ROCm/rocprofiler-sdk commit: 74facf87a6]
2024-10-25 11:17:34 -05:00
Jonathan R. Madsen 74facf87a6 CMake: Consistently name CMake Targets (#1082)
* Change all rocprofiler-X target names to rocprofiler-sdk-X

* Update rocprofiler-sdk-config.cmake

- fix install tree target names
- simplify logic for using find w/ components and find w/o components

* Update rocprofiler-sdk-roctx-config.cmake

- simplify logic for using find w/ components and find w/o components

* Update samples/intercept_table/CMakeLists.txt

- demonstrate/test use of `find_package(rocprofiler-sdk ... COMPONENTS ...)`
2024-10-25 11:17:34 -05:00
Jonathan R. Madsen 651e28f7f0 rocprofv3: support specifying HW counters via command line (#1130)
* rocprofv3: support specifying PMC counters via command line

- E.g. `rocprofv3 --pmc SQ_WAVES -- <app>`

* Update CHANGELOG

* updated rocprofv3 help and documentation

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: d93d4d9463]
2024-10-25 02:49:30 -05:00
Jonathan R. Madsen d93d4d9463 rocprofv3: support specifying HW counters via command line (#1130)
* rocprofv3: support specifying PMC counters via command line

- E.g. `rocprofv3 --pmc SQ_WAVES -- <app>`

* Update CHANGELOG

* updated rocprofv3 help and documentation

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-10-25 02:49:30 -05:00
Giovanni Baraldi a6328a1481 Revert "SWDEV-310289: Adding SPI pipe selection"
This reverts commit e5e2c6041d.

Reason for revert: Requires priv_cp_queues=1

Change-Id: Ia6c78ac25b88d7ef4703654075d54e672a6e320c
2024-10-25 02:57:52 -04:00
Giovanni Baraldi dc25330772 Revert "SWDEV-310289: Adding SPI pipe selection"
This reverts commit 896404efb3.

Reason for revert: Requires priv_cp_queues=1

Change-Id: Ia6c78ac25b88d7ef4703654075d54e672a6e320c


[ROCm/rocprofiler commit: a6328a1481]
2024-10-25 02:57:52 -04:00
Giovanni Lenzi Baraldi dbad56597a Fix for clang tidy (#1155)
[ROCm/rocprofiler-sdk commit: b5f1d70105]
2024-10-24 20:37:05 -03:00
Giovanni Lenzi Baraldi b5f1d70105 Fix for clang tidy (#1155) 2024-10-24 20:37:05 -03:00
Giovanni Lenzi Baraldi f1c7a1a368 SWDEV-489158: Optimizing counter collection performance (#1150)
* SWDEV-489158: Optimizing counter collection performance

* Static initializer fix

* adding sched_yield+sleep

[ROCm/rocprofiler-sdk commit: aef18896dd]
2024-10-24 16:58:07 -03:00
Giovanni Lenzi Baraldi aef18896dd SWDEV-489158: Optimizing counter collection performance (#1150)
* SWDEV-489158: Optimizing counter collection performance

* Static initializer fix

* adding sched_yield+sleep
2024-10-24 16:58:07 -03:00
zichguan-amd 3328cf8d6c Enable baseline comparison between workloads from the same path (#447)
* Enable baseline comparison between workloads from the same path

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

* Formatting

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

* Change test to verify baseline works with same path

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

* Add three-way comparison test case

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

---------

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

[ROCm/rocprofiler-compute commit: 13a06f5131]
2024-10-24 12:00:36 -05:00
zichguan-amd 13a06f5131 Enable baseline comparison between workloads from the same path (#447)
* Enable baseline comparison between workloads from the same path

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

* Formatting

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

* Change test to verify baseline works with same path

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

* Add three-way comparison test case

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>

---------

Signed-off-by: zichguan-amd <zichuan.guan@amd.com>
2024-10-24 12:00:36 -05:00
Philip Yang e6d4a32c42 kfdtest: Update KFDSVMEvictTest.QueueTest for CPX mode
Current test has 4 processes, each process allocate and access 512
buffers, this requires 2048 waves to access 2048 buffers at same time to
finish the test. For CPX compute partition mode, each compute node has
less waves and cause random test failure. Change test to 2 processes to
use 1024 waves to access 1024 buffers with the increased buffer size.

Add waves_num check to avoid the test failure on new ASICs or simulator,
skip test if the available waves is less than 1024.

Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Change-Id: I64b5f9172b62cf38f62fbb0b48a801b8a11401c0
2024-10-24 12:57:30 -04:00
AravindanC f08bbaf443 Change Log Update for 6.3 Release
Change-Id: I9e4295959e8de60600eaf93b5074dd8d3b66abc9
2024-10-24 10:48:20 -05:00
Gopesh Bhardwaj 4a64ab1884 Fixing logging (#1146)
* Fixing logging

* Removing logs

[ROCm/rocprofiler-sdk commit: 42765c35a2]
2024-10-24 12:03:16 +05:30
Gopesh Bhardwaj 42765c35a2 Fixing logging (#1146)
* Fixing logging

* Removing logs
2024-10-24 12:03:16 +05:30
Chao Fei 345ac64a43 Enable RDC policy feature
1. Add policy APIs
2. Add policy example for policy API usage

Change-Id: I14deb7c809d0b865b7bb083842092fc37868025e
Signed-off-by: Chao Fei <Chao.Fei@amd.com>
2024-10-23 20:37:27 -04:00
Nirmal Unnikrishnan 58d9a05f95 SWDEV-484091 : Correcting LIB_PATCH_VERSION
ROCM_LIBPATCH_VERSION will be set in ENV and should be using that for setting library patch version. Fixing the bug as the patch version was not taken from ENV

Change-Id: I020e48ce5169c17b916be99311623198da1cabf7
2024-10-23 16:21:23 -05:00
Ranjith Ramakrishnan f2208f6452 SWDEV-489527 - Create /opt/rocm softlink only for prefix paths that starts with /opt/rocm-
USE $RPM_INSTALL_PREFIX0 rather than hard coded paths in the post/pre install scripts for rpm use case

Change-Id: I56c66f0befd5502fd2a4218f0b661661259436ed
2024-10-23 16:21:23 -05:00
Ranjith Ramakrishnan b67be0d02c SWDEV-489527 - Remove hard coded paths in rocmmod
This will make rocmmod relocatable

Change-Id: Iefcdf158e975d6d757f55f8854f34d9b989002be
2024-10-23 16:21:23 -05:00
AravindanC eedf4c1410 Enable cmake module config/target for rocm-core
Change-Id: Icbdd6d1e0e9a865dc86b6568bf0b7f7ff35b3b5c
2024-10-23 16:21:23 -05:00
AravindanC 749b656cf7 SWDEV-342167 - Remove Hard Coded Install Permission
Change-Id: Ib8206e58f3f1772735e62c93ba8ac32e752bad83
2024-10-23 16:21:23 -05:00
Yiannis Papadopoulos c7785a6da1 rocr/aie: Remove unused set container and error when using AIE agents in MemoryRegion
Change-Id: Icf1e56412c840810a679f376293a616068841b8c
2024-10-23 09:42:32 -04:00
Sam Wu 132f00cbec Documentation - Bump rocm-docs-core to 1.8.2 (#1116)
* Bump rocm-docs-core to 1.8.2

* changing certi back to previous version

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: dd71131114]
2024-10-23 17:24:12 +05:30
Sam Wu dd71131114 Documentation - Bump rocm-docs-core to 1.8.2 (#1116)
* Bump rocm-docs-core to 1.8.2

* changing certi back to previous version

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-10-23 17:24:12 +05:30
dependabot[bot] 205c771d85 Bump rocm-docs-core[api_reference] from 1.8.2 to 1.8.3 in /docs/sphinx (#12)
Bumps [rocm-docs-core[api_reference]](https://github.com/ROCm/rocm-docs-core) from 1.8.2 to 1.8.3.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.8.2...v1.8.3)

---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ROCm/rocprofiler-systems commit: 1e5f7f6651]
2024-10-22 22:55:08 -04:00
dependabot[bot] 1e5f7f6651 Bump rocm-docs-core[api_reference] from 1.8.2 to 1.8.3 in /docs/sphinx (#12)
Bumps [rocm-docs-core[api_reference]](https://github.com/ROCm/rocm-docs-core) from 1.8.2 to 1.8.3.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.8.2...v1.8.3)

---
updated-dependencies:
- dependency-name: rocm-docs-core[api_reference]
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-22 22:55:08 -04:00
Charis Poag 7504cd04eb Merge amd-staging into amd-master 20241022
Change-Id: I823ffdba9f1db614542658a2af61df917a44c07a
Signed-off-by: Charis Poag <Charis.Poag@amd.com>
2024-10-22 18:23:12 -05:00
Chris Freehill fd99b74287 rocr: supported_isas map elements should persist
The supported_isas static unordered_map was adding stack
allocated Isa objects. Instead, make the objects statically
allocated, as supported_isas itself is.

Change-Id: I23405e218290d48deea6f984f76c57e7b43e314e
2024-10-22 18:09:03 -05:00
venkat1361 4a048d9052 Max reduction operation bug fix & support reduction for derived counters (#1085)
* Max reduction operation bug fix & support reduction for derived counters

* CHANGELOG

* Added missing new line

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: 9d3d5cc07c]
2024-10-22 22:49:51 +05:30
venkat1361 9d3d5cc07c Max reduction operation bug fix & support reduction for derived counters (#1085)
* Max reduction operation bug fix & support reduction for derived counters

* CHANGELOG

* Added missing new line

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-10-22 22:49:51 +05:30
venkat1361 3819a846da Check to force tools to initialize the ctx id to zero. (#1135)
* Check to force tool to initialize the ctx id to zero.

* initialize rocprofiler_context_id_t with 0 in units tests

* changelog

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: 3f91d90bbc]
2024-10-22 18:09:25 +05:30
venkat1361 3f91d90bbc Check to force tools to initialize the ctx id to zero. (#1135)
* Check to force tool to initialize the ctx id to zero.

* initialize rocprofiler_context_id_t with 0 in units tests

* changelog

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-10-22 18:09:25 +05:30
Jonathan R. Madsen d87319ba1c Miscellaneous Testing Fixes + CMake find_package include guard (#1106)
* Improve ROCPROFILER_DEFAULT_FAIL_REGEX

* Support find_package called twice

* Skip iteration of ROCPROFILER_AGENT_TYPE_CPU

* Relax tests/rocprofv3/summary

* Tweak to rocprofiler-sdk-tool/tool.cpp

* Move rocprofv3-trigger-list-metrics to libexec

* Remove PC_SAMPLING_TESTS_REGEX from CI workflow

* Update packaging

- core component depends on roctx component

* Increase verbosity for failing tests

* Fix RPATH of rocprofv3-trigger-list-metrics

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: a92fa8f071]
2024-10-22 16:24:16 +05:30
Jonathan R. Madsen a92fa8f071 Miscellaneous Testing Fixes + CMake find_package include guard (#1106)
* Improve ROCPROFILER_DEFAULT_FAIL_REGEX

* Support find_package called twice

* Skip iteration of ROCPROFILER_AGENT_TYPE_CPU

* Relax tests/rocprofv3/summary

* Tweak to rocprofiler-sdk-tool/tool.cpp

* Move rocprofv3-trigger-list-metrics to libexec

* Remove PC_SAMPLING_TESTS_REGEX from CI workflow

* Update packaging

- core component depends on roctx component

* Increase verbosity for failing tests

* Fix RPATH of rocprofv3-trigger-list-metrics

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-10-22 16:24:16 +05:30
Gopesh Bhardwaj 3f62fe0730 Removing rocprofv3.sh and rocprofv3 install path to sbin (#1143)
[ROCm/rocprofiler-sdk commit: bfe80a4428]
2024-10-22 14:16:36 +05:30
Gopesh Bhardwaj bfe80a4428 Removing rocprofv3.sh and rocprofv3 install path to sbin (#1143) 2024-10-22 14:16:36 +05:30
venkat1361 a078d9c3af Parsing Select() expression dimension args to support range of values. (#1074)
* dim args for select token now supports range of values instead of single integer

* dim args for select token now supports range of values instead of single integer

* modified raw_ast fmt::format

* CHANGELOG.md

* varible rename for select dim from set to map in suffix

* use : for giving range of values

* Update source/lib/rocprofiler-sdk/counters/parser/scanner.cpp

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* format

* Update CHANGELOG.md

* using map instead of unordermap for select_dimension_map

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: 22881148bd]
2024-10-22 11:44:08 +05:30
venkat1361 22881148bd Parsing Select() expression dimension args to support range of values. (#1074)
* dim args for select token now supports range of values instead of single integer

* dim args for select token now supports range of values instead of single integer

* modified raw_ast fmt::format

* CHANGELOG.md

* varible rename for select dim from set to map in suffix

* use : for giving range of values

* Update source/lib/rocprofiler-sdk/counters/parser/scanner.cpp

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* format

* Update CHANGELOG.md

* using map instead of unordermap for select_dimension_map

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-10-22 11:44:08 +05:30
Li Ma 4bd31b605a SWDEV-475244 - Memory Usage and Bandwidth: memory activity
Implemented memory activity and added a new fied id
RDC_FI_GPU_MEMORY_ACTIVITY.

Signed-off-by: Li Ma <li.ma@amd.com>
Change-Id: I11abe356ef6b01ce4917fd19dcc128efbc535f39
2024-10-22 11:11:31 +08:00
Benjamin Welton 5533743436 Added agent_id to rocprofiler_record_counter_t (#1078)
Co-authored-by: Benjamin Welton <ben@amd.com>

[ROCm/rocprofiler-sdk commit: 210762c69d]
2024-10-21 16:29:53 -07:00