Gráfico de commits

1362 Commits

Autor SHA1 Mensaje Fecha
jamessiddeley-amd 833425577f fix roofline kernel_names test case (#1954) 2025-11-21 15:04:08 -05:00
vedithal-amd 6540155c9d Bugfixes (#1971)
* Implement AMDGPU driver info and GPU VRAM attributes in system info.
  section of analysis report.

* Backward compatibility for rocprofiler-sdk avail module path migration

* Fix roofline calculation where AI data points are N/A
2025-11-21 10:54:25 -05:00
Kunal Malviya 4f4352acd0 Enable ROCPROF_KERNEL_TRACE for PC sampling test by setting value to 1 (#1952) 2025-11-20 22:24:15 -05:00
jonatluu 6b8aae3796 Enable Lintian Support rocm-systems (#1578)
* draft testing fix for no copyright file and no changelog

* test fix no-changelog no-copyright

* changelog copyright fixt

* remove utils.cmake

* rocr lintian

* lintian overrides, copyright, changelog install

* fix lintian overrides install

* comp_type static fix and remove debug logs

* syntax error

* update static build check

* update file permissions to 0755 to fix error control-file-has-bad-permissions 0664 != 0755

* fix lintian errors in rdc and remove logs from roctracer

* lintian error fix rocprofiler

* fix lintian error

* mmove lintian overrides install

* lintian errors fix

* move lintian overrides install

* use changelog already provided by rdc

* fix formatting use existing changelog if provided

* fix formatting use changelog in rocprofiler

* draft testing fix for no copyright file and no changelog

* test fix no-changelog no-copyright

* changelog copyright fixt

* lintian overrides, copyright, changelog install

* fix lintian overrides install

* comp_type static fix and remove debug logs

* fix lintian errors in rdc and remove logs from roctracer

* lintian error fix rocprofiler

* fix lintian error

* mmove lintian overrides install

* lintian errors fix

* move lintian overrides install

* use changelog already provided by rdc

* fix formatting use existing changelog if provided

* fix formatting use changelog in rocprofiler

* remove overrides. Use existing changelog and copyright

* resolve merge conflict

* update license for hsa-rocr. Use NCSA license

* install license

* install license
2025-11-20 11:38:39 -05:00
ggottipa-amd bf521c996b Correcting peak VALU Roofline profiling and analysis by removing FP8 VALU and BF16 VALU benchmarking. (#1442)
* Removing FP8 from peak VALU datatypes - PEAK_OPS_DATATYPES.

* Similar change for BF16.

* Roofline binaries from rocm-amdgpu-bench generated 10/22.
https://github.com/ROCm/rocm-amdgpu-bench/commit/2113ef1f5eada8a4a6e44e6d07fd6abac9b0a3f8
Bins include change that removes FP8 and BF16 peak VALU benchmarks.
Built and tested on rhel8, azl3, ubuntu22.04, sles15sp6.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Re-committing the bins

accidentally copied over bins from the wrong folder earlier, caught by Gowthami during testing.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Updated changelog

* gersemi fix

* Changelog corrected.

* Changelog fix.

* Adding this to the 7.2.0 section to be picked up in an RC build.

* Moving changelog entry into unreleasesd section - team reconfirmed cutoff date after I requested this change so I am just quickly correcting my mistake in my ask.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

---------

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
Co-authored-by: Carrie Fallows <Carrie.Fallows@amd.com>
Co-authored-by: JeniferC99 <150404595+JeniferC99@users.noreply.github.com>
2025-11-20 12:46:48 +05:30
xuchen-amd 9efd330fae add warning msg for unsupported arch in profile mode. (#1933) 2025-11-19 13:42:13 -05:00
xuchen-amd c778acdb70 [rocprof-compute] update yamls for docs (#1887) 2025-11-19 10:46:02 -05:00
abchoudh-amd 433af908a6 Iteration multiplexing in rocprof-compute (#1533)
* Profile with multiple input files

* Iteration multiplexing kernel option

* Iteration multiplexing data

* Iteration multiplexing

* Counter profile caching

* Counter dispatch info

* Sanitize CLI args

* Formatting and removed unused header file

* Formattng

* Changed CLI args

* Merge counters for analysis

* Iteration multiplexing log while analysis

* Formatting

* Log

* Guard against incomplete profiling

* Fixed merge counter

* Tests

* Update doc

* Test update

* Fixed formatting

* Test fix

* Merge conflict commit

* Fix tests

* Added comment for counter definition file

* Do not allow dispatch filtering with iteration multiplexing

* Fixed formatting

* Doc indentation update
2025-11-19 21:09:16 +05:30
abchoudh-amd 76ea35787d Split roofline tests, and fix none outputs (#1913)
* Split roofline tests

* Use N/A for missing values

* Test eval_expression for no valid data

* Fixed tests

* Updated Changelog for N/A

* Fixed platform specific test failure
2025-11-19 15:36:08 +05:30
vedithal-amd ae8f72fa79 [rocprofiler-compute] Use native tool for counter collection (#1212)
* Use native tool for counter collection

* Add native counter collection tool which uses rocprofiler-sdk C++
  library public API to get counter collection data
    * This is enabled by default, unless --no-native-tool option is
      provided or ROCPROF=rocprofv3 env. var. is provided
    * This tool is only supported for ROCm version >=7.x.x
    * This tool is not supported for attach/detach scenario
* Build native tool shared object during build time
* If using rocprof-compute without building then runtime compilation of
  t push native tool shared object is performed
* rocprofiler-sdk tools is still used for services other than counter
  collection and data collected by native tool is merged into the
  rocpd/csv output of rocprofiler-sdk tool

* Make `rocpd` choice the default choice for `--format-rocprof-output`
  option
    * If `rocpd` public API from rocprofiler-sdk library is not present,
      then fallback to `csv` choice
    * In this case only `pmc_perf.csv` is written in workload folder
      instead of multiple `csv` files for each profiling run
* Remove `json` choice from `--format-rocprof-output` option since it
  functions identical to `csv` option

* Rename option `--rocprofiler-sdk-library-path` to
  `--rocprofiler-sdk-tool-path` since we LD_PRELOAD the
  rocprofiler-sdk tool shared object and not the rocprofiler-sdk library
shared object

* Fix the meaning of `--dispatch` option in `profile` mode to mention
  dispatch iteration filtering instead of dispatch id filtering
    * --dispatch option in analyze mode does dispatch id filtering

* Move standalone binary creation logic from cmake file to docker file

* fix native counter collection tool during attach/detach

* improve logging

* fix attach detach with native tool

* fix attach detach with native tool

* do not support attach/detach in native tool

* Update changelog

* add standalone binary creation functionality in cmake

* address review comments

* address review comments

* fix formatting

* address review comments

* Adding paths for cmake to search. Also updated min. cmake requirement to 3.21 as this was when hip was supported.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Update hip compiler ID check, sometimes comes up as Clang, sometimes ROCMClang- depends on setup.
Updated formatting.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* RHEL8.10 unable to compile due to defaulting to old c++ version, need to force c++17

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Updating changelog per docs team recommendations

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Apply suggestions from code review to changelog

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

* Do not required HIP complier to build native counter collection tool

* fix cmake

* gersemi formatting on latest cmake change

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* ex ci updated dependencies to include rocprofiler-sdk, but cmake was still not capturing the path- there was a commit that added to the cmake_prefix_path entry that specified rocprof-sdk's cmake location ut was too specific for the search paths in find_package's config mode.
removing the cmake_prefix_path var and adding hints to find_package call instead, and specifying config mode so it knows how to construct the search paths

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* gersemi run for formatting

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Still need prefix path, should not have been removed in last commit but does need to be shortened to just the rocm path to allow for find_package config mode to do the job

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* include cstdint for uint32_t

* Run formatting on helper.cpp

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Remove rocm 7.2 release stuff from version and changelog and handle it in separate pr

* fix version

* fix changelog

* fix changelog

* run ruff formatter

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* fix rocprofiler-sdk attach so path

---------

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
Co-authored-by: Carrie Fallows <Carrie.Fallows@amd.com>
Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>
2025-11-18 23:34:38 -05:00
cfallows-amd 8418895b92 Add tencentos to roofline binary detection (#1830)
Force tencentos to use rhel-based bin since tencent is branched off of centos, which is branch of fedora.

Verified rocprof-compute run correctly selects bin to use, and the roofline benchmark values look similar between runs on rhel vs tencentos4 docker images on same system.

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
2025-11-18 14:51:05 -05:00
Mark Meserve 12718139fe [rocprofiler-sdk] rename librocprofv3-attach.so (#1342)
* attach: rename librocprofv3-attach

- Renames library to librocprofiler-sdk-rocattach
- ROCAttach library will be formalized and documented in future commit

* Address review comments

- Rename rocprofv3-attach.py to rocprof-attach.py
- Use common filesystem.hpp in rocattach

* Fix component name typo

* Doc fixup

---------

Co-authored-by: JeniferC99 <150404595+JeniferC99@users.noreply.github.com>
2025-11-18 08:52:17 -08:00
ywang103-amd 15e5f09038 roll back json file processing logic for pc sampling (#1835)
* roll back json file processing logic for pc sampling

* format cmake files

* Revert "format cmake files"

This reverts commit e64df65a8f30abcb6738e3a0d7ffd4270bd1d302.
2025-11-18 08:32:21 -08:00
vedithal-amd 44a32e23ac [rocprofiler-compute] Bump version and update changelog ahead of ROCm 7.2 release (#1908) 2025-11-18 10:04:28 -05:00
jamessiddeley-amd d49e2e35fd [rocprof-compute] Automate ctest coverage and test cases on runners with CDash (#1481)
* Add nightly coverage workflow

* ruff formatting

* temp workflow testing

* restore workflow file

* add workflow condition

* update workflow file

* update workflow file

* fix typo in run-ci.py

* edit run-ci.py

* add python deps install

* add python deps install

* add python deps install

* add python deps install

* check if enable coverage is on when using workflow

* remove github CI breakdown and fix enable coverage

* set cache variables must be set before dashboard starts

* Update run-ci.py

* Update run-ci.py to fix ctest cache

* Update rocprofiler-compute-code-coverage.yml to install tests

* Update rocprofiler-compute-code-coverage.yml

* Restore workflow file

* Update run-ci.py

* Simplify workflow build command

* Update run-ci.py to build tests

* edited run-ci script

* edit ctest configure commands

* edit ctest configure commands to be on one line

* edit ctest configure command to include path to amdclang++

* update clang check in tests/cmakelists.txt

* update rocm

* update rocm

* update rocm version 7.0.2

* update tests/CMakeLists.txt

* use tarball instead for rocm install

* apt install rocm-dev instead for 7.0.0 release

* workflow tweaks

* update to use new 'tools' dir

* install rocm-dev

* add CMAKE_CXX_COMPILER as clang

* update tests/cmakelists.txt

* update cdasg site and build names

* remove run automatically on pull requests

* ruff format

* increased timeouts for tests

* add back reruns for workflow testing

* fix typo

* rename workflow "nightly" -> "code"

* added tracks to keep track of gpu (325 vs 355)

* remove test_db_connector.py

* revert build names and tracking

* update workflow pushes

* CMake format

* changed parallel level back to 1
2025-11-17 09:24:24 -05:00
jamessiddeley-amd 42cc721a4b [rocprof-compute] remove references to --kernel-names (#1543)
* remove references to --kernel-names

* ruff format

* remove redundant comments

* update docs and roofline image

* added two output lines to docs
2025-11-10 11:47:39 -05:00
Ben Richard b299eece9b Fix bug in rocprof-compute parsing (#1664)
Were not handling the case where the eval result is None e.g. some
columns have a peak value, but it is unused, so we use 'None', which
evaluates to the None object.

Return empty string in this case.
2025-11-07 09:33:43 -05:00
jamessiddeley-amd 37bbb58a19 [rocprof-compute] fix unit regex 'ns' in analyze mode (#1689)
* fix unit regex in analyze mode

* ruff format
2025-11-06 11:13:10 -05:00
Pratik Basyal 9d84958527 JSON profiler option removed (#1649) 2025-11-04 17:49:22 +01:00
vedithal-amd bb5fd1d4ae [rocprofiler-compute] Update analysis db for visualizer integration (#1548)
* Analysis db changes for visualizer

* Add support for per kernel analysis metrics

* Add support for dispatch timeline visualiztion

* Show median instead of mean of dispatch duration in kernel view

* Add test case to validate analysis db schema

* Analysis db schema updte
    * Add Kernel table and make Metric and Dispatch table its children
    * Kernel table is a child of Workload table
    * Update metric_view to show kernel_name column
    * Add disptach timestamps to Dispatch table for dispatch timeline
      visualization
    * Update kernel_view to show duration_ns_median instead of mean
      duration

* Add mean duation in kernel view

* update changelog

---------

Co-authored-by: Fei Zheng <44449748+feizheng10@users.noreply.github.com>
2025-11-03 09:25:12 -05:00
vedithal-amd dbb361c606 [rocprofiler-compute] fix parser to prevent missing metrics in analysis mode (#1613)
* fix parser

* fix parser

* fix parser

---------

Co-authored-by: fei.zheng <fei.zheng@amd.com>
Co-authored-by: ywang103-amd <ywang103@amd.com>
2025-11-03 09:23:22 -05:00
Ossian O'Reilly b9de7baaa9 Update README.md (#1611)
* Update README.md

Add missing directory in git sparse-checkout instructions

* Update README.md typo

---------

Co-authored-by: Young Hui - AMD <145490163+yhuiYH@users.noreply.github.com>
2025-10-31 13:16:09 -04:00
ywang103-amd 24cb8c4deb fix crashs related to metric generator and add copy right (#1608)
* fix crash created by path and arg for pc_sampling  and add copyright for mat_mul

* resolve fomat issue of line too long

* bugfixes

* copy gfx9 config template to analysis config in src

---------

Co-authored-by: Wang <ywang103@ctr2-alola-login-01.amd.com>
Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
2025-10-30 16:36:56 -04:00
xuchen-amd b774f28181 [rocprofiler-compute] Remove grafana and mongodb integration (#978)
* Remove grafana and mongodb integration

* Remove grafana documentation assets

* clarify changelog

---------

Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
2025-10-29 11:32:06 -04:00
ywang103-amd 99183ffd92 fix failure of pc sampling and unit tests (#1526) 2025-10-28 11:30:32 -04:00
abchoudh-amd a7bbe0c5d2 Use amd-smi Python API instead of CLI (#1334)
* Use amd-smi Python API instead of CLI

Formatting fix

python path

* Update CHANGELOG

* Create amdsmi interface

* Added amdsmi tests

* Removed run

* Prioritize rocm's amdsmi python API

* address review comments

* update changelog

* fix ruff formatting

---------

Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
2025-10-24 11:11:33 +05:30
vedithal-amd 2a37cbf2ca Bump VERSION and add CHANGELOG for ROCm 7.1.1 release (#1447) 2025-10-23 09:34:18 -04:00
ywang103-amd ee805d1014 remove option of json as rocprofv3's intermediate file to avoid test failures of outdated code (#1474) 2025-10-23 09:33:54 -04:00
ywang103-amd 9b562c0e58 pc sampling multi kernel (#1382)
* initial commit

* add csv support extraction for non kernel selection mode

* add --kernel-trace for rocprofiler-sdk mode

* make non kernel selective mode runnable

* make kernel selection work with -k

* remove upper case of arg hint

* update documentation

* display same kernel name at only one place and merge instruction id with same obj id as well as offset

* remove kernel name's display for single kernel selection

* change log added

---------

Co-authored-by: Fei Zheng <44449748+feizheng10@users.noreply.github.com>
2025-10-23 01:26:08 -04:00
xuchen-amd 578589d363 [rocprofiler-compute] metrics generator (#1199) 2025-10-22 15:17:43 -04:00
cfallows-amd c215ace6c3 Update Roofline binaries with improved flops benchmarking (#1402)
* Update roof bins- rebuild from rocm-amdgpu-bench as of oct15/25

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>

* Update CHANGELOG.md

---------

Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
Co-authored-by: Pratik Basyal <pratik.basyal@amd.com>
2025-10-21 10:14:43 -04:00
jamessiddeley-amd a14f0c30ab fix output (#1462) 2025-10-21 09:55:18 -04:00
Fei Zheng 2c59a82fe1 Fix rocprof-compute TUI build err with python 39 (#303)
* Upgrade min python version from 3.8 to 3.9

* Set min version for textual-fspicker for TUI support

* Update workflows to use python 3.9 instead of 3.8

* fix formatting

* fix bug

---------

Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
2025-10-21 00:27:35 -04:00
Ben Richard 35b07e041f [rocprof-compute] Run roofline test on GPU 0 by default (#1390)
* rocprof-compute: Default roofline to GPU 0

Previously was running the roofline test on ALL GPUs but only
selecting the first entry in the roofline.csv. So even in default
ALL case, GPU 0 was selected.

* Update CHANGELOG.MD

* Use better wording in changelog entry
2025-10-20 16:36:55 -04:00
systems-assistant[bot] 6b109c11c4 [rocprofv3] Reorganize rocprofv3.avail python package (#175)
* Reorganize rocprofv3 python package

adding Python version candidates

review fix

fix test

fix

remove extra line

fix the exception handle

fix Lint fail

fix installation

adding checks to check version format

disable test for address sanitizer

* review comments

* Removing extra lines

* fix format

* Add lib/python3/site-packages to PYTHONPATH in setup-env.sh

* rocprof-compute update rocprofv3 avail lib path

* Make rocprofv3 python binding build commands consistent with other python bindings

* fix cmake

* fix rocprof-compute

* revert cmake changes

* fix rocprofv3 avail python library

* fix cmake

* fix cmake

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
Co-authored-by: Sriraksha Nagaraj <Sriraksha.Nagaraj@amd.com>
Co-authored-by: Jonathan R. Madsen <Jonathan.Madsen@amd.com>
Co-authored-by: systems-assistant[bot] <systems-assistant[bot]@users.noreply.github.com>
Co-authored-by: Jonathan R. Madsen <jrmadsen@users.noreply.github.com>
Co-authored-by: SrirakshaNag <104580803+SrirakshaNag@users.noreply.github.com>
Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
2025-10-17 08:27:17 -07:00
Young Hui - AMD 02bf0a8492 [rocprofiler-compute] Source files updated to reference super-repo URL (#1330)
* source files updated to reference super-repo URL
2025-10-15 15:35:11 -04:00
Young Hui - AMD 161e44c425 [rocprof-compute] Documentation changes for move to super-repo for 7.1 (#1329)
- also remove json output mention in docs
2025-10-15 15:32:54 -04:00
vedithal-amd 454e935448 Fix docker compose (#1323)
Co-authored-by: Yanyao Wang <yanywang@amd.com>
2025-10-15 14:26:56 -05:00
vedithal-amd ecf0d32644 Update CHANGELOG.md for ROCm 7.1.0 release (#1362) 2025-10-15 14:25:34 -05:00
jamessiddeley-amd 64375c23d0 [rocprof-compute] Improve standalone roofline plot generation (#1298)
* ruff formatting

* Update roofline.py function descriptions

* Update height calculation

* Add back cache level filtering in gui_analysis

* Update roofline_calc.py to take in ai_data for ceiling length calc

* format roofline.py

* update roof test cases

* update roofline legend plot table

* fix pdf generate cutoff

---------

Co-authored-by: cfallows-amd <Carrie.Fallows@amd.com>
2025-10-10 14:23:23 -04:00
Ben Richard f578f39f0a Fix web GUI displaying same section multiple times (#1267)
Some sections were being displayed multiple times in the web GUI.

Code to append the section was nested inside the subsection loop,
so each time a new subsction was appened to the section,
the entire section was appended.
2025-10-07 10:29:45 -04:00
ggottipa-amd c8ab57fe15 correcting typo. (#1222)
fixes SWDEV-557963.
2025-10-06 21:04:55 +05:30
vedithal-amd 4870b2b881 Fix tests (#1213) 2025-10-03 09:52:38 -07:00
ywang103-amd eeeaa06159 attach/detach: change workload of unit test to accommodate SDK's current limitation (#1169)
* add double mode of workload dynamic_share with on remove sleeping and
set ROCP_TOOL_ATTACH=1 for running workload

* add comment in dynamic_shared.hip to exaplain how to use argv

* refactor the attach/detach profiling time in unit tests
2025-09-30 13:16:43 -07:00
abchoudh-amd f45c8d5f6b Bugfixes for test failure (#1106)
- Bugfixes
- Update test instructions using docker
2025-09-30 15:48:41 -04:00
vedithal-amd 5f12d9b789 Fix instructions to build standalone binary (#1116) 2025-09-24 16:31:08 -04:00
vedithal-amd bd7a1de879 Remove rocprofv1/v2 in favour of rocprofiler-sdk (#673)
* Set default rocprof interface as rocprofiler-sdk

* Remove rocrprofv1 and rocprofv2 interfaces

* Remove deprecation notice for rocprof v1/v2/v3 interfaces
  * Make rocprofiler-sdk the default interface and make rocprofv3 interface opt-in using ROCPROF=rocprofv3

* Add deprecation notice for rocprofv3
2025-09-24 10:37:01 -04:00
vedithal-amd 7df02745eb [rocprofiler-compute] Update gfx12 counter definitions (#1003)
* Update gfx12 counter definitions

* Add counter defintions for Navi 4

* Made changes per https://github.com/ROCm/rocm-systems/pull/238 and
  doubled checked register specification

* bugfix
2025-09-24 10:32:21 -04:00
vedithal-amd f5505b5989 Use ROCM_PATH for sdk library path (#1097) 2025-09-24 10:31:20 -04:00
jamessiddeley-amd 05315c5bb2 fixed function argument dir in apply_filters (#1100) 2025-09-24 09:50:58 -04:00