Commit Graph

37726 Commits

Author SHA1 Message Date
David Galiffi 032d39f15c Update branding to ROCm Systems Profiler in documentation (#2)
* Update branding in docs

* Rename image used in documentation

* Update names of code samples.

In the code snippets, the "-" is not valid. ex., rocprof-sys_ --> rocprofsys_

* Update ASCII art

* update Doxyfile strip_from_path

* Add a "Formerly known as" message.

* Fixed typo in product name

ROCm Systems Profiler, not ROCm Profiler System

* Add "Omnitrace" back to the metadata keywords

* Update "install via package manager" section

* Update paths to user API files

* Rename configuration and environment settings

* Update Doxyfiles

Update publisher name & ID to "AMD".
Update bundle ID to "rocprofiler-systems"

* Update docs/what-is-rocprof-sys.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/conceptual/data-collection-modes.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/tutorials/video-tutorials.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/conceptual/rocprof-sys-feature-set.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/how-to/configuring-runtime-options.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/how-to/configuring-validating-environment.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/how-to/general-tips-using-rocprof-sys.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/reference/rocprof-sys-glossary.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/reference/development-guide.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/how-to/instrumenting-rewriting-binary-application.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/install/quick-start.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Note that videos were recorded using the "Omnitrace" name.

* Rebase and update some file paths

* Update paths to doc images

* Update Omnitrace references in code snippets

* Rename examples still using the "omni" prefix.

* Update docs/how-to/performing-causal-profiling.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/how-to/profiling-python-scripts.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/how-to/sampling-call-stack.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/how-to/understanding-rocprof-sys-output.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

* Update docs/install/install.rst

Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>

---------

Co-authored-by: Peter Park <peter.park@amd.com>
Co-authored-by: Jeffrey Novotny <jnovotny@amd.com>
2024-10-17 15:19:19 -04:00
David Galiffi 181a782835 Rename some examples still using the "omni" prefix. (#8)
* Rename some examples still using the "omni" prefix.

* CMake formatting

[ROCm/rocprofiler-systems commit: 656b34b61f]
2024-10-17 14:52:09 -04:00
David Galiffi 656b34b61f Rename some examples still using the "omni" prefix. (#8)
* Rename some examples still using the "omni" prefix.

* CMake formatting
2024-10-17 14:52:09 -04:00
David Yat Sin e1865f7b16 kfdtest: Inherit CXX flags
Change-Id: I2e902ec3e6fd582c53a6d95cd49fe2b18f56b8ca
2024-10-17 14:17:08 -04:00
German Andryeyev ad18146d8f SWDEV-486602 - Change SysmemPool implementation
- Remove the list of all chunks and use embedded chunk
information in each allocation. That simplifies Free() logic,
avoiding expensive loop if for some reason the number of
outstanding allocations significantly grew.

Change-Id: I9ea84d314320ce356ed24dd3180f262e2116c59b
2024-10-17 12:39:39 -04:00
Rahul Manocha e729f08704 SWDEV-468039,SWDEV-482579 - Enable FP8 SW Conversions on pre gfx940 archs
1) SW Conversions for ocp and fnuz are enabled on pre mi300 archs
2) for mi300 only fnuz is enabled
3) for gfx1200 only ocp is enabled

Change-Id: I90373752a2d15eff20d5deec874ed396ba4e1788
2024-10-17 11:49:22 -04:00
German Andryeyev 8657a77029 SWDEV-491375 - Limit the SW batch size
Applications may submit commands withoout waits
for GPU. That causes a growth of SW unreleased commands.
Make sure runtime flushes SW queue, if it grows over some
threshold, controlled by DEBUG_CLR_MAX_BATCH_SIZE.

