Grafico dei commit

606 Commit

Autore SHA1 Messaggio Data
ajanicijamd 2f9017f706 Fix build failure with Clang 20. (#1667)
* Modified for Clang

* Updated timemory version so it compiles with Clang 20

* Using TBB version 2018.6 for both GCC and Clang builds
2025-11-08 11:36:12 -05:00
Pratik Basyal 0325de6538 [ROCm Systems Profiler] Path issue note added to Profiling python script (#1766)
* Note added to Profiling python script

* Doxygen reverted

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

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

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-11-07 18:49:23 -05:00
Milan Radosavljevic d9b00da102 Add clean up of buffered_storage files (#1738)
* Add clean up of buffered_storage files

* Add step to workflows to test for remaining temp files after tests

* Applied suggestions from code review

* add deletion of all cache files

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-11-07 11:51:09 -05:00
Milan Radosavljevic a9082a7158 ROCpd schema fetching from rocprofiler-sdk (#1501)
- Integrate rocprofiler-systems with rocprofiler-sdk-rocpd to fetch schema
- If rocprofiler-sdk-rocpd is not availabe, use embedded schema files. With this we provide rocpd format support even if ROCm is not available
- Include detection in CMake if rocprofiler-sdk-rocpd package is available (and valid), and build database class upon that
- Update embedded schema that is used as a fallback.
- Update some validation tests to account for schema changes.
2025-11-07 09:45:29 -05:00
habajpai-amd 590c6c3b4f fix: null pointer after delete in get_stream_id (#1720) 2025-11-06 23:43:34 -05:00
Pratik Basyal fdb557c88a [Systems-Profiler] Officially unsupported OS removed (#1740)
* Fedora and CentOS removed

* David's feedback incorporated

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

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-11-06 16:06:28 -05:00
Kian Cossettini f4d0aeb8f3 Adjust host thread count for OpenMP-VV tests (#1742)
Reducing test time
2025-11-06 16:04:47 -05:00
habajpai-amd ea31a0bf18 rocprofiler-sdk: fix per-record group_by_queue scoping (#1676)
* rocprofiler-sdk: fix per-record group_by_queue scoping

* added under resolved issues to CHANGELOG.md

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-11-05 21:46:44 -05:00
David Galiffi 4b0fb2cdf5 Rename "corr_id" to "stack_id" in Perfetto annotations to match new n… (#1618)
* Rename "corr_id" to "stack_id" in Perfetto annotations to match new naming in schema.

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

* correlation_id.ancestor was not added until ROCPROFILER_VERSION 1.0

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2025-11-04 14:20:11 -05:00
Pratik Basyal 6356c179ff [ROCm Systems Profiler] 7.1.0 Formatting updated for understanding rocpd output docs" (#1663)
* Formatting udpated for ROCm Systems rocpd docs"

* Minor change

* Formatting in profiler script fixed"

* Sphinx warnings and formatting fixes

* Formatting fixed

* Formatting fixed

* Collapsible code block added

* Dixygne change reverted
2025-11-04 12:48:02 -05:00
Kian Cossettini 2a080641a1 [rocprofiler-systems] Consolidate CTests to tests/ folder (#1461)
* Consolidate CTests to tests/ folder

* Remove comment

* Consolidate CTests to tests/ folder

* Remove comment

* Separate source code and test code for thread-limit into appropriate folders

* Remove sleeper.cpp and instead use linux sleep cmd

* Merge python-console tests into python-tests
2025-11-03 11:03:35 -05:00
David Galiffi 5850d5b973 Updating documentation (#1602)
* Update rocprof-sys-feature-set.rst

* Update configuring-runtime-options.rst
2025-10-31 14:30:25 -04:00
Kian Cossettini 883caf2719 [rocprofiler-systems] Overhaul skip condition of implicit_task and add ROCPD validation test (#1589)
- Add rocpd validation check and fix implicit_task check
- SWDEV-562896
2025-10-31 09:59:23 -04:00
David Galiffi 3d7a5eec0e Setup rocprofsys_root environment variable (#1561)
* Setup `rocprofsys_root` environment variable

* Update `CHANGELOGS`

* Fixed formatting

* Add rocpd output and validation to python tests

* Refactoring environment setup
2025-10-28 13:06:07 -04:00
marantic-amd 08d259c24c Fix the issue when sampling JAX with rocpd (#1552) 2025-10-27 09:59:51 -04:00
David Galiffi e22a8e865e Update Timemory submodule (#1539)
- Fixes clang build failure

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: Aleksandar Janicijevic <Aleksandar.Janicijevic@amd.com>
2025-10-25 14:56:43 -04:00
David Galiffi 28c2728b6b Update Dyninst module (#1540)
- Fix nullptr check

------
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: Aleksandar Janicijevic <Aleksandar.Janicijevic@amd.com>
2025-10-25 14:56:29 -04:00
Milan Radosavljevic 8806be162c Change how cache manager handles child process trace cache for rocpd (#1033)
* Change how cache manager handles child process trace cache

* Sampling and backtrace metrics to cache

* Apply cmake formatting

* Fix parsing of metadata json

* Code clean up

* Fix build nlohmann json from source

* Fix storage parsed finished callback

* Revert sampling for child process

* Change cache file name generating

* Fix thread start stop

* Fix process start end timestamp

* Applied suggestions from code review

* Try with late start of flushing task thread

* Change dockerfiles for ci

* Revert changes on github workflows

* Remove json_fwd.hpp include

* fix dump

* Build nlohmann/json by default

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

* Update location of build artifacts for nlohmann/json

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

* Revert use_output_suffix

* Remove unused logs

* Fix cache store inside counter due to structure change

* Remove decode tests from debian ci

* Fix issue where all databases have the same UUID (#1499)

Co-authored-by: Aleksandar Djordjevic <adjordje@amd.com>

* Removing the cpack and install steps to save space

* Revert "Remove decode tests from debian ci"

This reverts commit ddabf6dd142dcf438e6b8997b8abe86f2c868468.

* Revert "Removing the cpack and install steps to save space"

This reverts commit 973da3a1ba99d99d529af5269d30e177092f9bfa.

* Add prepare-runner job as dependency to clean up the space

* Fix formatting

* Free up even more space

* Remove verbose for workflows

* remove hw_counters from ext_data

* move space clean up inside container

* try to remove external folder to free up space

* Check space

* Refactor Cleanup to it's own step

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: Aleksandar Djordjevic <aleksandar.djordjevic@amd.com>
Co-authored-by: Aleksandar Djordjevic <adjordje@amd.com>
2025-10-24 11:47:15 -04:00
Kian Cossettini db949445c3 [rocprofiler-systems] Overhaul OpenMP-VV Test compilation (#1389)
* Reworked Compilation

* Formatting

* Change compile log name

* Optimize Code

* Remove gfx940 and gfx941
2025-10-23 13:58:11 -04:00
David Galiffi e453705d9b Check if test exists before adding validation (#1478)
* Check if test exists before adding validation

* Adjust validation parameters for rocpd_string

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

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2025-10-22 12:19:38 -04:00
Kian Cossettini f0a41b65f7 [rocprofiler-systems] Add Fortran main detection to rocprof-sys-instrument to avoid instrumenting around C "main" wrapper (#1322)
* Add check for Fortran main

* Comment change

* MAIN__ -> Fortran main

* Cray Compiler comment change

* Add changelog and troubleshooting comments

* Improve CHANGELOG.md message

* Change CHANGELOG msg to be in 7.2.0

* Apply review change #1

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply review change #2

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply review change #3

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

---------

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>
Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-10-21 16:41:29 -04:00
David Galiffi 32f9fa6ca5 Enable some simple ROCpd testing (#834)
* Add for rocpd testing and output validation

Add for transpose, video-decode, jpeg-decode, roctx, and openmp-target
Add JSON check to pre-commit-config

Co-authored-by: Marjan Antic <Marjan.Antic@amd.com>

* Remove redundant environment variable

* Fix spelling typo

* Fix typo in error message

* Fix memory_allocation query

* Incorperate feedback from review. Handle case where there are multiple matching "name_prefix" tables.

* Fix environment settings in `rocprof-sys-testing.cmake`

Accidently removed in previous refactoring.

* Formatting python file

---------

Co-authored-by: Marjan Antic <Marjan.Antic@amd.com>
2025-10-20 17:40:10 -04:00
Milan Radosavljevic 48fdcebf62 Add caching of category region for rocpd (#1420)
* Add caching of category region

Fix vaapi traces

Remove region_with_name

* Applied suggestions from code review
2025-10-20 16:05:14 -04:00
ajanicijamd 620ccbeb82 Reducing the number of iterations for lulesh tests (#1233) 2025-10-17 17:32:27 -04:00
Jason Bonnell 9664f1dc91 [rocprofiler-systems] Add retries to RHEL install steps (#1384)
* Add GHCR retry logic

* Add retries to Install ROCm Packages step in rocprofiler-systems-redhat.yml

* Update containers-ci.yml file to use latest RHEL9/10 releases

* Use build-docker-ci script in rocprofiler-systems-containers

* Remove working-directory from step in rocprofiler-systems-redhat.yml

* Remove shell bash from Install ROCm Packages step

* Revert RHEL version change in rocprofiler-systems-redhat.yml
2025-10-17 10:20:54 -04:00
Milan Radosavljevic 00faa48ac2 Add flushing of perfetto buffer (#1417)
- Add flushing of perfetto buffer
- Add `ROCPROFSYS_PERFETTO_FLUSH_PERIOD_MS` config setting.
- Update CHANGELOG.sh
- Resolves SWDEV-518817

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-10-17 09:30:29 -04:00
marantic-amd f2ccc96cfd Add missing counter events handling for ROCPD (#1305)
* Add missing counter events handling for ROCPD

* Update projects/rocprofiler-systems/source/lib/rocprof-sys/library/rocprofiler-sdk/counters.cpp

* Update projects/rocprofiler-systems/source/lib/rocprof-sys/library/rocprofiler-sdk/counters.cpp

* Fixed formatting

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

---------

Signed-off-by: Marjan Antic <Marjan.Antic@amd.com>
Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-10-15 23:15:19 -04:00
David Galiffi 38a81ac4e3 Update VERSION to 1.3.0 (#1368) 2025-10-15 23:12:10 -04:00
David Galiffi b75423b173 Update installation and ROCPD documentation (#1300)
* Updating install doc page

* Removing the Quick Start page

* Add documentation for rocpd output

* Update links to reference rocm-systems repo

* Update README.md

Installation instructions references ROCm Docs link.

* Updated git clone instructions

Back to using https to clone the repository

* Fix formatting

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

* Add reference to "rocpd" section to the "Profiling Python" section

* Update CONTRIBUTING.md

* For ROCPD, document minimum version of SDK.

* Update CHANGELOGS

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

* Update CHANGELOG.md

Updated based on feedback from docs team

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md.

Simplify and remove setup information overlapping with the "rocm-systems" contributing documentation.

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Update CHANGELOG.md

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

* Apply suggestion from @prbasyal-amd

Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>
2025-10-15 23:11:46 -04:00
ajanicijamd 259ef6348b Fixed issues with nic-performance test (#1168)
- On some hosts the wget can finish too soon and PAPI doesn't catch even a single network event.
- On some hosts, there are multiple default NICs and the scripts didn't work in that case.
- The test script was writing the output of wget to /tmp directory, which causes a problem if another user tries to run the same test. Because the output file with the same name already exists in the same directory, but with a different owner, the test fails

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-10-14 23:45:08 -04:00
Jason Bonnell 082e7adb81 Updated VERSION regex for tarball in Dockerfiles (#1321) 2025-10-10 15:37:13 -04:00
David Galiffi 182a750c08 Fix for thread limit tests (#323)
* Fix for thread limit tests. Which are failing due to exceeding the number of threads allowed.

Signed-off-by: Anuj-Kumar Shukla <AnujKumar.Shukla@amd.com>

* Update CMakeLists.txt

* Stopping thread creation after max thread limit

* Adressed review comments

* Update projects/rocprofiler-systems/tests/source/CMakeLists.txt

---------

Signed-off-by: Anuj-Kumar Shukla <AnujKumar.Shukla@amd.com>
Co-authored-by: anujshuk-amd <anujshuk@amd.com>
2025-10-09 19:07:14 -04:00
Jason Bonnell cccc350dc6 [rocprofiler-systems] Add different test coverage for CI/Nightly, add better logging for failures (#1272)
* Try outputting LastTest.log

* Update if condition for outputting log

* Another attempt

* Only run Ubuntu Noble on MI355 in push/PR

* Try exclude matrix

* Move conditional statement in matrix exclusion

* Create ci-matrix.yml file

* Add needs parameter to ubuntu job

* Fix typo in matrix output variable

* Add back pull_request_template.md

* Add back pull_request_template.md
2025-10-08 15:18:56 -04:00
Kian Cossettini 0c53a12a88 [rocprofiler-systems] [ROCpd] Add OMPT callbacks to ROCpd (#1016)
* Add OMPT to ROCpd

* Use correct category

* Added wrapper functions for future control

* Formatting

* Fix naming

* Comment change

* Remove ompt_get_cb_args

* Switched to using region_sample for OMPT

* Remove relic function

* Remove get_use_rocpd that was used in this pr (one still remains)

* Rename ompt_get_args_string and reuse in tool_tracing_callback_stop

* Make lock init and destroy cb instant

* [Prototype] ROCPD Name fix

* [Prototype] ROCPD Name fix P1

* [Prototype] ROCPD Name fix P2

* ROCPD Name fix

* Var name changes

* Rewrite cb overwrite to single function

* [Important] Use parallel_data as key for parallel callback map

* Fix workflow failure

* Make cpp USE_ROCM consistent with hpp and use default constructor if USE_ROCM = 0

* Add missing ROCPROFILER_VERSION check

* Improve readability

* Make ompt storage maps thread local

* Part 1: Variable name fix, memory cleanup, and fixed asserts

* Part 2: Add comments

* Part 3: Add CI_THROW

* Part 4: Formatting

* Part 5: Move #include to cpp
2025-10-07 19:01:25 -04:00
ajanicijamd 02883c3d8d Fixed openmp-vv tests (#1203)
* LD_LIBRARY_PATH was being overridden so tool's libraries could not be found.
2025-10-03 21:33:02 -04:00
Milan Radosavljevic 273919460c Find and include python libs in LD_LIBRARY_PATH for rocprof-sys-python (#1224) 2025-10-03 16:19:16 -04:00
Jason Bonnell f0fd2797b6 Add rocm-version 7.0 to rocprofiler-systems workflows (#1139)
* Adding rocm 7.0 to Ubuntu, Red Hat, and Debian workflows

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-10-03 13:16:21 -04:00
Kian Cossettini edfda63701 Remove OMPT category and fix certain preprocessor checks (#1165)
* Part 1: Remove OMPT Category
* Part 2: Properly remove backend choices
* Part 3: Ensure preprocessor checks if user defined var to OFF
2025-10-02 21:08:18 -04:00
David Galiffi c0f8627e7f Update CI Docker files (#1202)
- Add `nlohmann-json-dev` (or equivalent) to CI Docker images for RHEL, SUSE, and Ubuntu.
- Add `gmock-dev` and `gtest-dev` (or equivalent) to CI Docker images for RHEL, SUSE, and Ubuntu.
- Add `--set solver classic` to conda config to resolve an issue setting up the conda environment
- Fix Perfetto package installation on ubuntu noble image.
- Add a check and log error if pip installation fail 

---------

Co-authored-by: jbonnell-amd <jason.bonnell@amd.com>
2025-10-02 21:06:01 -04:00
habajpai-amd 74fc268a32 Add libomptarget discovery to prevent OpenMP/HIP segfaults (#1043)
This PR fixes a segmentation fault seen when running rocprof-sys-sample with multi-process OpenMP/HIP applications.
The crash was caused by missing libomptarget.so on the runtime loader path or incorrect LD_PRELOAD settings.

Fixes SWDEV-552804

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-10-01 09:51:26 -04:00
Jason Bonnell 953fd60e9b rocprofiler GHCR Rename (#1112)
- Rename the GHCR packages for rocprofiler Docker images to reduce the number of packages that will be released on the repository
- Changed package name to only include the OS instead of OS+Version - version moved to the tag instead.
- Updated Dockerfile.*.ci files to specify target ROCm version from tarball in name.
2025-09-30 15:15:12 -04:00
systems-assistant[bot] d1ee1f0cba Upgrade binutils version from 2.42 to newer 2.44 version (#113)
* Upgrade binutils version from 2.42 to newer 2.44

---------

Co-authored-by: Marjan Antic <marantic@amd.com>
Co-authored-by: Sajina Kandy <sputhala@amd.com>
2025-09-29 14:50:33 -04:00
David Galiffi 4d959460e1 Add ROCPROFSYS_PATH variable to environment (#1103)
* Add ROCPROFSYS_ROOT to the env for sample

* Add env for causal

* Add env for instrument

* Check for null and address memory leak

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

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2025-09-24 13:52:34 -04:00
Kian Cossettini 7eb606a582 Make lock init and destroy cb events instant (#1074)
Removed names changes for `ROCPROFILER_OMPT_ID_lock_init` and `ROCPROFILER_OMPT_ID_lock_destroy`. 
Made both of these callbacks instant.
2025-09-24 07:41:47 -04:00
Kian Cossettini b2a026f134 Increase timeout for openmp-vv ctests (#1083)
- Set `SAMPLING_TIMEOUT` and `REWRITE_TIMEOUT` to 300 seconds for `openmp-vv` ctests.
2025-09-23 07:45:56 -04:00
Jason Bonnell 8b52d71cc7 rocprofiler-systems - add gfx containers to ghcr (#883)
* Initial skeleton code for rocprofiler-systems-continuous-integration.yml

* Add python3-devel to opensuse and rhel ci images

* Update rocprofiler-systems-containers.yml to include TheRock tarballs

* Update pip install command for Dockerfile.ubuntu.ci

* Fix pip install again for Dockerfile.ubuntu.ci

* Remove skeleton workflow for CI

* Add new ci-gfx containers for TheRock installs

* Add set -e and pipefail to ci Dockerfiles to detect errors

* Upgrade pip in Dockerfile.ubuntu.ci

* revert pipefail set -e change

* Replace build-docker-ci.sh script with Docker step for ci-base

* Add support for gfx950, add containers-ci-gfx.yml

* Add working-directory to matrix setup steps

* Try changing containers-ci-gfx.yml

* make more changes to containers-ci-gfx.yml

* Remove build-docker-ci.sh script from gfx step, fix typo in Dockerfile

* Remove gfx110X and gfx120X for now

* Update ci-gfx docker workflow to use ghcr.io

* Temporary change to test one image

* Enable push to test out ghcr package

* Add labels to debug oauth issue

* add pacakages permissions to step

* add rocprofiler-systems-ghcr.yml workflow

* Remove cache from Docker push action step

* Add prefix to tag

* Add back gfx94X and gfx950 support, add back no push on PR

* Remove gfx container creation from rocprofiler-systems-containers.yml

* Add a gfx950 image for now

* Revert change
2025-09-22 16:58:55 -04:00
Julian Jose 8157437273 [Palamida scan] SWDEV-553054 Adding missing copyrights information (#900)
* Add missing copyright headers in rocprofiler-systems
* Update python-tests
* Update causal test

---------

Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-09-12 14:17:58 -04:00
Kian Cossettini 5d582fcd37 [rocprofiler-systems] Add Fortran OpenMP CTests (#874)
* Added Fortran (amdflang) openmp tests using the openmp-vv project

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: David Galiffi <David.Galiffi@amd.com>
2025-09-12 09:52:16 -04:00
habajpai-amd 1c7293e6d0 Add bounds checks in transpose_a for both load and store so edge tiles dont read/write past MxN (#950) 2025-09-12 17:32:30 +05:30
Ammar ELWazir 2a9700fcd7 [ROCProfiler-Register/Systems/Compute] Fixing License file name usage (#927)
ROCProfiler-Register/Systems/Compute: The license file name in the CMake install module and other locations was originally LICENSE, but it was recently changed to LICENSE.md, requiring an update to the CMake install module and all other relevant locations.
2025-09-10 15:46:39 -04:00