Граф коммитов

314 Коммитов

Автор SHA1 Сообщение Дата
xuchen-amd 34dd26fb07 Enable single pass counter collection (#833)
[ROCm/rocprofiler-compute commit: 6a77d241ed]
2025-08-06 10:35:05 -04:00
Fei Zheng 7a4d187f40 update license files (#849)
[ROCm/rocprofiler-compute commit: 0d6e172679]
2025-08-01 10:14:39 -06:00
xuchen-amd b6a7d72212 TUI: Kernel Selection (#769)
[ROCm/rocprofiler-compute commit: 9ddee8de2e]
2025-08-01 11:31:43 -04:00
Fei Zheng 666f00a07f Format code (#842)
[ROCm/rocprofiler-compute commit: 6cbda3f1d8]
2025-07-31 08:20:49 -06:00
Fei Zheng 94ce792f39 quick fix how to call v3 with pc sampling
[ROCm/rocprofiler-compute commit: 3a40e4b58c]
2025-07-31 08:17:06 -06:00
vedithal-amd 2966867099 Fix test cases (#837)
* Fix formatting

[ROCm/rocprofiler-compute commit: 80ea339217]
2025-07-28 16:19:45 -04:00
vedithal-amd 17e5892614 Enable rocpd output format with rocprofiler sdk (#790)
* Add `rocpd` choice for `--format-rocprof-output` option
* Add rocpd_data.py which defines SQL queries to extract data from rocpd database
* Use sqlite3 package to read the database
* Add `--retain-rocpd-output` option in profile mode to retain raw
  rocpd database
* Add warning notice to say `--format-rocprof-output rocpd` will be
  default in future release

For rocpd output:
* Use only `pmc_perf.csv` instead of reading individual coll_level results csv files
* Post process csv files using pandas in analysis mode instead of profile mode
* Use ACCUM counters instead of SQ_ACCUM_PREV_HIRES

* Add test cases for rocpd output format
* Fix code formatting issues
* Update CHANGELOG

[ROCm/rocprofiler-compute commit: 03d27c0ba0]
2025-07-28 11:02:28 -04:00
vedithal-amd 354fe5f52c Unified configuration for metrics (#726)
* Show description of metrics during analysis
    * Use --include-cols Description show the Description column in analyze mode (this is hidden by default)
    * Remove tips field from analysis config

* Align metric names in analysis config and documentation

* Add unified config utils/unified_config.yaml

* Add python script utils/split_config.py to auto generate analysis configuration and documentation metrics description
   * Add test case to ensure unified config is older than auto-generated config
   * Auto generate analysis config and documentation metrics description

* Update CONTRIBUTING.md to add instructions to build documentation assets
    * Add docker image and compose file to build documentation

* Update CHANGELOG and Documentation

* Use jinja template instead of hardcoding metric tables in documentation

[ROCm/rocprofiler-compute commit: bb44e90b2d]
2025-07-25 14:01:34 -04:00
xuchen-amd dcdadfd37d Improve --time-unit arg (#807)
[ROCm/rocprofiler-compute commit: 99a6e67bcc]
2025-07-24 12:15:52 -04:00
vedithal-amd 1cf98deedf Fix rocprofv3 supported counters not being detected (#832)
* Fix rocprofv3 supported counters not being detected

* Fix rocprof interface deprecation warning appearing twice

[ROCm/rocprofiler-compute commit: dbcaccb9de]
2025-07-24 11:50:07 -04:00
vedithal-amd 449a6d41a0 Improve baseline comparison (#817)
* Do not force unsupported metrics to be specified in older gpu
  architectures as None

* Remove metrics which are explicitly set to None

* Update CHANGELOG

* Fix analysis configuration to fix baseline comparisons across all gpu
  architectures
    * Add missing 1812 section for gfx908
    * Add missing 1812 section for gfx90a

* Baseline comparision will only show common metrics
   * First workload will be used to set Metric ID index column

[ROCm/rocprofiler-compute commit: d4c316a730]
2025-07-24 11:49:02 -04:00
vedithal-amd d9da3feadf Improve block filtering to accept metric ids (#821)
* Fix tests
* Update CHANGELOG and documentation

[ROCm/rocprofiler-compute commit: a70ae40ddc]
2025-07-23 16:16:29 -04:00
vedithal-amd 6c8b834f5c Fix tests and formatting (#826)
[ROCm/rocprofiler-compute commit: 068e5aaef4]
2025-07-22 17:49:16 -04:00
vedithal-amd a559d9e8d1 Standalone GUI bugfix (#825)
* Fix barchart elements table ids

* Add HBM bandwidth section to L2 cache report for gfx950

* bugfix for standlone GUI

Co-authored-by: Felix Marty <Felix.Marty@amd.com>

[ROCm/rocprofiler-compute commit: e132b047cd]
2025-07-22 15:31:54 -04:00
vedithal-amd 46ae3d36d9 Remove hardware IP block based filtering (#820)
* Analysis report block based filtering is the default now

* Update documentation

* Update CHANGELOG

* Fix tests
    * Replace hardware block based filtering tests with report block
      based filtering tests

[ROCm/rocprofiler-compute commit: 98bb0f4237]
2025-07-21 09:37:35 -04:00
vedithal-amd 2740d18028 Remove MI50/MI60 gfx906 support per documentation (#819)
[ROCm/rocprofiler-compute commit: 537a269e95]
2025-07-18 09:57:33 -04:00
cfallows-amd 930b32e2cb Fix roofline block print during CLI output (#811)
Fix roofline panel in CLI analyze stage when using --block option. Improve roofline CLI output checks and logs.

---------

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

[ROCm/rocprofiler-compute commit: 1d834f4190]
2025-07-15 12:42:27 -04:00
xuchen-amd 65673617e0 Remove rocm-smi for ROCm 7.1 (#809)
[ROCm/rocprofiler-compute commit: b4b50502e3]
2025-07-15 10:28:53 -04:00
xuchen-amd 06b24cbfe1 rocm-smi deprecation warning (#806)
[ROCm/rocprofiler-compute commit: a3dc98e251]
2025-07-14 13:35:47 -04:00
vedithal-amd ce73a5ef74 Fix roofline and TUI bugs (#803)
* Fix roofline rocm version bug
* Fix utils bug
* Remove unnecessary tests
* Do not check textual-fspicker package in cmake build
* Use rocprofv3 to test MI 100 and fix tests

[ROCm/rocprofiler-compute commit: 000fd4f5b2]
2025-07-09 19:15:46 -04:00
cfallows-amd 7862701993 Update roofline bins for rocm7 changes (#755)
* Update current bins to have rocm6 suffix. Add new rocm7 bins, built on rocm7.0 latest due to hip updates.

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

* Re-add rocm version check for roof bins.

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

* Rebuild roofline binaries on top of latest rocm7 (#16379) after recent mainline promotions.
Adjusting version and distro combinations of bins following rocm6 vs rocm 7 supported OS.
*rhel8 not supported on rocm7, also not built anymore
*sles15 not supported on rocm7 but is still being built
*ubuntu stays as 22.04 and above for rocm7

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

* Minor fixes after testing.

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

* Fixed bad copy after finding it in testing ctest.

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

* Remove runpath from new bin

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

* Rework target_binary map return in detect_roofline- we should not be returning maps of different sizes or with different keys for the same method. Expected output should be consistent in case we run into bad position, or for testing purposes. Manually tested all possible roofline bin expected cases to comfirm functionality and expected user output.

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

* Update changelog with new roofline distro minimums

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

---------

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

[ROCm/rocprofiler-compute commit: 3df0d1dded]
2025-07-08 16:51:50 -04:00
Fei Zheng 09ec955554 PC Sampling: fix potential_end_offset (#792)
* fix potential_end_offset

* format code: unrelated

[ROCm/rocprofiler-compute commit: 1b7445faa4]
2025-07-08 08:52:01 -04:00
cfallows-amd e085f3cc54 Fix method return for python version compatibility (#784)
Support for python3.8 and above means union defined in one of the methods was throwing errors for anything less than python3.10. Swapping out | operand for Optional[] resolves errors on systems using <3.10. No functional changes.

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

[ROCm/rocprofiler-compute commit: a59b1ea6e6]
2025-07-02 10:36:37 -04:00
xuchen-amd bfe24beec6 Remove cell backgrouund colors. (#778)
[ROCm/rocprofiler-compute commit: 222dbdc6bd]
2025-06-28 10:38:28 -04:00
vedithal-amd 86e243201e Fix SPI block counter limit (#780)
* Fix SPI counter collection limit

* Update counter collection limits from aqlprofile

* Remove special handling for MI 350 SPI pipe counters

[ROCm/rocprofiler-compute commit: 6e1bbb5efb]
2025-06-27 14:07:56 -04:00
vedithal-amd 1d59cbb06d Add support for MI 100 with rocprofiler-sdk (#768)
* Add custom rocprofiler-sdk counter definitions file for MI 100

* Update CHANGELOG to mention that accumulation counters will not be
  collected when profiling on MI 100 using rocprofiler-sdk/rocprofv3

* Migrate accum_counters.yaml to code

[ROCm/rocprofiler-compute commit: a95a45d69a]
2025-06-26 09:03:18 -04:00
xuchen-amd 7ab4a3f03f GUI: prevent big number overflow (#772)
* Prevent number overflow by formatting values.

* Improve value formatting logic based on comments.

[ROCm/rocprofiler-compute commit: 92ce4732bc]
2025-06-24 16:27:06 -04:00
vedithal-amd 9873460265 Fix counter collection for MI 350 (#764)
* Fix TCC counter collection bug
* Fix accumulate counter collection
* Fix formatting

[ROCm/rocprofiler-compute commit: 5950a02ff6]
2025-06-21 08:48:25 -04:00
jamessiddeley-amd 979c59fadc added progress printout in rocprof-compute profile (#727)
* added progress printout for profiler

* added comments and fixed readability

* removed redundant newlines

* moved format_time helper function to utils

* removed tqdm and redundant time calc

[ROCm/rocprofiler-compute commit: 036866fc12]
2025-06-18 14:09:09 -04:00
xuchen-amd 9d50115bd7 Integrate roofline in tui (#762)
* Update changelog, remove unused code.

* enable roofline in TUI.

* Remove roofline section when data not available.

* Fix workload dir path.

[ROCm/rocprofiler-compute commit: 5d8fd55e36]
2025-06-18 13:58:42 -04:00
xuchen-amd 0b6e03adb0 CLI: enable roofline plot (#760)
* enable roofline plot in cli.

* Add roofline to analysis config.

* Unify global variables.

* Disable roofline for baseline comparison and gfx908.

* Add check for roofline.csv

[ROCm/rocprofiler-compute commit: 80159ee117]
2025-06-18 13:19:58 -04:00
Vladimir Indic f49b70142f [PC Sampling] Separate counts for issued and stalled samples (#756)
[ROCm/rocprofiler-compute commit: 451be8a600]
2025-06-16 15:09:21 -06:00
ywang103-amd dab2c49342 fix broken test with --cols options (#750)
[ROCm/rocprofiler-compute commit: bb0c417871]
2025-06-12 19:45:24 -04:00
vedithal-amd 89bc1fc812 Change default rocprof to rocprofv3 (#748)
* Revert of https://github.com/ROCm/rocprofiler-compute/pull/738

* Change default rocprof backend interface to rocprofv3

* Add MI 350 support in documentation

* Added known issue that MI 100 profiling will not work unless rocprofv1
  is explicitly opted in

* Remove MI 50 soc gfx python class since MI 50 is not supported

[ROCm/rocprofiler-compute commit: d27ee69b52]
2025-06-12 15:45:11 -04:00
vedithal-amd 9e743cdff2 Remove rocscope related code and add deprecation warning for mongo db usecase (#744)
* Remove rocscope related code

* Add deprecation warning for database update mode which is used for grafana and mongodb functionality

[ROCm/rocprofiler-compute commit: cdd41dee40]
2025-06-12 14:21:24 -04:00
David Galiffi a153c96c7b Copyright Header Compliance (#745)
- for SWDEV-537492

[ROCm/rocprofiler-compute commit: 1cd989a110]
2025-06-12 12:02:58 -04:00
cfallows-amd 192c63f2f6 Update roofline binaries (#741)
Update roofline binaries from rocm-amdgpu-bench
- uses hip to find number of CUs dynamically instead of hardcoded values in table

Remove duplicate AI plot points printing
- only print ai points once on plot since we are measuring using total flops and value is same
- remove datatype from legend labels

---------

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

[ROCm/rocprofiler-compute commit: 24d3e7eecd]
2025-06-10 15:43:56 -04:00
vedithal-amd c7cea9c971 Revert default interface to rocprof v1 (#738)
* Add deprecation warning for rocprof v1 / v2 / v3 interfaces to use
  rocprofiler-sdk interface

[ROCm/rocprofiler-compute commit: a1ef3425c6]
2025-06-09 16:39:11 -04:00
Fei Zheng d750ea6616 TUI improvement (#732)
[ROCm/rocprofiler-compute commit: 96aa04fb13]
2025-06-09 11:29:10 -06:00
vedithal-amd dd39c649d9 Bugfix for rocprofiler sdk interface not working in MI 200 (#733)
[ROCm/rocprofiler-compute commit: 721053bd03]
2025-06-09 12:33:25 -04:00
Fei Zheng 9a392edb21 CLI: enable mem_chart for single run (#643)
[ROCm/rocprofiler-compute commit: e5b31af2a4]
2025-06-06 16:15:56 -06:00
Fei Zheng 243aa68712 Support stochastic pc sampling
[ROCm/rocprofiler-compute commit: d756aeb3fd]
2025-06-06 12:43:52 -06:00
ywang103-amd d1feafe4db Tcc new format input yaml (#723)
[ROCm/rocprofiler-compute commit: e5c7d4795a]
2025-06-04 12:24:57 -04:00
xuchen-amd 6c40056aa9 Add chip specs (#681)
* Add perfmon config spec, enhance memory partition info.

* Add gfx950 perfmon config.

* Add High Freq variants in gfx942.

* Add backup detection methods for gpu model.

* Improve get_num_xcds logic by adding detection of 1to1 arch-to-compute_partition logic.

* Add default compute partition settings spx:8 for when gpu_model=None.

* Update gpu spec tests.

* Add backup compute partition detection.

---------

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

[ROCm/rocprofiler-compute commit: f0fad19e8b]
2025-05-29 16:35:34 -04:00
Ben Richard 7fd93cfed3 Upgrade to Dash 3.0 (#719)
[ROCm/rocprofiler-compute commit: 45296ceb46]
2025-05-29 14:36:03 -04:00
cfallows-amd 9eaeb16acc Rename roofline bins (#717)
Rename roofline bins, remove rocm version in naming. Change method for binary search.

---------

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

[ROCm/rocprofiler-compute commit: bbe2e17b80]
2025-05-28 14:55:51 -04:00
cfallows-amd 689746e2cd Add F4 F6 to roofline for MI350 series (#709)
Add roofline bins with FP4 FP6 datatypes enabled for gfx950 arch

---------

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

[ROCm/rocprofiler-compute commit: cb2d928ecf]
2025-05-26 18:36:31 -04:00
vedithal-amd 6dc3fad1c7 Implement interface to rocprofiler sdk (#695)
* Setting ROCPROF=rocprofiler-sdk environment variable will use rocprofiler-sdk C++ library instead of rocprofv3 python script

* Add runtime option --rocprofiler-sdk-library-path to use custom version of rocprofiler sdk library
    * Add --rocprofiler-sdk-library-path conftest option for tests

* Setup appropriate environment variables to inject rocprofiler sdk code to user command
    * Add env. vars. for counter collection and filtering
    * Add env. vars. for pc sampling

* Use python bindings to list counters supported by rocprofiler sdk

[ROCm/rocprofiler-compute commit: 5cb86e31fc]
2025-05-13 10:48:21 -04:00
Ben Richard ceb2df6345 Avoid crash when profiling data not generated (#694)
* Avoid crash when profiling data not generated

-Handle case where program has no kernel launches
-Improve error messages
-Avoid roofline when profiling data is missing

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

* Update other soc_gfx files to catch missing pmc_perf.csv

* Fix formatting

* Fix incorrectly ordered imports

---------

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

[ROCm/rocprofiler-compute commit: 35493f440c]
2025-05-05 16:09:48 -04:00
cfallows-amd c8d67fc97e Enable roofline for MI350 series (#677)
Rework of roofline binaries generated from rocm-amdgpu-bench
- removed arch identifier in bin name
- removed rocm5 bins altogether

Updated required distros for roofline
- updated distro checks and bin naming
- moved up ubuntu20.04->22.04 and sles15.3->15.6 per rocm support

Enabled ctests for mi350 for test_roof_*
- removed mi350 series check to skip these specific tests

---------

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

[ROCm/rocprofiler-compute commit: 41e73650d5]
2025-04-28 16:08:23 -04:00