Граф коммитов

1804 Коммитов

Автор SHA1 Сообщение Дата
Adam Pryor bd6c6852fc [SWDEV-566924] Update KFD_ID metric to use amd-smi instead of rocprof (#2355) 2025-12-18 08:39:19 -06:00
Jatin Chaudhary fdf73116d5 Do not allocate code objects when we map a static code object (#2332) 2025-12-18 09:22:02 +00:00
habajpai-amd b4e04b07ed test: add unit tests for common utilities from PR #1249 (#2237)
* test: add unit tests for common utilities from PR #1249

* incorporate review comments specific to tests formatting

* use filesystem API instead of std::system for safer cleanup

* Add ghc/filesystem submodule v1.5.14 for portable C++17 filesystem support

* fix: add cmake/GhcFilesystem.cmake for CI submodule auto-checkout

* incorporate review comment

* incorporate review comment
2025-12-18 11:03:14 +05:30
Maneesh Gupta 4a9833e70e Revert "Add HasExpertSchedMode device prop (#2241)" (#2371)
This reverts commit c0b4aef5ad.
2025-12-17 21:26:44 -08:00
David Yat Sin 5ebd50c0b4 rocr: Fix asyncHandler segfault (#2261)
Fix initialization order for the async events handler. The polling
thread would launch before the wake signal is initialized.
2025-12-17 20:52:20 -08:00
Shadi Dashmiz 96f6b6e251 SWDEV-571304 : Fix the constructor for __half (#2240)
- comply with cuda

- Fix usecase for constexpr

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
2025-12-17 11:15:20 -05:00
Filip Jankovic c0b4aef5ad Add HasExpertSchedMode device prop (#2241)
* Add HasExpertSchedMode device prop

* Add unit tests for HasExpertSchedMode

* Add gfx12 check for HasExpertSchedMode prop

* Update gfx major version check and test for ExpertSchedMode

* Minor fix and ROCr version bump

* Update projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_ext_amd.h

* Update projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_ext_amd.h

* Apply suggestion from @dayatsin-amd

* Apply suggestion from @dayatsin-amd

---------

Co-authored-by: Stefan Sokolovic <stefan.sokolovic2@amd.com>
Co-authored-by: David Yat Sin <77975354+dayatsin-amd@users.noreply.github.com>
2025-12-17 17:06:08 +01:00
marantic-amd 79ad00fb15 Scale down memory usage data when the actual data is stored to cache (#2343) 2025-12-17 14:57:41 +01:00
Benjamin Welton e3c051d9b8 [RDC] Optimize RDC counter sampling with greedy packing algorithm (#1590)
* Optimize RDC counter sampling with greedy packing algorithm

This change significantly reduces the number of rocprofiler-sdk sample calls
by implementing a greedy packing algorithm that groups multiple counters into
the minimal number of hardware profiles.

Key improvements:
- Implement greedy packing algorithm to combine counters into minimal profiles
- Add ProfileSet structure to manage packed counter configurations
- Cache packed profile sets for reuse across queries
- Group telemetry field requests by GPU for bulk processing
- Reduce sample calls by ~35% (from 100 to 65 for typical workloads)

Performance impact:
- 13 counters now packed into 3 profiles (77% compression)
- Reduces overhead from profile creation and context switching
- More efficient utilization of hardware counter resources

Implementation details:
- Added create_profiles_for_counters() using greedy algorithm
- Added sample_counters_with_packing() for bulk sampling
- Modified telemetry layer to use rocp_lookup_bulk()
- Preserves all field transformations and special handling

Testing shows successful packing with expected performance gains.
No functional changes to external APIs or behavior.

Co-Authored-By: Ben Welton <bwelton@amd.com>

* Address PR review feedback

This commit addresses all review comments from the initial PR:

1. Fix division by zero risk in debug logging
   - Added check for empty counters vector before calculating compression ratio
   - Avoids potential division by zero when logging profile creation stats

2. Improve thread safety for statistics tracking
   - Changed static uint64_t to std::atomic<uint64_t> for thread-safe counters
   - Prevents race conditions in multi-threaded sampling scenarios

3. Remove unused variable
   - Removed unused profile_index variable that was incremented but never used
   - Cleaned up dead code

4. Clean up code formatting
   - Removed extra blank lines for consistency
   - Applied formatting fixes across modified files

5. Refactor code duplication between rocp_lookup and rocp_lookup_bulk
   - Created apply_field_transformation() helper function
   - Eliminates ~70 lines of duplicated switch statement logic
   - Centralizes field transformation logic in single location
   - Makes future maintenance easier

6. Document non-rocprofiler metrics handling
   - Added comments explaining how bulk lookup handles special cases
   - Clarifies that non-profiler fields like KFD_ID are handled in transformation

All changes maintain backward compatibility and pass compilation.

Co-Authored-By: Ben Welton <bwelton@amd.com>

---------

Co-authored-by: Ben Welton <bwelton@amd.com>
Co-authored-by: Adam Pryor <61172547+adam360x@users.noreply.github.com>
2025-12-17 07:56:33 -06:00
abchoudh-amd 6d9d880d31 [rocprofiler-compute] Counter accuracy tests and improvements for iteration multiplexing (#2011)
* Added laplace solver in samples

* Add laplace eqn in CMake

* Added counter accuracy test

* Add iteration CLI arg for laplace eq

* Unnest profile method

* Missing counter warning

* Updated insufficient kernel warning

* Added reference for laplace equation

* variable name change

* Added comments for data comparison

* Included scipy as test requirement

* Added line number for ref

* split stochastic and deterministic tests

* Added order cli option for laplace_eqn

* Install laplace eqn

* Missing counter warning

* Warn about missing kernels during analysis

* Update tests

* Split iteration multiplexing ctests

* Updated warning

* Incorporated copilot's suggestions
2025-12-17 18:26:39 +05:30
xuchen-amd c738e73d99 [rocprofiler-compute][tui] menu bar lag fix (#1942) 2025-12-16 17:02:27 -05:00
amd-juwillia 3a3738ad98 Added AMDSMI CI to rocm-systems(#2074)
Signed-off-by: Justin Williams <Justin.Williams@amd.com>
2025-12-16 13:52:42 -06:00
Joseph Narlo 16f06808d4 [SWDEV-565460] AMD SMI Document Multiple Init Best Practices (#2293)
* [SWDEV-565460] AMD SMI Document Multiple Init Best Practices

Signed-off-by: amd-josnarlo <josnarlo.amd.com>

* Add sphinxcontrib-mermaid to render diagram in HTML

bump rocm-docs-core to 1.31.0
pip-compile requirements.txt

---------

Signed-off-by: amd-josnarlo <josnarlo.amd.com>
Co-authored-by: amd-josnarlo <josnarlo.amd.com>
Co-authored-by: Peter Park <peter.park@amd.com>
2025-12-16 11:06:18 -06:00
Aleksandar Djordjevic 0b4a309ff7 [rocprofiler-systems] Add span (#2142)
* Add span
* Update unit tests
2025-12-16 13:38:47 +01:00
Kent Russell 0a2ea9ef55 hsakmt: Expose and use CWSR and Control stack sizes (#2200)
* hsakmt: Expose CWSR and Control stack sizes

This is better than hardcoding values and hoping that they align with
KFD's definitions

Signed-off-by: Kent Russell <kent.russell@amd.com>

* hsakmt: Use CwsrSize and CtlStackSize if available

If KFD is providing the CwsrSize and CtlStackSize, use the maximum
of those and the old calculations for the ctx_save_restore_size
and ctl_stack_size defined in the queue

Signed-off-by: Kent Russell <kent.russell@amd.com>

* hsakmt: Add warning when ABI<1.20 on GFX1151

CwsrSize and CtlStackSize are reported by KFD ABI 1.20. GFX1151
specifically may have some issues if these regions are misaligned, so
report a strong warning during topology initialization if the system is
GFX1151 but is using KFD ABI < 1.20

Signed-off-by: Kent Russell <kent.russell@amd.com>

---------

Signed-off-by: Kent Russell <kent.russell@amd.com>
2025-12-16 06:26:14 -06:00
Milan Radosavljevic 666e76deac [rocprofiler-systems] Add cached demangler and replace old demangle (#2135)
* Add cached demangler and replace old

* Add unit tests

* Applied suggestions from code review

* Applied suggestions from code review
2025-12-16 08:32:18 +01:00
arvindcheru 21afa807a9 Enable Lintian Support for ROCM-SMI, ROCMINFO (#1650)
* Enable Lintian Support for ROCM-SMI

* Enable Lintian Support for ROCMINFO

* Updated Lintian Override File Processing

* Update UT Fix for Lintian rocmsmi,rocminfo

* Update UT Fixes, Review Comments

* Update Review Comments - removed extra white spaces, added error check for gzip, date commands

* Update Review Comments - Correcting License Type

* Sync Lintian ChangeLog

* Changelog data sync enhanced

* Update Review Comments, UT fix

* white space cleanup - precommit check
2025-12-15 14:35:28 -06:00
randyh62 1240b592a5 Git url fix (#2285)
* Update README-doc.md

Correct GitHub URL for components moved into rocm-systems

* Update amd_clr.rst

Update github.com URLs

* Update Dockerfile

Update rocm-systems paths

* Update CONTRIBUTING.md

update for rocm-systems

* Update CONTRIBUTING.md

minor change

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md

* Update hip_runtime_api.rst

Update for rocm-systems

* Update installation.rst

update URL to libhsakmt

* Update what_is_hip.rst

* Update projects/clr/CONTRIBUTING.md

Co-authored-by: Dominic Widdows <dwiddows@gmail.com>

* Update projects/clr/README-doc.md

Co-authored-by: Dominic Widdows <dwiddows@gmail.com>

* Update Dockerfile

Update git clone for sparse checkout

* Update projects/hip/CONTRIBUTING.md

* Update projects/clr/CONTRIBUTING.md

* Update projects/hipother/CONTRIBUTING.md

---------

Co-authored-by: Dominic Widdows <dwiddows@gmail.com>
2025-12-15 11:57:18 -08:00
Mario Limonciello 08949cb884 Run pre-commit's whitespace related hooks on projects/amdsmi (#2119)
* Run pre-commit's whitespace related hooks on projects/amdsmi

In order for pre-commit to be useful, everything needs to meet a common
baseline.

* Add whitespace back to Changelog for formatting

---------

Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
2025-12-15 13:20:47 -06:00
gabrpham 48e57d3e2a Version bump and Changelog update for ROCm version 7.2 (#2201)
* Update projects/amdsmi/CHANGELOG.md
* Bump to 26.2.1
---------

Signed-off-by: gabrpham <Gabriel.Pham@amd.com>
2025-12-15 13:19:30 -06:00
Jonathan R. Madsen a71cc3cc88 [rocprofiler-sdk] Optimize rocprofiler-sdk find_clients() (#2267) 2025-12-15 11:47:37 -06:00
systems-assistant[bot] b002c6a739 SWDEV-538607 - Add SIMDe as a build dependency, remove naked intrinsic use. (#500)
Co-authored-by: Alex Voicu <alexandru.voicu@amd.com>
Co-authored-by: Ioannis Assiouras <Ioannis.Assiouras@amd.com>
2025-12-15 17:40:51 +00:00
Ajay GunaShekar b9dc8f729a SWDEV-566268 - skip 2 failing tests on rock Windows (#2308) 2025-12-15 12:32:37 -05:00
Matt Arsenault 49565f9d9f SWDEV-548892 - Always declare used ocml and ockl device libs functions (#2230)
Ignore __CLANG_HIP_RUNTIME_WRAPPER_INCLUDED__. This should not be relying
on declarations from the clang builtin headers. There is no issue declaring
the same intrinsics multiple times. This will enable removal of declarations
from the clang builtin headers.
2025-12-15 17:23:33 +01:00
Fábio Mestre 447beeb00b Replace usages of __ockl_gws_init with __builtin_amdgcn_ds_gws_init (#2235) 2025-12-15 16:56:14 +01:00
jamessiddeley-amd 706a8382a5 [rocprof-compute] added graceful exit with corrupt roofline.csv in profile and analyze mode (#1811)
* added graceful errors/exit in profile/analyze roofline.csv

* edit if statement truth

* restore if statement truth (roofline_csv needs at least 2 rows)

* addressed comments and skipped showing roof metrics when data invalid

* fix workload merge

* changed warning to error

* removed redundant variable definition

* added roofline csv validate check in TUI

* add test cases to test validation function

* ruff format

* simplified TUI roofline handling
2025-12-12 17:06:37 -05:00
jamessiddeley-amd 81720183ad [rocprof-compute] Merge CDash Nightly and Continuous workflow files (#2279)
* merged code-coverage and continuous workflow files

* fixed runner typos and added build mode

* add actor name to Continuous build

* improve error handling and remove redundant verbose

* fixed workflow file log output

* revert logs output in run_ci.py

* ruff format
2025-12-12 17:04:56 -05:00
Dominic Widdows 9a8ed9f45d Doc updates updating internal links from deprecated repos to rocm-systems project locations (#2294)
* Update README documentation links for clarity and consistency across projects

- Changed links in the README files for `clr`, `hipother`, and `hip-tests` to use relative paths instead of absolute URLs, improving navigation within the repository.

* Update CONTRIBUTING documentation to use relative links for improved navigation

- Changed absolute URLs to relative paths in the CONTRIBUTING.md files for the hip and hipother projects, enhancing consistency and ease of access within the repository.
2025-12-12 13:21:42 -08:00
Ajay GunaShekar 0bb5638481 Rock: hip-tests installation path to remain same for linux/windows (#2187)
* Rock: hip-tests installation path remains same for linux and windows

On theRock - installation path remains same linux/windows
share/hip/catch_tests

On internal win build - hip-tests will be installed to catch_tests
flag is passed internally which controls the path.
2025-12-12 08:45:28 -08:00
vedithal-amd 4870725a62 Do not absolute python path when adding tests (#2282) 2025-12-12 10:57:19 -05:00
vedithal-amd 793732a04e [rocprofiler-compute] Improve amdsmi interface (#2245)
* Improve amdsmi interface

* Fix issue where max mem clock was being set as max gfx clock

* Handle the case when all device handles might not be usable due to
  devices being hidden by ROCR and HIP environment variables

* Fix get gpu vram size to return str in KB

* Improve testing of amdsmi interface functions
2025-12-12 09:02:37 -05:00
Jan Stephan ca0f3a6b5a Fix code highlighting (#2254)
Signed-off-by: Jan Stephan <jan.stephan@amd.com>
2025-12-12 14:06:53 +01:00
Jan Stephan 4cc8ff3c54 HIPRTC: Fix CDNA CU description (#2252)
Signed-off-by: Jan Stephan <jan.stephan@amd.com>
2025-12-12 14:06:16 +01:00
Todd tiantuo Li 0eccbf0534 SWDEV-554372 - cuda mappings for GetProcAddress API and flags (#1089) 2025-12-11 23:59:51 -08:00
SaleelK 840301e12d clr: Minor fixes for error return (#2153) 2025-12-11 16:59:56 -08:00
Mario Limonciello b106e6f175 Run pre-commit's whitespace related hooks on projects/rocminfo (#2115)
In order for pre-commit to be useful, everything needs to meet a common
baseline.

Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>
2025-12-11 15:41:47 -06:00
Mario Limonciello bfb13f2b43 Run pre-commit's whitespace related hooks on projects/rocm-smi-lib (#2117)
* Run pre-commit's whitespace related hooks on projects/rocm-smi-lib

In order for pre-commit to be useful, everything needs to meet a common
baseline.

Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>

* Added Changelog Spaces for formatting

Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>

---------

Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Co-authored-by: Maisam Arif <Maisam.Arif@amd.com>
2025-12-11 15:41:24 -06:00
Ameya Keshava Mallya 56fd780e32 Add 'projects/rccl-tests/' from commit '6405c76e6826663bbb67bd40aeee8c70aa5d3094'
git-subtree-dir: projects/rccl-tests
git-subtree-mainline: 42d84317cf
git-subtree-split: 6405c76e68
2025-12-11 20:46:38 +00:00
Ameya Keshava Mallya 42d84317cf Add 'projects/rccl/' from commit '1f2f9f33bac3e8ecfd84c69af6063d7352c362fc'
git-subtree-dir: projects/rccl
git-subtree-mainline: 3fd8a0d393
git-subtree-split: 1f2f9f33ba
2025-12-11 20:46:05 +00:00
vedithal-amd 3fd8a0d393 [rocprofiler-compute] Remove hip dependency during analysis (#2276)
* Remove hip dependency during analysis

* dont dynamic import when roofline skipped
2025-12-11 14:33:43 -05:00
jamessiddeley-amd 8f452d29df [rocprof-compute] Update Docs 7.2 + Dual Issue Detection (#2160)
* modified changelog for docs updates 7.2

* update documentation for 7.2

* update FAQ wording

* Update projects/rocprofiler-compute/docs/reference/faq.rst

Co-authored-by: cfallows-amd <Carrie.Fallows@amd.com>

* addressed comments

* fixed header for 'On MI350 and newer platforms'

* Update projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1100_compute_units_compute_pipeline.yaml

Co-authored-by: cfallows-amd <Carrie.Fallows@amd.com>

* ruff format

---------

Co-authored-by: cfallows-amd <Carrie.Fallows@amd.com>
2025-12-11 14:23:34 -05:00
SakaSitharammurthy 9de72d438d Updated amd-smi.h documentation (#2031)
Signed-off-by: Saka, Sitharam Murthy <SitharamMurthy.Saka@amd.com>
2025-12-11 11:42:23 -06:00
systems-assistant[bot] c72b0558a4 [SWDEV-555654] Enable Driver reload on SRIOV (#1898)
Enabled reload argmument. Reload is supported
on SRIOV systems.

Fixes:
sudo amd-smi reset -g all
AttributeError: 'Namespace' object has no attribute 'reload_driver'

Change-Id: Ib75ba043e29ae6e668c18451b93e766a7528739f

Signed-off-by: Charis Poag <Charis.Poag@amd.com>
Co-authored-by: Charis Poag <Charis.Poag@amd.com>
2025-12-11 11:38:40 -06:00
Rahul Manocha dd4bee33ff SWDEV-558848 - Update thunk interface signature for vmm enablement (#2259)
Co-authored-by: Rahul Manocha <rmanocha@amd.com>
2025-12-11 08:43:28 -08:00
Aleksei Tumakaev 186cdd63c9 [rocpd] Improve summary categories (#2000)
* Improve summary categories
2025-12-11 16:55:47 +01:00
Marko Crnobrnja Maletić 7b2f68e798 Handle cpu name having colons (#2155)
* Handle cpu name having colons
* Adding tests to verify
* clang-format fix

---------

Co-authored-by: bgopesh <gopesh.bhardwaj@amd.com>
2025-12-11 16:36:01 +01:00
Mario Limonciello 0c4d08f38d Revert correcting the VGPR size for GFX 11.5.1 (#2268)
Although the value is correct; there is no source of truth between
kernel and userspace.  This leads to problems if the kernel has strict
restrictions (such as kernel 6.17 or earlier). The restrictions were
lifted in 6.17.9 and and 6.18, but there is no guarantee userspace is
using this.

So short term this value will be wrong.  But on newer kernels the kernel
will communicate the right size and rocr-runtime will be adjusted to
use that.

Link: https://github.com/ROCm/TheRock/pull/2505

Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>
2025-12-11 07:59:19 -06:00
habajpai-amd 6b45657493 update build rccl-tests infrastructure and add getAlgoProtoChannels support (#2212) 2025-12-11 18:29:06 +05:30
SaleelK 10635483ad clr: Fix packet batch write logic (#2236)
* When writing bulk packets always invalidate packet headers, Its
  possible that the CP fetcher can have multiple packets in flight. In
such cases we may end up with a malformed packet because the writes are
not complete yet CP finds a valid header.
2025-12-11 04:26:41 -08:00
Matt Arsenault a495d1137e SWDEV-548892 - Make declaration of __ockl_fdot2 always available (#2229) 2025-12-11 11:53:11 +01:00