Grafico dei commit

8938 Commit

Autore SHA1 Messaggio Data
stali 29b6699b62 Enable RDC link Status feature
1.add link status APIs
   2.Add link status example for link status API usage
2024-12-23 09:30:21 +08:00
Nagaraj, Sriraksha 202853d579 fix abort-app CI fail (#39)
* fix abort-app CI fail

* Update source/lib/rocprofiler-sdk-tool/tool.cpp

---------

Co-authored-by: Madsen, Jonathan <Jonathan.Madsen@amd.com>
2024-12-22 14:17:48 -06:00
Greg Scaffidi f4de4b0529 Add RDC_FI_PROF_SM_ACTIVE metric.
Signed-off-by: Greg Scaffidi <salvatore.scaffidi@amd.com>
Change-Id: I63aaf5eb05d74ba696ace2b088e17c2cfb1bd74b
Signed-off-by: adapryor <Adam.pryor@amd.com>
2024-12-21 15:21:46 -06:00
Adam Pryor df170c8801 Implementation for SWDEV-479728:[RDC] - Clock Speed/Power Cap Control
Change-Id: I767a71325527aa3c691e9607953ceafebacfb4d5
Signed-off-by: adapryor <Adam.pryor@amd.com>
2024-12-20 16:03:33 -06:00
Galantsev, Dmitrii 7c91a07a43 Profiler - Migrate from rocprofv1 to rocprofv3
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>

Fixed RDC for Rocprofv3

Updates

Signed-off-by: adapryor <Adam.pryor@amd.com>
Change-Id: Ic9162bacf1322b265e6bbcdd9fbb9b1fdef414fd

last updates

Change-Id: I12e168501327c5e4cff8a9273b0512fb0e098fe7

comment

Change-Id: I61da61e66dcc017ec46f98ff4c90fb064c9679e8
2024-12-20 15:39:02 -06:00
Nagaraj, Sriraksha 554537f140 fix dimensions in avail output (#82)
* fix dimensions in avail output

* review comment addressed
2024-12-20 13:26:02 -06:00
Indic, Vladimir 0ce75c1043 ROCProfV3: fatal message if PC sampling unsupported, but requested (#60)
If a user requests PC sampling on a system that does not support this feature,
report a fatal error message and stop executing the program.
2024-12-20 08:04:16 -08:00
Baraldi, Giovanni 200a8624bc SWDEV-495749: Adding SIMD_UTILIZATION metric (#74)
* SWDEV-495749: Adding SIMD_UTILIZATION metric

* Fix mfmautil

---------

Co-authored-by: Giovanni Baraldi <gbaraldi@amd.com>
2024-12-20 14:35:18 +00:00
Chris Freehill 67b0082443 rocr: Dynamically allocate IsaMap
This is to avoid use after free at the program's end, when statics
are destructed.

Change-Id: Id6bf26f25a58d13bdf1ee99c852adae8add76569
2024-12-20 09:20:09 -05:00
Welton, Benjamin c574881cdb Add support for device counter collection ioctl (#46)
Add support for device counter colleciton ioctl

Adds support for the device counter collection IOCTL. This IOCTL
allows for device wide counters to be collected even if the queue
is not intercepted by rocprofiler-sdk (required for system profilers).

A test is also included which checks this behavior by creating a queue
that does not have profiling enabled on it and checks to see if SQ
counters can be read from it. Note: this test will be skipped if the KFD
version does not contain this IOCTL.

Right now the check is "soft" in that if the IOCTL is present and there
is an error with permissions, rocprofiler will continue but will print
an error stating that system wide device profiling and collected counter
values may be degraded. This is primarily to avoid breaking existing
users (like PAPI) who may not need the IOCTL's capability and to give
them time to update.

Co-authored-by: Benjamin Welton <ben@amd.com>
2024-12-19 13:27:35 -08:00
Indic, Vladimir 9c21c49aa1 Remove numpy dependency from rocprofv3.py (#75)
Remove numpy dependency from rocprofv3.py
2024-12-19 20:52:42 +01:00
David Galiffi 27f210ea5d Merge 'amd-staging' into 'amd-mainline' 2024-12-19 12:35:24 -05:00
Maisam Arif 35eb8e7c4b Resolve CI caller merge conflicts
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: Icb0389f422b6f158492828e79e44fe00e5db07f5
2024-12-19 10:10:23 -06:00
David Galiffi 33b043b11c Update VERSION to 1.0.0
Bumping major version now that rocprofiler-sdk has been integrated.
2024-12-19 09:41:53 -05:00
Flora Cui ac64c54d74 rocr: skip exception_signal_ handling on exit
if .supports_exception_debugging is not enabled.

Change-Id: I944fe7aa4f3068964f47e23f5259c3802d1e9556
Signed-off-by: Flora Cui <flora.cui@amd.com>
2024-12-19 04:14:32 -05:00
Baraldi, Giovanni 2c8e88a76b SWDEV-492607: Adding ATT wrapper (#40)
* Adding att parser wrapper

* Adding ATT tests as optional

* Adding decoder API for query capability

* Removed samples

* Formatting

* adding new line

* Removed perfetto and moved to static library

* using default search for lib

* Updated to SDK

* Namespace changes

* Added tests

* Small refactor

* Updated API to receive agent_id

* Fixing tests

* Tidy fixes

* Not write to file

* Switch to filesystem.hpp

* Compilation fixes

* Formatting

* Tidy fix

* Removed likely

* Adding tests

* Added gfx9 test

* Adding gfx12 tests

* Formatting

* Enable tidy

* Fix tests

* Fix deadlock on agent test

* Workaround ASAN

* Moving query outside class.

* Fix standalone tool

* Addressing comments

* Formatting

* Change query name

* Fixed some tests. Updated PR comments.

* Formatting

* Improved coverage

* Formatting

* Fix for comments

* Formatting

* Adding some description. Fix error type.

---------

Co-authored-by: Giovanni Baraldi <gbaraldi@amd.com>
2024-12-18 18:53:32 -08:00
Pranjal Swarup 0263e951ff Merge proto files from multiprocess run into one file. (#63)
- Added script to merge multiprocess output automatically to one file when there are multiprocess proto files written into output folder
- Execute the merge multiprocess script from the rank 0 process
- Added the scripts folder path to env path, via setup-env.sh
- Installed merge_multiprocess_output.sh to /share/rocprofiler-systems/bin dir

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2024-12-18 17:34:02 -05:00
Sajina PK 3fa37c991e Enable VCN tracing in Perfetto output (#65)
Enable VCN activity tracing on different instances from the GPU metrics fetched using rsmi_dev_gpu_metrics_info_get in the ROCm-SMI. library.

The tracing can be controlled with ROCPROFSYS_ROCM_SMI_METRICS by setting the value as vcn_activity, Currently this configuration takes the following values: busy, temp, power, mem_usage, vcn_activity.
By default, all the 5 values will be enabled.

Signed-off-by: Sajina P Kandy <Sajina.PuthalathKandy@amd.com>
Co-authored-by: Sajina Kandy <sputhala-amd@amd.com>
2024-12-18 15:56:48 -05:00
Choudhary, Rahul 69be6f1c16 Update rocm_ci_caller.yml: base ref to support pull and push request
The change is present in mainline and was missing in staging
2024-12-18 11:57:44 -08:00
Trowbridge, Ian 9de284a568 Skip Building of OpenMP Samples and Tests (#77)
* Add option to disable openmp samples

* Skip building openmp tests and samples for now
2024-12-18 11:37:51 -06:00
adapryor e1e7f59269 Fix for SWDEV-500637
Signed-off-by: adapryor <Adam.pryor@amd.com>
Change-Id: Id42a2da321bdba74dfc8e16d7dc04d05cef4e34a
2024-12-18 11:10:41 -06:00
Xiaogang Chen eafa929520 kfdtest: fix a regession on KFDEvictTest test case
The kfdtest multi-gpu extension only allows using the first gpu(in topology
order) as default gpu for KFDEvictTest test case. We should allow user
to select any gpu in system as default gpu to run KFDEvictTest test case.

Signed-off-by: Xiaogang Chen<Xiaogang.Chen@amd.com>
Change-Id: I8848771d92ae2812fbb96e917454ab3b4a71a2fa
2024-12-18 10:13:54 -06:00
Apurv Mishra 699d0140be rocr: multiple uninitialized and unused variables
Minor modifications to multiple source and header
files based on Coverity report

Change-Id: I4a73d0f56640983c4d5124e13c8c280245cca672
Signed-off-by: Apurv Mishra <apurv.mishra@amd.com>
2024-12-18 10:11:13 -05:00
Apurv Mishra 441bd9fe6c rocr: refactor of runtime.cpp based on Coverity
Add return checks, initialization and clean
redundant memory operations

fix 1: check return value of 'setsockopt' for error
fix 2: check return value of 'PtrInfo' for error
fix 3: move 'tool_names' instead of copying
fix 4: call 'munmap' for 'va' only once
fix 5: use 'ssize' for possible return values of -1 (err)
fix 6: add missing initialization in constructors
fix 7: add initialization for some scalars and pointers

Change-Id: I07d90e36d4e1fe48c4de4f44e18083e5ed4c5fbc
Signed-off-by: Apurv Mishra <apurv.mishra@amd.com>
2024-12-18 10:06:55 -05:00
Choudhary, Rahul 948271bd9b Create rocm_ci_caller.yml enabling PSDB and OSDB for amd-mainline changes 2024-12-17 11:36:22 -08:00
Giovanni Baraldi 59e9e3a0c3 SWDEV-490031: Fixing activity metrics
Change-Id: Id4e74b0f3ff35d892de05e044faf399d98199354
2024-12-17 10:32:01 -06:00
Longlong Yao 22ed708c39 Use /dev/dxg to detect wsl environment
Since wslinfo does not exist in docker running on wsl,
change the way to detect wsl environment.

Change-Id: I215eb985a227caeef47483cd51818c84bf1d8a4c
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com>
2024-12-16 20:18:53 -08:00
dependabot[bot] fc6900c70e Bump rocm-docs-core[api_reference] from 1.11.0 to 1.12.0 in /docs/sphinx
Bumps [rocm-docs-core[api_reference]](https://github.com/ROCm/rocm-docs-core) from 1.11.0 to 1.12.0.
- [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.11.0...v1.12.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-16 22:46:06 -05:00
Horatio Zhang b02b842368 rocrtst: fix build error for opencl-c.h
<built-in>:2:10: fatal error: '/opt/rocm/llvm/lib/clang/18/includeopencl-c.h' file not found
    2 | #include "/opt/rocm/llvm/lib/clang/18/includeopencl-c.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Change-Id: I56138aba15465b6dd47bb3aad810bdd10f2b2a74
Signed-off-by: Horatio Zhang <Hongkun.Zhang@amd.com>
2024-12-16 21:28:09 -05:00
Peter Park 02ed6e187e docs: Add section on building rocprofsys without ROCm (#57)
Adds brief information in install.rst regarding

Provided build scripts
What to do when building rocprofiler-systems w/o ROCm
Recent changes to the configuration settings as a result of rocprofiler-sdk support.
Fixes minor formatting issues in install.rst resulting in Sphinx build warnings

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2024-12-16 16:29:15 -05:00
darren-amd 888b9a43a0 Allow disabling of openmp examples (#64)
Add flag to disable openmp examples

Co-authored-by: David Galiffi <David.Galiffi@amd.com>

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2024-12-16 14:31:56 -05:00
Xiaogang Chen ec457752dc kfdtest: update run_kfdtest.sh when HSA_TEST_GPUS_NUM is enable
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I68e4f4f8fd7397d3b39b3473638836e4531bef2b
2024-12-16 12:47:50 -05:00
Xiaogang Chen cbb38606e3 kfdtest: Convert KFDSVMRangeTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: Ia4d55c38576c39b3768a847c60d70bda88f65740
2024-12-16 12:47:44 -05:00
Xiaogang Chen 641f1f797d kfdtest: Convert KFDLocalMemoryTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: Iaf20ec15e85ed10998e9735881d3c029abedd3a4
2024-12-16 12:47:39 -05:00
Xiaogang Chen 10c9b98f6e kfdtest: Convert KFDMemoryTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I29d7fbb156a88b4df5be5f2fa0c20fbc47b108ed
2024-12-16 12:47:34 -05:00
Xiaogang Chen f229605b06 kfdtest: Convert KFDQMTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: Ia3582ab5b802ead4df267eeb280b8e7d37eb0ac2
2024-12-16 12:47:28 -05:00
Xiaogang Chen dbccf11ef8 kfdtest: Convert KFDExceptionTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I545ac485d13a3a56a3b352926ec71daa5b074862
2024-12-16 12:47:21 -05:00
Xiaogang Chen 0357e2e139 kfdtest: Convert KFDEventTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: Id1dc91f654686f159adb1bc70907e11558ee4be0
2024-12-16 12:47:14 -05:00
Xiaogang Chen fa31caddba kfdtest: Convert KFDCWSRTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I51646ebd95b2ef4820f7b503bd642deb05a86930
2024-12-16 12:47:08 -05:00
Xiaogang Chen 6c6daf66bf kfdtest: Convert KFDGWSTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I0901750b2ce55bd7f44425b01442d98f0faf12fd
2024-12-16 12:47:01 -05:00
Xiaogang Chen 759ca45f54 kfdtest: convert KFDGraphicsInterop into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I590be9ea063b0d115641aa5b40be4c376377c1dd
2024-12-16 12:46:55 -05:00
Xiaogang Chen dd1801df41 kfdtest: convert KFDPerfCountersTest into multi-GPU test framework
Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I29124147394b69c7fb5533a0e54d375d06b1ec13
2024-12-16 12:46:49 -05:00
Xiaogang Chen c69e660e7a kfdtest: Update KFDMultiProcessTest class to support kfdtest run on multiple gpu
Update KFDMultiProcessTest class to fork process on gpu wise.

Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: Ibb12d64b4cbc5f082d737fd8d8a74233b75be13e
2024-12-16 12:46:42 -05:00
Xiaogang Chen b4943d718b kfdtest: Implement an infracture to support kfdtest run on multi gpu
Update class KFDBaseComponentTest to have kfdtest run on multi gpu under google test framework.

Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: If139c4fc6cf062fb800ff171c69cbf9604f98278
2024-12-16 12:46:32 -05:00
Xiaogang Chen 665e6f80bf kfdtest: Add an env variable to control kfdtest on multi gpu
Add HSA_TEST_GPUS_NUM env variable that controls gpu number kfdtest uses.

This env variable will be used by following patches.

Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I800042f93d4e0955040f450e9b5cf09927971323
2024-12-16 12:46:25 -05:00
Xiaogang Chen 36a82593ed kfdtest: Extend gtest log functions
Extend Google test log functions to extend kfdtest running on multiple gpu.

Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I6d8de92fec606309756423b3a6fa2af3558c0517
2024-12-16 12:46:16 -05:00
Xiaogang Chen e1fdd6fb5f kfdtest: Separate LLVM initialization and instantiation
Assembler function from LLVM is not multi-thread safe and is ASIC dependent.
To extend kfdtest to test on multiple GPU separate LLVM initialization and
assembler instantiation. Each test uses its own assembler.

Signed-off-by: Xiaogang Chen <Xiaogang.Chen@amd.com>
Change-Id: I94c996e807b81d8b19361b450be985b12042477c
2024-12-16 12:46:07 -05:00
Giovanni baraldi bcc709c174 SWDEV-495749: Adding SIMD_UTILIZATION metric
Change-Id: I38afd5db02de7a416d11274823bc4a0c326f1fbe
2024-12-16 10:22:57 -06:00
David Yat Sin 5da1889fb7 rocr: Avoid deadlock due to queue signal not updated
Make sure waiting_ count for queue signal is always > 0 so that we
always call hsaKmtWaitOnEvent to force hsaKmtWaitOnEvent to return.

Remove incorrect warning print when running in debug mode.

Call internal Signal::WaitAny instead of AMD::hsa_amd_signal_wait_any
to avoid extra function calls.

Change-Id: I9e41b704643e4e8ee7402b1379b1c30ff4c544ef
2024-12-16 10:25:19 -05:00
David Galiffi 1f8b4bf67d Update VERSION to 0.2.0 2024-12-16 06:05:42 -05:00