Commit Graph

13501 Commits

Author SHA1 Message Date
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 967dc81a87 Remove unrelease prefix from CHANGELOG
Signed-off-by: coleramos425 <colramos@amd.com>


[ROCm/rocprofiler-compute commit: 5d7af74f85]
2024-09-27 21:15:15 +00: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 72877f5544 Update VERSION, CHANGELOG, and README citation for next release (#433)
Signed-off-by: Carrie Fallows <carrie.fallows@amd.com>

[ROCm/rocprofiler-compute commit: ba4429d745]
2024-09-27 16:10:31 -05: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 bdca97f75f Updating ROCm Version Checker for CI
[ROCm/rocprofiler-sdk commit: 16e791dc9a]
2024-09-27 14:09:24 -05:00
Ammar ELWazir 16e791dc9a Updating ROCm Version Checker for CI 2024-09-27 14:09:24 -05:00
Ammar ELWazir be05575a18 Checking ROCm Version in CI
[ROCm/rocprofiler-sdk commit: 47154f5a8b]
2024-09-27 14:07:11 -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 2bafbe3933 External CI enablement (#1100)
Will only be enabled on the public repo, but present in this repo for consistency.

[ROCm/rocprofiler-sdk commit: a3819f09ad]
2024-09-26 15:43:55 -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 99b07a2251 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>

[ROCm/rocprofiler-systems commit: a34a91a2e2]
2024-09-26 12:21:31 -04: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 bdcba5d6fb Include note about known issue with Perfetto v47.0 and above. (#391)
[ROCm/rocprofiler-systems commit: ae23f925a0]
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 4888de3333 Add rocm tag to cpack.yml (#389)
* Add rocm tag to cpack.yml
* Update softprops/action-gh-release to v2

[ROCm/rocprofiler-systems commit: 558a8d00fd]
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 5a864ecd4b Update VERSION to 1.12.0 (#387)
Bumping version since rocm-rel-6.3.0.1 branched.

[ROCm/rocprofiler-systems commit: 8b36b6959b]
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 a174156fbc 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>

[ROCm/rocprofiler-systems commit: 6c28e49d11]
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 ae0ad6560b 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>

[ROCm/rocprofiler-compute commit: 0d15023f69]
2024-09-25 17:21:40 +00: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 19e9154d10 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>

[ROCm/rocprofiler-compute commit: c48e6e31cf]
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 92d8dddb60 External CI: enable CI triggers (#426)
Signed-off-by: Daniel Su <danielsu@amd.com>

[ROCm/rocprofiler-compute commit: 7ff385a105]
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 86b6c772ee update package manager install docs to include omniperf in PATH (#420)
Signed-off-by: Peter Jun Park <peter.park@amd.com>

[ROCm/rocprofiler-compute commit: ecd69d109b]
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 d99f2c7626 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>


[ROCm/rocprofiler-compute commit: bc4d386683]
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 a9935ea9a5 Rollback Grafana version in Docker container to enable deprecated Angular plugin (#416)
Signed-off-by: coleramos425 <colramos@amd.com>


[ROCm/rocprofiler-compute commit: 2aee85cb06]
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 9efb9fd343 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>

[ROCm/rocprofiler-compute commit: 68e2cf0973]
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 1e1c7430d4 mv changes to changelog.md
Signed-off-by: Peter Jun Park <peter.park@amd.com>


[ROCm/rocprofiler-compute commit: 92cfd5149a]
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 205209c0fd Run Workflows on Release Branches (#409)
Signed-off-by: David Galiffi <David.Galiffi@amd.com>

[ROCm/rocprofiler-compute commit: 3499b8571d]
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 519a737d57 Update dependabot.yml target-branch
Signed-off-by: David Galiffi <David.Galiffi@amd.com>

[ROCm/rocprofiler-compute commit: ae6ed4c8a9]
2024-09-25 17:21:40 +00:00