Commit Graph

64521 Commits

Author SHA1 Message Date
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
Jayaprakash, Karthik 4ea2d9a5ee SWDEV-531711 - Report correct error code based on device failure. (#286)
[ROCm/clr commit: f5b8db33f1]
2025-05-17 06:33:13 -04:00
Jayaprakash, Karthik f5b8db33f1 SWDEV-531711 - Report correct error code based on device failure. (#286) 2025-05-17 06:33:13 -04: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 593fdf6c27 [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>

[ROCm/rocprofiler-sdk commit: 3eb921a34c]
2025-05-16 09:33:46 -07: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
Brzak, Branislav dc39d67017 SWDEV-508742 - Make clCreatePipe spec compliant (#80)
[ROCm/clr commit: 7698d799ce]
2025-05-16 15:18:35 +05:30
Brzak, Branislav 7698d799ce SWDEV-508742 - Make clCreatePipe spec compliant (#80) 2025-05-16 15:18:35 +05:30
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 edd6134d16 Use the alphabetic 'or' in the CPack RPM package Requires field.
Using the OR symbol "|" is causing error in cpack


[ROCm/rocm_smi_lib commit: 4d201ad2c2]
2025-05-15 15:28:26 -07: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 08062c0577 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>

[ROCm/rocm_smi_lib commit: 47f80145cb]
2025-05-15 14:30:33 -05: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
Jayaprakash, Karthik c25250e68b SWDEV-529929 - Adding hipMemRangeHandleType datatype. (#73)
[ROCm/hip commit: d50cd1dcc7]
2025-05-15 14:58:24 -04:00
Jayaprakash, Karthik d50cd1dcc7 SWDEV-529929 - Adding hipMemRangeHandleType datatype. (#73) 2025-05-15 14:58:24 -04: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
Belton-Schure, Aidan c04355bbe3 Add __syncwarp operation (#160)
Change-Id: I6a3783beafdbb9f11a3b37333f4ff3f5be27ea54

[ROCm/clr commit: c50610b44d]
2025-05-15 14:20:13 +05:30
Belton-Schure, Aidan c50610b44d Add __syncwarp operation (#160)
Change-Id: I6a3783beafdbb9f11a3b37333f4ff3f5be27ea54
2025-05-15 14:20:13 +05:30
Patel, Jaydeepkumar 7b6e59cbea SWDEV-530803 - User current device id while cloning graph node. (#313)
[ROCm/clr commit: 32eb6a5d89]
2025-05-15 09:06:15 +05:30
Patel, Jaydeepkumar 32eb6a5d89 SWDEV-530803 - User current device id while cloning graph node. (#313) 2025-05-15 09:06:15 +05:30
Welton, Benjamin cfce653d86 [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>

[ROCm/rocprofiler-sdk commit: 33e43e66d3]
2025-05-14 13:31:51 -05: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
Madsen, Jonathan a6831b7b5b [SDK] Fix double buffer data race (#394)
* Fix double buffer data race

- fixes relatively rare data race in double buffering scheme

In `rocprofiler::buffer::instance::emplace`, the `container::record_header_buffer::get_record_headers()` function returned a `std::vector<rocprofiler_record_header_t*>` and then invoked callback to tool. It was possible for that callback to still be executing while the buffer was being updated. This potentially introduced a scenario where the rocprofiler_record_header_t* was modified (or corrupted) before the tool processed the record. In rocprofv3, this would result in a "future" buffer record showing up among "past" buffer records. E.g., correlation id sequence of 1-15 where the buffer flushes after five values, could result in this during processing:
|     |     |     |     |      |
|:---:|:---:|:---:|:---:|:---:|
|  1 |  2 |  3 |  4 | 15 |
|  6 |  7 |  8 |  9 | 10 |
| 11 | 12 | 13 | 14 | 15 |

Because buffer A (of double buffering scheme) originally containing corr ids 1-5 stalled after process corr id 4 (e.g. write to disk), buffer B filled up with 6-10 and started flushing, causing a switch back to buffer A, and buffer A was filled with 11-15 by the time callback accessed what was originally corr id 5 but was now updated to corr id 15.

* Update CHANGELOG

* misc minor cleanup

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>

[ROCm/rocprofiler-sdk commit: 8a1ee46e47]
2025-05-14 13:19:22 -05:00
Madsen, Jonathan 8a1ee46e47 [SDK] Fix double buffer data race (#394)
* Fix double buffer data race

- fixes relatively rare data race in double buffering scheme

In `rocprofiler::buffer::instance::emplace`, the `container::record_header_buffer::get_record_headers()` function returned a `std::vector<rocprofiler_record_header_t*>` and then invoked callback to tool. It was possible for that callback to still be executing while the buffer was being updated. This potentially introduced a scenario where the rocprofiler_record_header_t* was modified (or corrupted) before the tool processed the record. In rocprofv3, this would result in a "future" buffer record showing up among "past" buffer records. E.g., correlation id sequence of 1-15 where the buffer flushes after five values, could result in this during processing:
|     |     |     |     |      |
|:---:|:---:|:---:|:---:|:---:|
|  1 |  2 |  3 |  4 | 15 |
|  6 |  7 |  8 |  9 | 10 |
| 11 | 12 | 13 | 14 | 15 |

Because buffer A (of double buffering scheme) originally containing corr ids 1-5 stalled after process corr id 4 (e.g. write to disk), buffer B filled up with 6-10 and started flushing, causing a switch back to buffer A, and buffer A was filled with 11-15 by the time callback accessed what was originally corr id 5 but was now updated to corr id 15.

* Update CHANGELOG

* misc minor cleanup

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2025-05-14 13:19:22 -05:00
srawat 3357346df7 Update install.rst 2025-05-14 11:44:05 -05:00
srawat 71c654b0ee Update install.rst
[ROCm/rdc commit: 3357346df7]
2025-05-14 11:44:05 -05:00
Andryeyev, German b13eec7049 SWDEV-345024 - Retain the program on Fini kernel execution (#307)
Fini kernel is executed during the invocation of amd::Program destructor,
but the dispatch logic can retain/release the reference counter and
cause double free. Avoid double free with an extra retain() call

[ROCm/clr commit: bddb8f14d1]
2025-05-14 21:21:26 +05:30
Andryeyev, German bddb8f14d1 SWDEV-345024 - Retain the program on Fini kernel execution (#307)
Fini kernel is executed during the invocation of amd::Program destructor,
but the dispatch logic can retain/release the reference counter and
cause double free. Avoid double free with an extra retain() call
2025-05-14 21:21:26 +05:30
Arandjelovic, Marko 1f62171fb1 SWDEV-515530 - Re-enable passing tests on gfx1100 and gfx1102 (#82)
[ROCm/hip-tests commit: 2125662867]
2025-05-14 17:23:13 +02:00
Arandjelovic, Marko 2125662867 SWDEV-515530 - Re-enable passing tests on gfx1100 and gfx1102 (#82) 2025-05-14 17:23:13 +02:00
Godavarthy Surya, Anusha 63376e2b32 SWDEV-519722 - Update test to work on MGpu machines without P2P access (#145)
[ROCm/hip-tests commit: 161ecddafe]
2025-05-14 20:52:58 +05:30
Godavarthy Surya, Anusha 161ecddafe SWDEV-519722 - Update test to work on MGpu machines without P2P access (#145) 2025-05-14 20:52:58 +05:30
Andryeyev, German 0ad7f9c137 SWDEV-497841 - Add max alloc test for MemPool (#108)
Stress mempool with a lot of big memory allocations.
The test requires >30MB of free memory.

[ROCm/hip-tests commit: 0b1eed5acd]
2025-05-14 20:52:41 +05:30
Andryeyev, German 0b1eed5acd SWDEV-497841 - Add max alloc test for MemPool (#108)
Stress mempool with a lot of big memory allocations.
The test requires >30MB of free memory.
2025-05-14 20:52:41 +05:30
GunaShekar, Ajay edefd09753 SWDEV-527806 - hip-tests . Add P2P checks for mGPU atomics tests (#168)
[ROCm/hip-tests commit: 86eb49aa7f]
2025-05-14 20:49:01 +05:30
GunaShekar, Ajay 86eb49aa7f SWDEV-527806 - hip-tests . Add P2P checks for mGPU atomics tests (#168) 2025-05-14 20:49:01 +05:30
Arandjelovic, Marko 7c28abc538 SWDEV-505672 - Add performance test for HtoD and DtoH with kernel in-between (#27)
[ROCm/hip-tests commit: 3257c44126]
2025-05-14 20:12:23 +05:30
Arandjelovic, Marko 3257c44126 SWDEV-505672 - Add performance test for HtoD and DtoH with kernel in-between (#27) 2025-05-14 20:12:23 +05:30
Arandjelovic, Marko 6ed6a3cd09 Remove SetGetCacheConfig tests as APIs are not implemented (#84)
[ROCm/hip-tests commit: 552ed6125e]
2025-05-14 16:27:05 +02:00
Arandjelovic, Marko 552ed6125e Remove SetGetCacheConfig tests as APIs are not implemented (#84) 2025-05-14 16:27:05 +02:00
Arandjelovic, Marko 5ad13665eb SWDEV-525066 - Enable hipDeviceGetGraphMemAttribute functional tests (#71)
[ROCm/hip-tests commit: 974d47ad8d]
2025-05-14 16:06:23 +02:00