Commit Graph

8920 Commits

Author SHA1 Message Date
Benjamin Welton 0c4a583e23 [rocprofv3] Do not fetch metrics for CPU agents (#1101)
Skip CPU agents when fetching metrics. Only fetch metrics for GPU
agents.

Co-authored-by: Benjamin Welton <ben@amd.com>
2024-09-27 21:03:18 -06:00
itrowbri 5dd2f94f74 Updated validation of aborted-app test to use hipExtHostAlloc (#1103)
* Updated validation of aborted-app test to use hipExtHostAlloc now that tracing for this command is supported

* Updated CHANGELOG
2024-09-27 21:02:00 -06:00
David Galiffi f3c699ea61 Rename to ROCm Systems Profiler (rocprof-sys) (#1)
Rename to ROCm Systems Profiler (rocprof-sys)
2024-09-27 17:18:21 -04:00
coleramos425 e497928dee Remove unrelease prefix from CHANGELOG
Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-27 16:16:21 -05:00
cfallows-amd cf1b699ba7 Update VERSION, CHANGELOG, and README citation for next release (#433)
Signed-off-by: Carrie Fallows <carrie.fallows@amd.com>
2024-09-27 16:16:21 -05:00
Cole Ramos d2e806d1aa Tarball on rocm tags and MAINTAINERS guide (#402)
* Package release tarball on rocm tags and add a MAINTAINERS guide to outline release procedure

Signed-off-by: coleramos425 <colramos@amd.com>

* Apply linting feedback

Signed-off-by: coleramos425 <colramos@amd.com>

* Update links in MAINTAINERS for new branches

Signed-off-by: coleramos425 <colramos@amd.com>

* Update MAINTAINERS.md for changelog formatting

Signed-off-by: coleramos425 <colramos@amd.com>

* Update Omniperf ver checker to allow tags with rocm- prefix

Signed-off-by: coleramos425 <colramos@amd.com>

* Add step to packaging workflow to upload release tarball to release

Signed-off-by: coleramos425 <colramos@amd.com>

* Synax change for release name in packaging action

Signed-off-by: coleramos425 <colramos@amd.com>

* Update MAINTAINERS for instuctions on ROCm releases

Signed-off-by: coleramos425 <colramos@amd.com>

* Update softprops pluvin to v2 and remove release name

Removing the release name enables us to modify an existing release with the matching tag

Signed-off-by: coleramos425 <colramos@amd.com>

* Remove draft option on softprops plugin

Signed-off-by: coleramos425 <colramos@amd.com>

---------

Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-27 16:16:21 -05:00
xuchen-amd c9773c157e Add the ability to determine GPU model from Chip ID (#423)
* Add the ability to determine GPU model from Chip ID for distinguishing MI300 systems by using a built-in dictionary.

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Add support for MI300X_A1

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Remove MI308X identification using num CUs, and format Python using black.

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Add Read the Docs

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Add sphinx requirement

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Remove gpu_model identification using gpu_arch

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Remove OMNIPERF_ARCH_OVERRIDE and its usage. Determining MI300 gpu model solely based on chip id.

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Fix Python formatting using black.

Signed-off-by: xuchen-amd <xuchen@amd.com>

---------

Signed-off-by: xuchen-amd <xuchen@amd.com>
2024-09-27 16:16:21 -05:00
Daniel Su 99680a7833 External CI: enable CI triggers (#426)
Signed-off-by: Daniel Su <danielsu@amd.com>
2024-09-27 16:16:21 -05:00
Peter Park 812a7b7d08 update package manager install docs to include omniperf in PATH (#420)
Signed-off-by: Peter Jun Park <peter.park@amd.com>
2024-09-27 16:16:21 -05:00
coleramos425 369b93bf46 Fix typo and CHANGELOG modification
After meeting with the DevOps team, I've added the Unreleased keyword to new CHANGELOG section per their request

Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-27 16:16:21 -05:00
coleramos425 66e0418d42 Rollback Grafana version in Docker container to enable deprecated Angular plugin (#416)
Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-27 16:16:21 -05:00
Cole Ramos 5bc6b50b0b Add omniperf suffix to MOD_INSTALL_PATH in docs (#414)
If we don't add the suffix omniperf to the install path then the subsequent instruction of module load omniperf will not work

Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-27 16:16:21 -05:00
Peter Jun Park 90d0b82657 mv changes to changelog.md
Signed-off-by: Peter Jun Park <peter.park@amd.com>
2024-09-27 16:16:21 -05:00
David Galiffi 369b2063d8 Run Workflows on Release Branches (#409)
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-09-27 16:16:21 -05:00
David Galiffi 3a4da11ff1 Update dependabot.yml target-branch
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-09-27 16:16:21 -05:00
David Galiffi 7c7705d2ba Remove dev and main branch from workflows. (#404)
* Remove `dev` and `main` branch from workflows.

Update links in documentation.

Signed-off-by: David Galiffi <David.Galiffi@amd.com>

* `amd-staging` -> `amd-mainline` in docs

Signed-off-by: Peter Jun Park <peter.park@amd.com>

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Co-authored-by: Peter Jun Park <peter.park@amd.com>
2024-09-27 16:16:21 -05:00
David Galiffi cfeea83785 Check Python version on application launch (#393)
* Check that the minimum required Python (3.8) version is used.

Prints a descriptive error message, rather than a cryptic import
failure, if minimum Python version is not met.

Internal ticket SWDEV-477233.


* Disable the RPM mangling of shebangs.

The are changing the `#!/usr/bin/python3` to `#!/usr/libexec/platform-python`.
With this set, omniperf is always using the platform installed version
of python, which is python 3.6 on RHEL 8. Using virtual environments,
like conda, did not work.

* Fix pylint issues

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-09-27 16:16:21 -05:00
coleramos425 5d7af74f85 Remove unrelease prefix from CHANGELOG
Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-27 21:15:15 +00:00
cfallows-amd ba4429d745 Update VERSION, CHANGELOG, and README citation for next release (#433)
Signed-off-by: Carrie Fallows <carrie.fallows@amd.com>
2024-09-27 16:10:31 -05:00
Ammar ELWazir 16e791dc9a Updating ROCm Version Checker for CI 2024-09-27 14:09:24 -05:00
Ammar ELWazir 47154f5a8b Checking ROCm Version in CI 2024-09-27 14:07:11 -05:00
Jonathan Kim 909b82d463 rocr: Fix race condition in IPC DMABUF socket server
Socket server accept calls do not guarantee synchronous actions
post-accept. This can result in a race condition.

To resolve this, first limit the socket server's listen backlog to a
single connection. This will force competing clients to busy-retry
until timeout.

Second, make the DMABUF IPC file descriptor send-receive and import
calls into an atomic routine per connection.

By doing these fixes, not only to we resolve potential races but
we guarantee that any exporter process will create at most one
file descriptor that will only last for the duration of the import
transaction.  This alleviates any concern on running into system
limits for the number of open file descriptors per process.

Change-Id: I6d8b14795a680d89a2707e082fa027d525792e05
2024-09-27 14:40:59 -04:00
Jonathan Kim 32bb0764b7 rocr: Fix IPC DMA Buf fragment handling and enable for development
Discarding blocks for reallocation on IPC export for better memory
performance trigger memory violations with DMA BUF exports so bypass
this for now as application performance drops haven't been observed
with the bypass.

The raw fragment should be passed to the DMA Buf export call as well
since offsets will be implicitly applied in the Thunk/KFD for
export/import calls.

Also, use the agent information directly from the pointer
information so that the export call doesn't have to scan memory to find
this.  Pass the node ID in the handle so that the import call doesn't
have to make two thunk imports to fetch the node ID for GPU memory
imports.

Finally, allow the user to use DMA Buf IPC via
HSA_ENABLE_IPC_MODE_LEGACY=0 for developer testing as legacy mode will
be applied by default.

Change-Id: Ie8fe267f8768fa5df37126078406f7065f69ff4e
2024-09-27 14:40:42 -04:00
Charis Poag 0609cbf1d0 [SWDEV-422195/SWDEV-440985] GPU metrics 1.6 + --showmetrics
Changes:
- Added new GPU metrics:
  1) Violation status' (ex. PVIOL/TVIOL) accumulators
  2) XCP (Graphics Compute Partitions) statistics
  3) pcie other end recovery counter
- Added rocm-smi --showmetrics
Units/values reflect as indicated by driver, may differ
from AMD SMI or other ROCm SMI interfaces which
use these fields.
- N/A fields means the device does not support providing this
data.

Change-Id: Ia2cd3bb65c4f474ebdb39db8062ea716f2b4d8ee
Signed-off-by: Charis Poag <Charis.Poag@amd.com>
2024-09-27 13:18:05 -04:00
Kent Russell d64e33520f rocrtst: Various codeql fixes
Fix some potentially unreleased memory, null value checks, files not
closed, and other such issues reported by codeql

Change-Id: Ia679aff97a773a642d8c8cbadeae30955554a62e
Signed-off-by: Kent Russell <kent.russell@amd.com>
2024-09-27 09:56:18 -04:00
Galantsev, Dmitrii c40a6308c5 SWDEV-466829 - Disable ROCP when in GTest
Change-Id: I3b218fe256717c1dc9187d5f17476dfc990656c2
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-09-26 17:00:05 -05:00
Joseph Macaranas a3819f09ad External CI enablement (#1100)
Will only be enabled on the public repo, but present in this repo for consistency.
2024-09-26 15:43:55 -05:00
David Galiffi a34a91a2e2 Reference "Known Issue" next to references of Perfetto. (#393)
* And provide workaround link to Perfetto v46.0

Co-authored-by: Peter Park <peter.park@amd.com>
2024-09-26 12:21:31 -04:00
David Galiffi ae23f925a0 Include note about known issue with Perfetto v47.0 and above. (#391) 2024-09-26 12:21:31 -04:00
David Galiffi 558a8d00fd Add rocm tag to cpack.yml (#389)
* Add rocm tag to cpack.yml
* Update softprops/action-gh-release to v2
2024-09-26 12:21:31 -04:00
David Galiffi 8b36b6959b Update VERSION to 1.12.0 (#387)
Bumping version since rocm-rel-6.3.0.1 branched.
2024-09-26 12:21:31 -04:00
David Galiffi 6c28e49d11 Prepare for branch renaming. (#367)
* Add `amd-staging` and `amd-mainline` to workflow
* Update links in documentation to use amd-mainline

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-09-26 12:21:31 -04:00
Peter Park b7221c64b0 Add LD_LIBRARY_PATH note to rocm.docs pages
https://github.com/ROCm/rocm_smi_lib/pull/197
https://advanced-micro-devices-demo--197.com.readthedocs.build/projects/rocm_smi_lib/en/197/

Change-Id: I64386a4f364e40ce61ad9963376d2686db2aa36d
2024-09-26 11:18:44 -04:00
Zhang Ava fa5312dacc Merge amd-staging into amd-master 20240924
Signed-off-by: Zhang Ava <niandong.zhang@amd.com>
Change-Id: I8a3bc054f4fa4ca3d3de789db78fd34954bb0d88
2024-09-26 18:36:12 +08:00
Samuel Zhang 5a1b6bf14d SWDEV-484614 - KFDSVMRangeTest.HMMProfilingEvent/1 random fail in VM
In VM with 6vcpu, cpu schedule of
queue_delayed_work(system_freezable_wq) is lower than BM.
HSA_SMI_EVENT_QUEUE_RESTORE event from case HMMProfilingEvent/0 got
delayed execution and caused HMMProfilingEvent/1 fail.

The fix is only listen to HSA_SMI_EVENT_MIGRATE_START event and ignore
all other events.

Change-Id: I534e49b030bd4c534bc7a63eb431f4907659c8cd
2024-09-26 13:37:08 +08:00
Galantsev, Dmitrii d4a868cb69 Increase MAX_NUM_DEVICES limit
Change-Id: I0cf21be156649818fd05a66928054710322b23ac
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-09-25 20:58:19 -05:00
Galantsev, Dmitrii 04be1211c1 README: Add known issues section
Change-Id: I298750fdafed556480271cfce31c3fc88984cf0b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-09-25 15:10:41 -05:00
Cole Ramos 0d15023f69 Tarball on rocm tags and MAINTAINERS guide (#402)
* Package release tarball on rocm tags and add a MAINTAINERS guide to outline release procedure

Signed-off-by: coleramos425 <colramos@amd.com>

* Apply linting feedback

Signed-off-by: coleramos425 <colramos@amd.com>

* Update links in MAINTAINERS for new branches

Signed-off-by: coleramos425 <colramos@amd.com>

* Update MAINTAINERS.md for changelog formatting

Signed-off-by: coleramos425 <colramos@amd.com>

* Update Omniperf ver checker to allow tags with rocm- prefix

Signed-off-by: coleramos425 <colramos@amd.com>

* Add step to packaging workflow to upload release tarball to release

Signed-off-by: coleramos425 <colramos@amd.com>

* Synax change for release name in packaging action

Signed-off-by: coleramos425 <colramos@amd.com>

* Update MAINTAINERS for instuctions on ROCm releases

Signed-off-by: coleramos425 <colramos@amd.com>

* Update softprops pluvin to v2 and remove release name

Removing the release name enables us to modify an existing release with the matching tag

Signed-off-by: coleramos425 <colramos@amd.com>

* Remove draft option on softprops plugin

Signed-off-by: coleramos425 <colramos@amd.com>

---------

Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-25 17:21:40 +00:00
xuchen-amd c48e6e31cf Add the ability to determine GPU model from Chip ID (#423)
* Add the ability to determine GPU model from Chip ID for distinguishing MI300 systems by using a built-in dictionary.

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Add support for MI300X_A1

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Remove MI308X identification using num CUs, and format Python using black.

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Add Read the Docs

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Add sphinx requirement

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Remove gpu_model identification using gpu_arch

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Remove OMNIPERF_ARCH_OVERRIDE and its usage. Determining MI300 gpu model solely based on chip id.

Signed-off-by: xuchen-amd <xuchen@amd.com>

* Fix Python formatting using black.

Signed-off-by: xuchen-amd <xuchen@amd.com>

---------

Signed-off-by: xuchen-amd <xuchen@amd.com>
2024-09-25 17:21:40 +00:00
Daniel Su 7ff385a105 External CI: enable CI triggers (#426)
Signed-off-by: Daniel Su <danielsu@amd.com>
2024-09-25 17:21:40 +00:00
Peter Park ecd69d109b update package manager install docs to include omniperf in PATH (#420)
Signed-off-by: Peter Jun Park <peter.park@amd.com>
2024-09-25 17:21:40 +00:00
coleramos425 bc4d386683 Fix typo and CHANGELOG modification
After meeting with the DevOps team, I've added the Unreleased keyword to new CHANGELOG section per their request

Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-25 17:21:40 +00:00
coleramos425 2aee85cb06 Rollback Grafana version in Docker container to enable deprecated Angular plugin (#416)
Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-25 17:21:40 +00:00
Cole Ramos 68e2cf0973 Add omniperf suffix to MOD_INSTALL_PATH in docs (#414)
If we don't add the suffix omniperf to the install path then the subsequent instruction of module load omniperf will not work

Signed-off-by: coleramos425 <colramos@amd.com>
2024-09-25 17:21:40 +00:00
Peter Jun Park 92cfd5149a mv changes to changelog.md
Signed-off-by: Peter Jun Park <peter.park@amd.com>
2024-09-25 17:21:40 +00:00
David Galiffi 3499b8571d Run Workflows on Release Branches (#409)
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-09-25 17:21:40 +00:00
David Galiffi ae6ed4c8a9 Update dependabot.yml target-branch
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-09-25 17:21:40 +00:00
David Galiffi 68e5db2dbd Remove dev and main branch from workflows. (#404)
* Remove `dev` and `main` branch from workflows.

Update links in documentation.

Signed-off-by: David Galiffi <David.Galiffi@amd.com>

* `amd-staging` -> `amd-mainline` in docs

Signed-off-by: Peter Jun Park <peter.park@amd.com>

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Signed-off-by: Peter Jun Park <peter.park@amd.com>
Co-authored-by: Peter Jun Park <peter.park@amd.com>
2024-09-25 17:21:39 +00:00
David Galiffi 75a4b51d0d Check Python version on application launch (#393)
* Check that the minimum required Python (3.8) version is used.

Prints a descriptive error message, rather than a cryptic import
failure, if minimum Python version is not met.

Internal ticket SWDEV-477233.


* Disable the RPM mangling of shebangs.

The are changing the `#!/usr/bin/python3` to `#!/usr/libexec/platform-python`.
With this set, omniperf is always using the platform installed version
of python, which is python 3.6 on RHEL 8. Using virtual environments,
like conda, did not work.

* Fix pylint issues

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-09-25 17:21:39 +00:00
Ammar ELWazir 38098f28c1 Fixing ROCProfiler SDK Generate packages action (#1096) 2024-09-25 08:17:21 -05:00