Wykres commitów

8920 Commity

Autor SHA1 Wiadomość Data
Pratik Basyal 81d95d8e4a roofline footnote updated (#808) 2025-07-14 13:27:43 -04:00
Kandula, Venkateshwar reddy d2393c97f8 [CI] add hip api table version of 13 to enum string (#509)
add hip table version to 13, API_ID_LAST is not changed from version=12 since no new struct has been added.

Co-authored-by: Venkateshwar Reddy Kandula <vkandula@amd.com>
2025-07-11 16:22:12 -05:00
xuchen-amd 23664c72f7 tui user experience improvement (#805) 2025-07-11 16:51:55 -04:00
Welton, Benjamin 7e3ea0c58e [SWDEV-540753] Reduce memory allocations in device profiling (#507)
Cache packet creation in all cases to reduce the number of allocations/
destruction operations made down to KFD. There is a bug that we
encounter after a period of runtime in KFD where allocations fail to be
visable to the GPU (suspect this is a FW issue, similar to other FW
issues they have had along the same lines). This sidesteps that issue in
rocprof (and likely should be done regardless)

Co-authored-by: Benjamin Welton <bewelton@amd.com>
2025-07-11 12:46:19 -07:00
Chris Freehill c065d9a7e2 rocr: Ensure AqlQueue can exit on memory error
A hang would occur when a memory error occurs because the
AQLQueue destructor would be waiting for a signal that
wouldn't come. This change allows it to break out of the
wait loop.
2025-07-11 12:58:21 -05:00
Alysa Liu 4fab4d70e6 rocrtst: migrate from rsmi API to amdsmi API
Replace ROCm SMI (rsmi) API calls with AMDSMI (amdsmi) API calls
in rocrtst.

Signed-off-by: Alysa Liu <Alysa.Liu@amd.com>
2025-07-11 11:22:34 -04:00
Honglei Huang 412e386b50 rocr/driver: move wallclock frequency query to driver layer
Move the wallclock frequency query from GpuAgent to driver layer to improve
code organization and support multiple driver types. This change:

1. Add GetWallclockFrequency API to KFD/XDNA drivers
2. Move libdrm GPU info query from GpuAgent to driver implementation
3. Update GpuAgent to use the new driver API

Signed-off-by: Honglei Huang <Honglei1.Huang@amd.com>
2025-07-11 16:14:29 +08:00
Honglei Huang 9bc38e2ee6 rocr/driver: add support for getting GPU tile configuration
- Implemented GetTileConfig in KfdDriver to retrieve tile configuration for
a specific node.
- Added a stub implementation of GetTileConfig in XdnaDriver.
- Updated driver.h to include a virtual GetTileConfig method.
- Extended hsa_internal.h with a new hsa_get_tile_config function.
- Integrated hsa_get_tile_config into hsa.cpp to call the driver-specific
  implementation.
- Updated driver headers to declare the new GetTileConfig method.

Signed-off-by: Honglei Huang <Honglei1.Huang@amd.com>
2025-07-11 16:14:29 +08:00
Honglei Huang 8d077dba3b rocr/driver: add GetClockCounters API to driver interface
This commit introduces a new GetClockCounters API to the driver interface.

- Implemented GetClockCounters in KfdDriver to fetch clock counters
  using hsaKmtGetClockCounters.
- Added a stub implementation of GetClockCounters in XdnaDriver that
  returns HSA_STATUS_ERROR.
- Modified GpuAgent to use driver().GetClockCounters instead of
  directly calling hsaKmtGetClockCounters.

Signed-off-by: Honglei Huang <Honglei1.Huang@amd.com>
2025-07-11 16:14:29 +08:00
Honglei Huang 05b83e72d9 rocr/driver: add GetDeviceHandle to driver interface
This commit introduces a new GetDeviceHandle API to the driver
interface, allowing retrieval of the device handle for a
specific node.

- Implemented GetDeviceHandle in KfdDriver to fetch the AMD GPU
  device handle using hsaKmtGetAMDGPUDeviceHandle.
- Added a stub implementation of GetDeviceHandle in XdnaDriver
  that returns HSA_STATUS_ERROR.
- Modified GpuAgent::InitLibDrm to use driver().GetDeviceHandle
  instead of directly calling hsaKmtGetAMDGPUDeviceHandle.

Signed-off-by: Honglei Huang <Honglei1.Huang@amd.com>
2025-07-11 16:14:29 +08:00
Honglei Huang 837fd044d0 rocr: replace DMABuf export paths by driver interface
This change improves code maintainability and error handling by
centralizing DMABuf export functionality in the driver interface.

- Replace direct hsaKmtExportDMABufHandle calls with driver's ExportDMABuf method
- Improve error handling with more specific error status returns
- Add explicit invalid parameter checks and assertions
- Consolidate DMABuf export logic in IPC and VMemory paths
- Propagate detailed error status from driver layer

Signed-off-by: Honglei Huang <Honglei1.Huang@amd.com>
2025-07-11 13:36:45 +08:00
Tony Gutierrez cb7b0c8d9f rocr: Remove driver usage from filter device
Slightly refactor the RvdFilter so it doesn't need to call into the driver.
2025-07-10 09:41:34 -07:00
Nagaraj, Sriraksha 3aaffc42da [rocprofv3-avail] Documentation update and column formatting (#447)
* addressing issues

* doc fix

* test fix

* fix

* fix formatting issue and doc update

* fix column size

* fix

* fix formatting in output

* tests fix

* test fix

* add new line

* add new line

* fix new line

* fixing typo in using-rocprofv3-avail.rst
2025-07-10 11:41:12 -05:00
David Yat Sin 4c2dec5bb8 doc: Fix doxygen comments for in-out params 2025-07-10 08:21:01 -04:00
vedithal-amd 000fd4f5b2 Fix roofline and TUI bugs (#803)
* Fix roofline rocm version bug
* Fix utils bug
* Remove unnecessary tests
* Do not check textual-fspicker package in cmake build
* Use rocprofv3 to test MI 100 and fix tests
2025-07-09 19:15:46 -04:00
xuchen-amd 8585cd8e8f Generalize config path. (#802)
* Generalize config path.

* Fix format.

* Fix typo.
2025-07-09 18:57:21 -04:00
Elwazir, Ammar e5161f6e06 Fixing Docs Workflow (#505) 2025-07-09 17:19:16 -05:00
Elwazir, Ammar d68e1754d7 Fix Docs Workflow (#504)
* Update docs.yml

* Update docs.yml

* Update docs.yml
2025-07-09 12:45:49 -05:00
Elwazir, Ammar 37d7d92036 Update Runners (#20)
* Update continuous-integration.yml

* Update formatting.yml

* Update sync-mainline.yaml

* Update sync-staging.yaml

* Update continuous-integration.yml

* Update formatting.yml

* Update continuous-integration.yml

* Update continuous-integration.yml
2025-07-09 11:50:41 -05:00
Elwazir, Ammar a871e3534a GPU-less runners update (#503)
* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* Update codeql.yml

* clean up

* clean up

* clean up

* Update codeql.yml

* Update codeql.yml

---------

Co-authored-by: Ammar ELWazir <aelwazir@amd.com>
2025-07-09 11:46:47 -05:00
Elwazir, Ammar 899d48d1ca Runners Update (#148)
* Update codeql.yml

* Update sync-mainline.yaml

* Update sync-staging.yaml
2025-07-09 11:42:23 -05:00
U, Srihari 6f2a5a9646 Add perfetto support for scratch memory (#303)
* Add perfetto support for scratch memory

* Updated tests and docs.

* Update docs data

* Added underflow check

* Record all free events to 0 bytes

* Add format

* Address review comment

* updated tests for scratch memory

* update scratch-memory tests.
2025-07-09 21:05:45 +05:30
GabrPham 7dba992ebd Update threading to use more stable threading module
Unstable threading was causing segmentation faults. Update to use more
recent threading module rather than the _thread module solved
segmentation fault issue.

multiple issues solved by this commit:
	[SWDEV-537518]
	[SWDEV-540377]
	[SWDEV-540223]

Signed-off-by: GabrPham <gabrpham_amdeng@amd.com>
2025-07-09 09:36:44 -05:00
Welton, Benjamin 2c4e20b951 [SWDEV-516561][1/2] Add MARKER_RANGE_EXTENT to capture ROCTX ranges (#363)
* [SWDEV-516561][1/2] Add MARKER_RANGE_EXTENT to capture ROCTX ranges

Range extent to capture all work between roctxpush/pop operations. Entry callback takes place during roxtxpush and exit callback takes place in roctxpop. This is primarily to allow us to keep an ancestor id on the ancestor stack such that all operations that take place within the push/pop context can be annotated as being apart of this range. With the current setup (where push and pop are two separate operations that need to be combined externally), we cannot keep an ancestor id on the stack and thus cannot tie tracing events to particular ranges.

Correlation id information is inherited from the push operation. Ancestor id needs to be added in a future commit that also outputs this ancestor to CSV.

Output:

```
[ctest] {'size': 64, 'kind': 7, 'operation': 1, 'correlation_id': {'internal': 1525, 'external': 0, 'ancestor': 1524}, 'start_timestamp': 2932551479402642, 'end_timestamp': 2932551491178449, 'thread_id': 3254861}
[ctest] {'size': 64, 'kind': 8, 'operation': 2, 'correlation_id': {'internal': 1525, 'external': 0, 'ancestor': 1524}, 'start_timestamp': 2932551479405878, 'end_timestamp': 2932551491181214, 'thread_id': 3254861}
```

Note: Kind 8 = range extent op.

* Merge fix

Revert several changes

source/lib/rocprofiler-sdk/marker/range_marker.*

- separate out range marker implementation for standard marker implementation

Update public API with marker core range

Support marker core range in sdk (source/lib/rocprofiler-sdk)

Transition rocprofiler-sdk-tool and output lib to use marker core range

Misc fixes for tests

Fix logic in lib/output/generate{CSV,Stats}.cpp

Update tests/rocprofv3/tracing-hip-in-libraries (marker validation)

Fix test_otf2_data

* Test fixes

---------

Co-authored-by: Benjamin Welton <bewelton@amd.com>
2025-07-08 23:41:22 -07:00
Welton, Benjamin 2fa98c4d14 [SDK] Added retry for signal wait (#494)
Added retry for signal wait

Co-authored-by: Benjamin Welton <bewelton@amd.com>
2025-07-08 23:28:02 -07:00
Honglei Huang 45af009c5d libhsakmt: use uint32_t for loop index variables
This patch changes the type of several loop index variables from int to
uint32_t in fmm.c. The affected functions are:
- __fmm_release
- _fmm_map_to_gpu
- _fmm_unmap_from_gpu

To fix compile warning:

warning: comparison of integer expressions of different signedness:
'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare]
 2009 |         for (i = 0; i < object->handle_num; i++) {

Signed-off-by: Honglei Huang <Honglei1.Huang@amd.com>
2025-07-09 13:15:42 +08:00
vedithal-amd c51b9d16c3 Fix util tests (#797)
* Fix profile tests
* Update known issue for corrupted memory chart
2025-07-08 17:15:09 -04:00
cfallows-amd 3df0d1dded Update roofline bins for rocm7 changes (#755)
* Update current bins to have rocm6 suffix. Add new rocm7 bins, built on rocm7.0 latest due to hip updates.

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

* Re-add rocm version check for roof bins.

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

* Rebuild roofline binaries on top of latest rocm7 (#16379) after recent mainline promotions.
Adjusting version and distro combinations of bins following rocm6 vs rocm 7 supported OS.
*rhel8 not supported on rocm7, also not built anymore
*sles15 not supported on rocm7 but is still being built
*ubuntu stays as 22.04 and above for rocm7

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

* Minor fixes after testing.

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

* Fixed bad copy after finding it in testing ctest.

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

* Remove runpath from new bin

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

* Rework target_binary map return in detect_roofline- we should not be returning maps of different sizes or with different keys for the same method. Expected output should be consistent in case we run into bad position, or for testing purposes. Manually tested all possible roofline bin expected cases to comfirm functionality and expected user output.

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

* Update changelog with new roofline distro minimums

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

---------

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
2025-07-08 16:51:50 -04:00
xuchen-amd 60a50e681b Add tui cmake install. (#794) 2025-07-08 11:18:26 -04:00
Kian Cossettini 67bc147780 Added compatibility matrix for docker-build script (#268)
- matrix -m argument for build-docker.sh that lists compatible OS + ROCm combinations.
- ${DISTRO} is now case-insensitive.
- Added note to README.md to mention this flag.
- Removed --build-arg AMDGPU_RPM=${ROCM_RPM}, which is no longer used
2025-07-08 11:05:14 -04:00
Fei Zheng 1b7445faa4 PC Sampling: fix potential_end_offset (#792)
* fix potential_end_offset

* format code: unrelated
2025-07-08 08:52:01 -04:00
Fei Zheng 239e6550f4 format with isort (#793) 2025-07-08 08:51:20 -04:00
fxmarty-amd c58ee9e73b fix normalization (#789) 2025-07-08 08:50:41 -04:00
Pryor, Adam ca9d8c4bae Adam/bill cleanup (#209)
Co-authored-by: Bill(Shuzhou) Liu <shuzhou.liu@amd.com>
2025-07-07 15:41:22 -05:00
Sajina PK b0ff07b4fe Conditionally include backtraces in ROCPROFSYS_THROW based on verbosity (#272)
* Conditionally include backtraces in ROCPROFSYS_THROW based on verbosity

Modify ROCPROFSYS_THROW to only include backtraces when:
  debug mode is enabled, OR
  verbose level is >= 2, OR
  running in CI environment

* Fix formatting errors
2025-07-07 14:14:02 -04:00
Bhardwaj, Gopesh dd745ed9c7 Ignoring aligned attribute warning (#70)
ignoring aligned attribute warning
2025-07-07 09:34:39 -05:00
Apurv Mishra 3115384874 kfdtest: Temporarily blacklist KFDEvictTest suite
blacklist the KFDEvictTest suite until the defects
SWDEV 535386 and 537002, where these test cases fail
inconsistently, are fixed

Signed-off-by: Apurv Mishra <Apurv.Mishra@amd.com>
2025-07-04 11:47:20 -04:00
Roy, Rakesh 30e239d1b7 Fix find_if build error for RHEL10 (#499)
overriding Jonathan's final approval ( as it is a long weekend in US/NA)
adding algorithm header to recognize stdlib's find_if looks fine
2025-07-04 09:20:23 -04:00
Castillo, Juan bab82d98b7 [SWDEV-539845] Add support for board voltage (#92)
* Add the API and CLI to show the board voltage.

---------

Signed-off-by: Arif, Maisam <Maisam.Arif@amd.com>
Signed-off-by: Juan Castillo <juan.castillo@amd.com>
Co-authored-by: Liu, Shuzhou (Bill) <Shuzhou.Liu@amd.com>
2025-07-03 01:58:50 -05:00
Cheruvally, Aravindan 55ab9b2bda SWDEV-530465 Update share/doc/<pkgnm> License folder (#86)
Update share/doc/ folder for license/docs to reflect correct package name.
Signed-off-by: Cheruvally, Aravindan <Aravindan.Cheruvally@amd.com>
2025-07-03 01:56:50 -05:00
cfallows-amd 61a9381edf Adjust csv output list for test_block_SPI for MI350 (#785)
Adjusting expected output list for test_block_SPI for MI350 series products.
Run formatter.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
2025-07-03 01:58:11 -04:00
jamessiddeley-amd a6463f5e98 additional-code-coverage-compute (#763)
* added additional functions to test_utils.py

* added code coverage for db_connector.py

* Update test_profile_general.py

Added additional roofline test cases

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

* updated coverage mi_gpu_spec.py 73% -> 94%

* added parser.py coverage

* removed redundant comments

* added test_utils and test_db_connector

---------

Signed-off-by: jamessiddeley-amd <James.Siddeley@amd.com>
2025-07-02 13:29:10 -04:00
Galantsev, Dmitrii 6c32364d19 Exposed the energy count and current socket power metrics to profilers like PAPI (#225) 2025-07-02 09:50:09 -05:00
Adam McDaniel f688c9938d Exposed the energy count and current socket power metrics to profilers like PAPI 2025-07-02 09:47:17 -05:00
Galantsev, Dmitrii 731be3f743 Revert "rsmi_init: Do not complain loudly when no driver is found"
This reverts commit 8ca4207d5c.
2025-07-02 09:45:41 -05:00
cfallows-amd a59b1ea6e6 Fix method return for python version compatibility (#784)
Support for python3.8 and above means union defined in one of the methods was throwing errors for anything less than python3.10. Swapping out | operand for Optional[] resolves errors on systems using <3.10. No functional changes.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
2025-07-02 10:36:37 -04:00
vedithal-amd 894046f283 Fix rocprofiler sdk list counters (#765) 2025-07-02 09:41:51 -04:00
Chris Freehill 12430fe25a rocr: Fix isa entries for gfx906/sramecc
Some of the entries for gfx906 in the ISA table in isa.cpp
had "any" for "sramecc-" instead of "disabled". This fixes
that.
2025-07-02 08:40:30 -05:00
Bhardwaj, Gopesh e7616c3aad Adding OpenMP usage with rocprofv3 (#472)
* Adding openmp usage with rocprofv3

* minor changes

* Fixing missing line
2025-07-02 12:25:24 +05:30
Su, Daniel 9cca903417 External CI: change amd-master trigger to amd-mainline (#10) 2025-07-01 18:22:05 -05:00