Change-Id: Ia4d85c24210ef91c394f638ab6b53b14323a0396
2024-10-17 10:53:57 -04:00
Gopesh Bhardwaj 63c5f87b85 rocprofv3: docs and help menu updates (#1129)
* doc updates

* Correcting ROCtx information

* Making ROCTx string consistent

* missing occurence

[ROCm/rocprofiler-sdk commit: 320427b5f5]
2024-10-17 13:28:53 +05:30
Gopesh Bhardwaj 320427b5f5 rocprofv3: docs and help menu updates (#1129)
* doc updates

* Correcting ROCtx information

* Making ROCTx string consistent

* missing occurence
2024-10-17 13:28:53 +05:30
gobhardw 7fa8139944 doc changes
Change-Id: I7e3c8ff9b3e8184e080fdf9be148e913d8438932
2024-10-17 02:28:06 -04:00
gobhardw 7f44ba4394 doc changes
Change-Id: I7e3c8ff9b3e8184e080fdf9be148e913d8438932


[ROCm/rocprofiler commit: 7fa8139944]
2024-10-17 02:28:06 -04:00
Manjunath P Jakaraddi ad4b331279 Adding start and end timestamp columns in csv (#1128)
* Adding start and end timestamp columns in csv

* Adding assert check for the counter timestamps

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: 673c21c6db]
2024-10-17 11:31:00 +05:30
Manjunath P Jakaraddi 673c21c6db Adding start and end timestamp columns in csv (#1128)
* Adding start and end timestamp columns in csv

* Adding assert check for the counter timestamps

---------

Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-10-17 11:31:00 +05:30
Chris Freehill 9b13bcd0ac rocr: Ensure globals are initialized at first use
When ROCr is built as a static library, global variables
were often not initialized to valid values at their first
use. This change addresses that problem.

Change-Id: I550fa41feb3bc04b9cc686bcfb4acf2a7b651a88
2024-10-16 23:19:48 -04:00
David Yat Sin 80da7d5ee4 Revert "hsakmt: Only set exec flag when requested"
This reverts commit 75143555fa.

Reason for revert: 
This is currently breaking some tools. Will put it back as soon as tools update their code.

Change-Id: I05c82d443f3a274a618d05e6dc5a87943f5dc7a4
2024-10-16 20:31:27 -04:00
Alex Xu c5e11fcac8 SWDEV-489441 - Add a note to __constant__ docs
We observed community user attempting to add __constant__ to template, which is considered as bad practice. Adding a note to address it.

Change-Id: I8aaede26e4e29bf450374e74ef79c033d4f1432b
2024-10-16 18:44:35 -04:00
Alex Xie df9ae754a4 SWDEV-482751 - Depends on distro opencl icd loader
Since we don't distribute icd loader, we need to install distro icd loader.

Change-Id: I1ea86bcf7c642a034c53f71130b15de1fa27e31e
2024-10-16 16:21:58 -04:00
Ben Richard 6b0195f83e Use MI300 chip_id instead of model to detect XCD count (#448)
In a previous change we started using "MI300" for gpu_model instead of the full
"MI300X_A0" or "MI300X_A1", etc.

The XCD detection code was using gpu_model and expecting the full name, causing
the XCD count = 1. Passing chip_id fixes the issue.

Signed-off-by: benrichard-amd <ben.richard@amd.com>

[ROCm/rocprofiler-compute commit: a236fe0412]
2024-10-16 15:41:11 -04:00
Ben Richard a236fe0412 Use MI300 chip_id instead of model to detect XCD count (#448)
In a previous change we started using "MI300" for gpu_model instead of the full
"MI300X_A0" or "MI300X_A1", etc.

The XCD detection code was using gpu_model and expecting the full name, causing
the XCD count = 1. Passing chip_id fixes the issue.

Signed-off-by: benrichard-amd <ben.richard@amd.com>
2024-10-16 15:41:11 -04:00
itrowbri 3c4467274f SWDEV-477849: Remove dependency of libatomic from roctracer
Change-Id: I2d94218936d33d832d1fddfe14454de5c1bc64f5


[ROCm/roctracer commit: 4ca1a68fd9]
2024-10-16 13:49:52 -05:00
itrowbri 4ca1a68fd9 SWDEV-477849: Remove dependency of libatomic from roctracer
Change-Id: I2d94218936d33d832d1fddfe14454de5c1bc64f5
2024-10-16 13:49:52 -05:00
Benjamin Welton 9ea02403df Clang Warning Fixes (#1131)
Builds prevented on clang-18

[ROCm/rocprofiler-sdk commit: 28a6918b33]
2024-10-15 22:20:38 -07:00
Benjamin Welton 28a6918b33 Clang Warning Fixes (#1131)
Builds prevented on clang-18
2024-10-15 22:20:38 -07:00
Ammar ELWazir b610c50913 Fixing kokkosp tool library packaging (#1121)
* Fixing kokkosp tool library packaging

* Update source/lib/rocprofiler-sdk-tool/kokkosp/CMakeLists.txt

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update CMakeLists.txt

* Update CMakeLists.txt

* Component Requirement in CPack

* Adding package dependency

* Update CMakeLists.txt

* Update rocprofiler_config_packaging.cmake

* Fix rocprofiler-sdk-tool-kokkosp BUILD/INSTALL RPATH

- CMAKE_INSTALL_LIBDIR doesn't help

* Add BUILD/INSTALL RPATH to rocprofv3-trigger-list-metrics

- fixes packaging issues

* Update packaging

- core depends on rocprofiler-sdk-roctx
- add CPACK_DEBIAN_PACKAGE_SHLIBDEPS_PRIVATE_DIRS to resolve inter-package dependencies

* Fix package depends version format

* Improve tests/rocprofv3/summary/validate logging

* Update CI workflow

- prioritize roctx package in Install Packages step

* Remove setting <package-name>_VERSION in config.cmake.in

- this is automatically handled by existence of <package-name>-config-version.cmake

* Update rocprofiler-sdk-config.cmake

- relax find_package versioning requirements to same major and minor version

* Update rocprofiler-sdk-config.cmake

- relax find_package versioning requirements (remove EXACT, specify range)

* Tweak CI workflow

* Update perfetto_reader.py

- better handle failure to load trace processor

* Misc cleanup for config packaging

* Update config packaging

* Update config packaging

* Revert perfetto for core-rpm packages

* Revert perfetto for core-rpm packages

- perfetto < 0.9.0

* Tweak tests/rocprofv3/summary/validate.py

- reorder some checks

---------

Co-authored-by: Ammar Elwazir <aelwazir@useocpm2m-387-013.amd.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>

[ROCm/rocprofiler-sdk commit: d762694acb]
2024-10-15 20:28:06 -05:00
Ammar ELWazir d762694acb Fixing kokkosp tool library packaging (#1121)
* Fixing kokkosp tool library packaging

* Update source/lib/rocprofiler-sdk-tool/kokkosp/CMakeLists.txt

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update CMakeLists.txt

* Update CMakeLists.txt

* Component Requirement in CPack

* Adding package dependency

* Update CMakeLists.txt

* Update rocprofiler_config_packaging.cmake

* Fix rocprofiler-sdk-tool-kokkosp BUILD/INSTALL RPATH

- CMAKE_INSTALL_LIBDIR doesn't help

* Add BUILD/INSTALL RPATH to rocprofv3-trigger-list-metrics

- fixes packaging issues

* Update packaging

- core depends on rocprofiler-sdk-roctx
- add CPACK_DEBIAN_PACKAGE_SHLIBDEPS_PRIVATE_DIRS to resolve inter-package dependencies

* Fix package depends version format

* Improve tests/rocprofv3/summary/validate logging

* Update CI workflow

- prioritize roctx package in Install Packages step

* Remove setting <package-name>_VERSION in config.cmake.in

- this is automatically handled by existence of <package-name>-config-version.cmake

* Update rocprofiler-sdk-config.cmake

- relax find_package versioning requirements to same major and minor version

* Update rocprofiler-sdk-config.cmake

- relax find_package versioning requirements (remove EXACT, specify range)

* Tweak CI workflow

* Update perfetto_reader.py

- better handle failure to load trace processor

* Misc cleanup for config packaging

* Update config packaging

* Update config packaging

* Revert perfetto for core-rpm packages

* Revert perfetto for core-rpm packages

- perfetto < 0.9.0

* Tweak tests/rocprofv3/summary/validate.py

- reorder some checks

---------

Co-authored-by: Ammar Elwazir <aelwazir@useocpm2m-387-013.amd.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2024-10-15 20:28:06 -05:00
Galantsev, Dmitrii 28acbf0436 Profiler - Modify metrics
Remove occupancy metrics and replace with OccupancyPercent

Add OCCUPANCY_PERCENT which uses OccupancyPercent
Add GR_ENGINE_ACTIVE which uses GPU_UTIL/100
Add TENSOR_ACTIVE_PERCENT which uses MfmaUtil
Modify FLOPS_64 to use FP64_ACTIVE

Change-Id: I5f30d77a0c80f5ac78abd1a9e57f8a0a3c6cc00b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-10-15 19:00:30 -05:00
Galantsev, Dmitrii 793b2de0cb Profiler - Modify metrics
Remove occupancy metrics and replace with OccupancyPercent

Add OCCUPANCY_PERCENT which uses OccupancyPercent
Add GR_ENGINE_ACTIVE which uses GPU_UTIL/100
Add TENSOR_ACTIVE_PERCENT which uses MfmaUtil
Modify FLOPS_64 to use FP64_ACTIVE

Change-Id: I5f30d77a0c80f5ac78abd1a9e57f8a0a3c6cc00b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 28acbf0436]
2024-10-15 19:00:30 -05:00
Jonathan R. Madsen 3df0605296 Correct the package name of rocprofiler-sdk (#1126)
* Correct the package name of rocprofiler-sdk

ROCM VERSION(for ex: 60300) was missing in the package name.
Added the same

* Use cmake cache string while setting the variable for ROCm Version

* correct the cmake-format

---------

Co-authored-by: Ranjith Ramakrishnan <Ranjith.Ramakrishnan@amd.com>

[ROCm/rocprofiler-sdk commit: 309d53b20b]
2024-10-15 18:45:51 -05:00
Jonathan R. Madsen 309d53b20b Correct the package name of rocprofiler-sdk (#1126)
* Correct the package name of rocprofiler-sdk

ROCM VERSION(for ex: 60300) was missing in the package name.
Added the same

* Use cmake cache string while setting the variable for ROCm Version

* correct the cmake-format

---------

Co-authored-by: Ranjith Ramakrishnan <Ranjith.Ramakrishnan@amd.com>
2024-10-15 18:45:51 -05:00
Daniel Su 0706d918c8 External CI: enable CI triggers (#6)
[ROCm/rocprofiler-systems commit: c16f57801a]
2024-10-15 16:42:56 -04:00
Daniel Su c16f57801a External CI: enable CI triggers (#6) 2024-10-15 16:42:56 -04:00
David Yat Sin d58c9dea0a rocr: Add executable flag for memory allocations
Change-Id: I8307cd3562c3ab9c12fef8c457a59916e33b7923
2024-10-15 16:52:00 +00:00
David Galiffi 489eda995d Rename Omnitrace to ROCm Systems Profiler (#4)
The Omnitrace program is being renamed. 

Full name: "ROCm Systems Profiler"
Package name: "rocprofiler-systems"
Binary / Library names: "rocprof-sys-*"

---------
Co-authored-by: Xuan Chen <xuchen@amd.com>
Signed-off-by: David Galiffi <David.Galiffi@amd.com>

[ROCm/rocprofiler-systems commit: d07bf508a9]
2024-10-15 11:20:40 -04:00
David Galiffi d07bf508a9 Rename Omnitrace to ROCm Systems Profiler (#4)
The Omnitrace program is being renamed. 

Full name: "ROCm Systems Profiler"
Package name: "rocprofiler-systems"
Binary / Library names: "rocprof-sys-*"

---------
Co-authored-by: Xuan Chen <xuchen@amd.com>
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-10-15 11:20:40 -04:00
sdashmiz 4e4cde6d70 SWDEV-462585 - Add initial test for hipStreamLegacy
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Idf38f2e8c49e9011ede73e6222db68ccdc74ed80
2024-10-15 11:11:12 -04:00
Ajay ff306ce9d8 SWDEV-482751 - add distro path to find package AMD_ICD
Change-Id: I0d21f6ba6ade3ed932b134da503f639fd5d0d552
2024-10-14 15:27:34 -07:00
Manjunath-Jakaraddi f84ecfe99b SWDEV-481162: Updating MfmaUtil metric RDC
Change-Id: I60efa183edc14b6f870f7b6a82f223ea2c9789e5
2024-10-14 16:48:56 -05:00
Manjunath-Jakaraddi 17fac40bae SWDEV-481162: Updating MfmaUtil metric RDC
Change-Id: I60efa183edc14b6f870f7b6a82f223ea2c9789e5


[ROCm/rocprofiler commit: f84ecfe99b]
2024-10-14 16:48:56 -05:00
Giovanni LB e5e2c6041d SWDEV-310289: Adding SPI pipe selection
Change-Id: I4856d284df3dccaa100a2341211ae09e11c63ecd
2024-10-12 01:14:49 -04:00
Giovanni LB 896404efb3 SWDEV-310289: Adding SPI pipe selection
Change-Id: I4856d284df3dccaa100a2341211ae09e11c63ecd


[ROCm/rocprofiler commit: e5e2c6041d]
2024-10-12 01:14:49 -04:00
Benjamin Welton 6d80088c84 Added FP64_ACTIVE and ENGINE_ACTIVE
Should replicate DCGM_FI_PROF_EVAL_FLOPS_64 and
DCGM_FI_PROF_GR_ENGINE_ACTIVE respectively. See
https://ontrack-internal.amd.com/browse/SWDEV-490046
and
https://ontrack-internal.amd.com/browse/SWDEV-490031

Change-Id: Ia79f6a1601beac48a350493f2e83ce322c1d8d33
2024-10-11 15:51:09 -07:00
Benjamin Welton 4dd298f312 Added FP64_ACTIVE and ENGINE_ACTIVE
Should replicate DCGM_FI_PROF_EVAL_FLOPS_64 and
DCGM_FI_PROF_GR_ENGINE_ACTIVE respectively. See
https://ontrack-internal.amd.com/browse/SWDEV-490046
and
https://ontrack-internal.amd.com/browse/SWDEV-490031

Change-Id: Ia79f6a1601beac48a350493f2e83ce322c1d8d33


[ROCm/rocprofiler commit: 6d80088c84]
2024-10-11 15:51:09 -07:00
coleramos425 38df31b863 Update CODEOWNERS for product team
Signed-off-by: coleramos425 <colramos@amd.com>


[ROCm/rocprofiler-compute commit: e633d17372]
2024-10-11 20:25:43 +00:00
coleramos425 e633d17372 Update CODEOWNERS for product team
Signed-off-by: coleramos425 <colramos@amd.com>
2024-10-11 20:25:43 +00:00
German Andryeyev 364dfb0ed1 SWDEV-486602 - Optimize HSA callback performance
- Don't generate callbacks for HIP events
- Don't process profiling info in the callback for HIP events
- Wait for CPU status update of the submitted commands
every 50 calls. That will allow to drain the commands and
destroy HSA signals.

Change-Id: Ib601a350e7e7c2b6c6209a172385389baccf73a9
2024-10-11 14:50:25 -04:00
David Yat Sin ead3aafcda rocrtst: Fix VirtMemory_Basic_Test permissions
Fix VirtMemory_Basic_Test permissions to adjust for previous change to
the hsa_amd_vmem_set_access behavior change that was done with this
patch:

rocr/vmm: Only modify permisions for specified agents

Change-Id: I97230600b9b9144459b08ca3da3a5bfbdbb98231
2024-10-11 10:41:11 -04:00
gobhardw d1e0c2cbb2 SWDEV-479505 Updating ROCtracer spec for device ids
Change-Id: I9b65d91b36b77183d5fa55f23e4926510e0b5832


[ROCm/roctracer commit: d5bbc8aa77]
2024-10-11 09:26:42 -04:00
gobhardw d5bbc8aa77 SWDEV-479505 Updating ROCtracer spec for device ids
Change-Id: I9b65d91b36b77183d5fa55f23e4926510e0b5832
2024-10-11 09:26:42 -04:00
Ioannis Assiouras 5da72f9d52 SWDEV-490323 - Fix validateMemAccess in hipMemset
Changed the validation to occur on the sub-object rather than the parent.

Change-Id: I87bf5ef3526d0db9304099ef9ac1a5494e9a01a9
2024-10-10 18:08:28 -04:00
Todd tiantuo Li 41dc4545fc SWDEV-472357 - support Rect copy with staging buffer for 2D & 3D memcpy in PAL
Change-Id: Ie32f3e5a6fa077f6b2db20fc1ab1e2e0da8344cb
2024-10-10 18:00:19 -04:00