Commit Graph

13501 Commits

Author SHA1 Message Date
kcossett-amd 54e91f1c2d Add Pre-Commit Hooks (#212)
Pre-commit hooks for: 
- clang-format
- cmake-format
- copyright header check
- YAML check
- Trailing whitespace and end-of-file newline check

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: Peter Park <git@peterjunpark.com>
2025-05-26 14:50:48 -04:00
Pham, Gabriel 4243e42758 [SWDEV-533221] Synced rocm-smi with amd-smi lib to fix warning messages (#71)
* Removed URL that was on prohibited source list

---------

Signed-off-by: Gabriel Pham <Gabriel.Pham@amd.com.>
2025-05-26 10:08:16 -05:00
Eric Huang 8887d25304 libhsakmt: add big system buffer allocation support
when allocating userptr buffer in system ram with size bigger
than or equal 512G, TTM has limit and returns error, to split one
big buffer into multiple small buffers in vm_object will solve
this issue.

Signed-off-by: Eric Huang <jinhuieric.huang@amd.com>
2025-05-26 11:04:30 -04:00
Castillo, Juan ac31c6e576 [SWDEV-523359] fan_read_write: Add set fan speed validation check. (#61)
[SWDEV-523359] fan_read_write: Add set fan speed validation check.
- Handled NOT_SUPPORTED status which previously caused rsmitst to false fail
- Added continute statement to proceed with rest of FanReadWrite test.
- fixed spacing line 140

Signed-off-by: Juan Castillo <juan.castillo@amd.com>
2025-05-26 09:54:41 -05:00
Flora Cui e884650952 rocrtst: performance::memory_async_copy test fix on DXG
Signed-off-by: Flora Cui <flora.cui@amd.com>
2025-05-26 15:01:27 +08:00
Amber Lin 31d51acb26 kfdtest: blacklist KFDSVMEvictTest.QueueTest
Temporarily blacklist KFDSVMEvictTest.QueueTest on gfx950

Signed-off-by: Amber Lin <Amber.Lin@amd.com>
2025-05-23 01:22:11 -04:00
Bhardwaj, Gopesh abf3f869e9 Making ROCTx API doxygen generated document more readable (#385)
* Making ROCTx API doxygen generated document more readable

* fixing build

* Fix linking errors

* Fixing header

* Fixing Topics and Types

* doxygen configuration fixes

* Fixing build

* Fix unnecessory doc parsing warnings

* formatting and linting fixes

* rebasing SDK modular PR

* Fixing missing line

* Fixing ROCtx documentation after merge

* Removing flake changes

* changed back WARN_IF_DOC_ERROR to Yes

[ROCm/rocprofiler-sdk commit: b48fa532bc]
2025-05-22 18:08:55 -05:00
Bhardwaj, Gopesh b48fa532bc Making ROCTx API doxygen generated document more readable (#385)
* Making ROCTx API doxygen generated document more readable

* fixing build

* Fix linking errors

* Fixing header

* Fixing Topics and Types

* doxygen configuration fixes

* Fixing build

* Fix unnecessory doc parsing warnings

* formatting and linting fixes

* rebasing SDK modular PR

* Fixing missing line

* Fixing ROCtx documentation after merge

* Removing flake changes

* changed back WARN_IF_DOC_ERROR to Yes
2025-05-22 18:08:55 -05:00
David Yat Sin da2607024b rocr: Perform memcpy for small code-object loads
On large BAR systems, for small-sized code-objects, we get performance
using direct memcpy due to latencies when doing the blit-copy.
2025-05-22 18:39:19 -04:00
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 4d29b74750 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>

[ROCm/rocprofiler-sdk commit: 7045a4c689]
2025-05-22 13:35:38 -07: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 cfea25a13a ATT Doc updates. Fix trace-decode return error. (#406)
* Doc updates. Some cleanup.

* Formatting

---------

Co-authored-by: Giovanni Baraldi <gbaraldi@amd.com>

[ROCm/rocprofiler-sdk commit: 3cb0c87f53]
2025-05-22 14:50:45 -05: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 de6c6af917 HSA API Addition in EXT Table (#407)
* HSA API Addition in EXT Table

* Adding the real new API trace capability

* Formatting fix

[ROCm/rocprofiler-sdk commit: e587a8b23a]
2025-05-21 18:39:31 -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 af1a6a6b37 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>

[ROCm/rocprofiler-sdk commit: 856491944b]
2025-05-21 08:55:48 -07: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 4875346137 [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>

[ROCm/rocprofiler-sdk commit: 14c2dc55ff]
2025-05-19 20:02:51 -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 8721c866a1 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

[ROCm/rocprofiler-sdk commit: afb27f3f1a]
2025-05-19 01:34:44 -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 b097e276a9 [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>

[ROCm/rocprofiler-sdk commit: 7166b1ab58]
2025-05-18 20:11:26 -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 682b9967e0 [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>

[ROCm/rocprofiler-sdk commit: 65786f619d]
2025-05-17 12:08:33 -07:00