コミットグラフ

429 コミット

作成者 SHA1 メッセージ 日付
Gopesh Bhardwaj 00a28487fe Adding Node-id for debugging with log level trace (#1090)
[ROCm/rocprofiler-sdk commit: 8ab1ed78d8]
2024-10-10 11:00:28 +05:30
Gopesh Bhardwaj b426c65c43 mem copy direction field update (#1124)
[ROCm/rocprofiler-sdk commit: 81e93a6ddb]
2024-10-08 15:15:48 +05:30
Benjamin Welton c69cb447ee clang-18 build fix for RCCL (#1123)
Removes ambiguity on const usage, which clang-18 complains about
(preventing build with warn error).

[ROCm/rocprofiler-sdk commit: b46966e96b]
2024-10-07 15:58:41 -07:00
Mythreya cbf61d5a66 Fix PSDB change (#1120)
Reverts change to `source/include/rocprofiler-sdk/callback_tracing.h`
from commit c77e4d3b80

[ROCm/rocprofiler-sdk commit: a3b41d04fc]
2024-10-07 17:37:19 -05:00
Giovanni Lenzi Baraldi 6361ff50a5 SWDEV-487621: Fixes for metric definitions (#1118)
* Fixes for metric definitions

* Removing gfx8

* Update changelog

* Fixing unit tests

* Small fixes

* Fix for write size

[ROCm/rocprofiler-sdk commit: 9652a6e738]
2024-10-08 02:44:31 +05:30
Giovanni Lenzi Baraldi 43684c07c6 SWDEV-488948: PC Sampling - Correlation class to provide some thread safety. Adding multithread tests. (#1112)
* SWDEV-488948: PC Sampling - Correlation class to provide some thread safety. Adding multithread tests.

* Update source/lib/rocprofiler-sdk/pc_sampling/parser/correlation.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

* Update source/lib/rocprofiler-sdk/pc_sampling/parser/correlation.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

* Adding backlog for codeobj changes

* Formatting

* Update source/lib/rocprofiler-sdk/pc_sampling/code_object.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

* Update source/lib/rocprofiler-sdk/pc_sampling/code_object.hpp

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

---------

Co-authored-by: Vladimir Indic <139573562+vlaindic@users.noreply.github.com>

[ROCm/rocprofiler-sdk commit: a6be3f9660]
2024-10-07 20:00:59 +00:00
Gopesh Bhardwaj c77e4d3b80 Fixing installed pacakge tests in CI (#1119)
* Fixing installed pacakge tests in CI

* Formatted rocprofv3.py with black formatter

[ROCm/rocprofiler-sdk commit: 9b2ece76c3]
2024-10-07 20:55:35 +05:30
Gopesh Bhardwaj 0b356e16aa updating rocprofv3 help options (#1113)
* updating rocprofv3 help options

* updating CHANGELOG

[ROCm/rocprofiler-sdk commit: f2f267bcc0]
2024-10-05 12:40:27 +05:30
Giovanni Lenzi Baraldi 9038cfac07 Fixing some accumulate metrics (#1089)
* Fixing some accumulate metrics

* Fixing some more accumulate metrics

---------

Co-authored-by: Benjamin Welton <bewelton@amd.com>

[ROCm/rocprofiler-sdk commit: fa7fc7ec5d]
2024-10-03 09:44:31 -07:00
Giovanni Lenzi Baraldi dc85966562 SWDEV-467350: Skipping tool counter iteration for unsupported hardware (#1083)
[ROCm/rocprofiler-sdk commit: 1d6a0b5c80]
2024-10-03 09:04:42 -07:00
Benjamin Welton 9532bd7032 Update limit for max counter records in rocprof-tool (#1073)
A fixed sized std::array is used to store counter records in rocprofiler SDK. This limit was breached in SWDEV-484742. Upping the limit to 512 to be less likely to reach this limit again.

[ROCm/rocprofiler-sdk commit: a159fb47c7]
2024-10-02 16:56:42 -07:00
Benjamin Welton ee620bf7dc [SWDEV-484495] Fix int truncation in CSV output (#1098)
CSV output truncates doubles to ints when it shouldn't. Derived metrics
are (mostly) doubles and lose precision (or become worthless) if treated
as an int. Converted these to double to match the format we return from
rocprof-sdk.

Co-authored-by: Benjamin Welton <ben@amd.com>

[ROCm/rocprofiler-sdk commit: 4f05850efd]
2024-10-02 16:55:00 -07:00
Jeffrey Novotny c470fd1cc4 Correct link to rocprofiler-sdk GitHub (#1097)
[ROCm/rocprofiler-sdk commit: 78fe20320f]
2024-09-27 21:03:49 -06:00
Benjamin Welton d01b3e1a33 [rocprofv3] Do not fetch metrics for CPU agents (#1101)
Skip CPU agents when fetching metrics. Only fetch metrics for GPU
agents.

Co-authored-by: Benjamin Welton <ben@amd.com>

[ROCm/rocprofiler-sdk commit: 0c4a583e23]
2024-09-27 21:03:18 -06:00
itrowbri acb3a65007 Updated validation of aborted-app test to use hipExtHostAlloc (#1103)
* Updated validation of aborted-app test to use hipExtHostAlloc now that tracing for this command is supported

* Updated CHANGELOG

[ROCm/rocprofiler-sdk commit: 5dd2f94f74]
2024-09-27 21:02:00 -06: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 be05575a18 Checking ROCm Version in CI
[ROCm/rocprofiler-sdk commit: 47154f5a8b]
2024-09-27 14:07:11 -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
Ammar ELWazir 528b629148 Fixing ROCProfiler SDK Generate packages action (#1096)
[ROCm/rocprofiler-sdk commit: 38098f28c1]
2024-09-25 08:17:21 -05:00
Jonathan R. Madsen 7e2a6916df Fix rocprofiler-sdk-tool-kokkosp (#1094)
* Fix rocprofiler-sdk-tool-kokkosp

- missing symbol `rocprofiler::common::impl::get_env(std::basic_string_view<char, std::char_traits<char> >, bool)`

* cmake formatting

[ROCm/rocprofiler-sdk commit: 2f0ec02950]
2024-09-24 17:04:58 -05:00
Ammar ELWazir 95b03d1e1d Generate STGZ Packages on dispatch (#1093)
[ROCm/rocprofiler-sdk commit: edbaed38c7]
2024-09-24 16:54:46 -05:00
Sam Wu 7475783cb9 Add dependabot config for updating documentation requirements (#1018)
[ROCm/rocprofiler-sdk commit: cc45896bf5]
2024-09-18 11:31:17 -06:00
Jonathan R. Madsen 7dbe1d0650 Fix roctracer-roctx test (#1088)
- original format using generator expressions (`$<IF:$<TARGET_EXISTS:...>,$<TARGET_FILE:...>,>`) appears to cause issues with older CMake versions

[ROCm/rocprofiler-sdk commit: d7874f3496]
2024-09-17 08:59:34 -05:00
Gopesh Bhardwaj d7aa58e291 comparing tool options in rocprof/rocprofv2/rocprofv3 (#1050)
* comparing tool options in rocprof/rocprofv2/rocprofv3

* Added more perfetto options

* Added new summary optipons

* Added Category for all options

* Apply suggestions from code review

Co-authored-by: Ammar ELWazir <ammar.elwazir@amd.com>

* changes requested in SWDEV-484472

* Correct broken table formatting

* detailed explanation on json custom format

* Feedback Resolution

---------

Co-authored-by: Jonathan R. Madsen <jrmadsen@users.noreply.github.com>
Co-authored-by: Ammar ELWazir <ammar.elwazir@amd.com>

[ROCm/rocprofiler-sdk commit: 863b608ae3]
2024-09-16 20:08:11 +05:30
Jonathan R. Madsen 120a358069 Update HIP tracing ABI (#1025)
* Update HIP ABI tracing

* Minor HIP abi.cpp updates

* Misc roctx updates (version.h + more)

* Common static thread-local template struct

- static_tl_object
- similar to static_object but with thread-local semantics

* rocprofiler-sdk/version.h updates

* Update for HIP_RUNTIME_API_TABLE_STEP_VERSION == {4,5,6}

* Fix roctx.cpp tweaks

[ROCm/rocprofiler-sdk commit: 7861dcc6c6]
2024-09-13 17:10:35 -05:00
venkat1361 b9d2b3f495 SWDEV-476852 - Check added for agent architecture counters support. (#1022)
* check added for agent arch support

* formatting issue

[ROCm/rocprofiler-sdk commit: bc82eccf4f]
2024-09-13 11:28:00 -07:00
Jonathan R. Madsen 5db64b5425 Fix OTF2 build dependency (#1080)
- systems with many cores (e.g. 128) had a race condition between compiling generateOTF2.cpp and the otf2-build make install step

[ROCm/rocprofiler-sdk commit: 92c0c9d252]
2024-09-13 03:16:06 -05:00
itrowbri 6099e623a4 SWDEV-483130: Replace calls to deprecated functions hipHostMalloc/hipHostFree (#1070)
* SWDEV-483130: Replace calls to deprecated functions hipHostMalloc/hipHostFree

* SWDEV-483130: Replace calls to deprecated functions hipHostMalloc/hipHostFree. Moved definitions from lib/commons/defines.hpp to samples/common/defines.hpp and tests/common/defines.hpp

* Updated comment for clarity

* Update tests/rocprofv3/aborted-app/validate.py

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

* Formatting

* Formatting

* Updated CHANGELOG

---------

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

[ROCm/rocprofiler-sdk commit: 8d7be2e4b4]
2024-09-12 18:31:00 -05:00
Mythreya d008463d50 Enable queue interception with scratch reporting (#1069)
* Enable queue interception with scratch reporting

Scratch reporting reports agent ID in buffer and callback records, but
HSA runtime provides only queue ID in the scratch callback.

This change enables queue interception when scratch reporting is requested

* Validation test for rocprofv3 + scratch-memory-trace

* Simplify checks for whether context is tracing a domain

* Update changelog

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>

[ROCm/rocprofiler-sdk commit: efbe4ea0a2]
2024-09-12 18:26:34 -05:00
Jonathan R. Madsen db0f26f562 Prevent misaligned read from common::container::ring_buffer (#1076)
- causes undefined behavior

[ROCm/rocprofiler-sdk commit: 6098d52335]
2024-09-12 18:25:05 -05:00
Jonathan R. Madsen fcd6cc45bd Package RCCL headers to support adding RCCL support w/o installed headers (#1075)
- in ROCm CI, rocprofiler-sdk gets built before RCCL is installed, this is a workaround for this issue

[ROCm/rocprofiler-sdk commit: 8c1382fceb]
2024-09-12 18:24:50 -05:00
Jonathan R. Madsen 3a5154c5ff rocprofv3 Kokkos-Tools Support (#1058)
[ROCm/rocprofiler-sdk commit: d5bcb63263]
2024-09-12 00:46:07 -05:00
Mythreya c47a128941 Add support for RCCL tracing (#1047)
* [Draft]: Add support for RCCL tracing

Address comments

* [Draft]: Add support for RCCL tracing

Address PR comments, changes from RCCL upstream

* Add RCCL library table registration

Working on adding support to rocprofiler-register

* Support compilation w/o <rccl/amd_detail/api_trace.h>

- dummy api_trace.h header
- return ROCPROFILER_STATUS_ERROR_NOT_IMPLEMENTED when RCCL does not have api_trace.h header

* RCCL API tracing tool support

- add to rocprofv3
- add to json-tool

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>

[ROCm/rocprofiler-sdk commit: 2a146259c7]
2024-09-12 00:42:58 -05:00
Jonathan R. Madsen 4d01508d0b LD_PRELOAD librocprofiler-sdk-roctx.so when marker-trace enabled (#1057)
* LD_PRELOAD librocprofiler-sdk-roctx.so when marker-trace enabled

- this enables apps to link against old ROCTx (libroctx64.so) but get marker tracing in rocprofv3

* Update CHANGELOG

* Validation test for app linked to old (roctracer) ROCTx library

* Tweak scope of tool_counter_info

- causing "signal-unsafe call inside of a signal" error for ThreadSanitizer on mi200

* Fix handling of missing transpose-roctracer-roctx

* Disable rocprofv3 aborted-app test (ThreadSanitizer)

- ThreadSanitizer + mi200/mi300 + aborted-app results in a signal-unsafe call inside a signal that cannot be specifically suppressed as usual via rocprofv3_error_signal_handler for some unknown reason

* Add UndefinedBehaviorSanitizer job

[ROCm/rocprofiler-sdk commit: 72cbcedc9e]
2024-09-11 15:27:35 -05:00
Gopesh Bhardwaj d0047fd969 SWDEV-48112 Counter header and OTF2 updates (#1042)
[ROCm/rocprofiler-sdk commit: df939cbe96]
2024-09-11 08:15:03 -05:00
Giovanni Lenzi Baraldi a91eab65f8 Removing unecessary barrier packet (#1017)
[ROCm/rocprofiler-sdk commit: 474b72b4fc]
2024-09-11 16:29:57 +05:30
Gopesh Bhardwaj cfc9df73ae Update git clone URL + few documentation fixes (#1066)
[ROCm/rocprofiler-sdk commit: 0e7f9444e8]
2024-09-11 15:09:21 +05:30
Gopesh Bhardwaj 2a4591dcae Fix rocprofv3 output filename containing sub-directory (#1062)
* Fix -d option broken by hostname

* Fix rocprofv3 output filename containing directory

* Fix TID handling in Perfetto and OTF2 output

* Revert changes which removed hostname

* Revise tests/rocprofv3/tracing output filenames

- specify an output filename for tests which include a subdirectory

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>

[ROCm/rocprofiler-sdk commit: a4b3a57ecc]
2024-09-10 17:49:36 -05:00
Jonathan R. Madsen 34c35c26ba Fix misaligned stores in buffer (#1063)
* Fix misaligned read/write to buffer

- causes undefined behavior

* Update run-ci.py

- fix spurious CDash submission failure warning

* Improve run-ci.py support for UBSan

* Relax rocprofv3 summary stats count expectation

* Update CHANGELOG

[ROCm/rocprofiler-sdk commit: 37e0d7efce]
2024-09-10 17:08:57 -05:00
dependabot[bot] a2c173ea40 Bump cryptography from 42.0.8 to 43.0.1 in /source/docs/sphinx (#1049)
Bumps [cryptography](https://github.com/pyca/cryptography) from 42.0.8 to 43.0.1.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/42.0.8...43.0.1)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ROCm/rocprofiler-sdk commit: 7a9af10833]
2024-09-09 12:31:08 -05:00
Ammar ELWazir 34bcfb0b9d Update run-ci.py with new cdash portal (#1048)
* Update run-ci.py

* Update run-ci.py

* Update run-ci.py

* Update run-ci.py

* Update run-ci.py

* Update run-ci.py

[ROCm/rocprofiler-sdk commit: 8b986afbdb]
2024-09-09 12:29:10 -05:00
Gopesh Bhardwaj 2c5c915b29 Creating a PR template checklist (#1037)
[ROCm/rocprofiler-sdk commit: 612b18671c]
2024-09-09 11:48:26 -05:00
itrowbri fe6acf4a01 SWDEV-466452: incomplete gromacs pftrace (#1040)
* SWDEV-466452: Inserted `tracing_session->FlushBlocking()` after
TRACE_EVENT_END when recording trace events to resolve incomplete
pftrace bug

* Update source/lib/rocprofiler-sdk-tool/generatePerfetto.cpp

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

* Formatting

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

---------

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

[ROCm/rocprofiler-sdk commit: ceb7237652]
2024-09-09 11:45:57 -05:00
Gopesh Bhardwaj f40d07bbda SWDEV-478714 package requirements.txt (#1046)
[ROCm/rocprofiler-sdk commit: 0f337aed03]
2024-09-09 11:21:30 -05:00
Jonathan R. Madsen 6743608258 rocprofv3: summary reports + more JSON metadata (#1029)
* Move include/rocprofiler-sdk/cxx/details/delimit.hpp to tokenize.hpp

* Update docs/how-to/using-rocprofv3.rst

- fix code block indents
- reorder rocprofv3 options, limit them to important options
- add docs for `--runtime-trace`

* Update rocprofv3.py

- parser argument groups
- new `--runtime-trace` option
- new `--summary` option
- new `--summary-per-domain` option
- new `--summary-groups` option
- new `--summary-output-file` option
- new `--summary-units` option

* Update lib/rocprofiler-sdk/hsa/async_copy.cpp

- fix async copy operation names: add "MEMORY_COPY_" prefix

* lib/rocprofiler-sdk-tool: update statistics.{hpp,cpp}

- statistics<>::get_percent function
- stats_entry_t struct
- stats_formatter struct
- percentage struct
- std::to_string(::rocprofiler::tool::percentage)

* lib/rocprofiler-sdk-tool: update domain_type.{hpp,cpp}

- reorder domain_type enum values

* lib/rocprofiler-sdk-tool: update generateCSV.{hpp,cpp}

- separate writing CSV from accumulating statistics
- a lot of functionality was moved to statistics.{hpp,cpp}

* lib/rocprofiler-sdk-tool: update output_file.{hpp,cpp}

- output_stream_t struct
- get_output_stream(...) returns output_stream_t instance

* lib/rocprofiler-sdk-tool: update generateJSON.cpp

- update get_output_stream usage to output_stream_t

* lib/rocprofiler-sdk-tool: update generateOTF2.cpp

- header include order tweak

* lib/rocprofiler-sdk-tool: update buffered_output.hpp

- stats_data_t was renamed to stats_entry_t

* lib/rocprofiler-sdk-tool: update generatePerfetto.cpp

- header include tweak

* lib/rocprofiler-sdk-tool: update tmp_file_buffer.hpp

- emit warning message if write_ring_buffer fails after offloading instead of aborting
- prefer placement new instead of assignment in write_ring_buffer

* lib/rocprofiler-sdk-tool: add generateStats.{hpp,cpp}

- functions for accumulating statistics

* Update tests/rocprofv3/tracing-hip-in-libraries/CMakeLists.txt

- accommodate tweak to CSV output file name for HIP and HSA traces

* lib/rocprofiler-sdk-tool: update config.{hpp,cpp}

- new config variables
  - stats_summary
  - stats_summary_per_domain
  - summary_output
  - stats_summary_unit_value
  - stats_summary_unit
  - stats_summary_file
  - stats_summary_groups
- support output keys for hostname: %hostname% / %h

* lib/rocprofiler-sdk-tool: update tool.cpp

- support summary output

* Documentation fixes

* Test for summary output

* Update tests/bin/transpose to use more ROCTx

- also support building with the roctracer ROCTx

* Remove roctxMark from OTF2 + fix kernel-rename tests

- following more ROCTx calls in transpose, kernel-rename validation had to be updated

* JSON metadata + JSON summary

- add serialization support for config
- add serialization support for statistics
- additions to json spec
  - rocprofiler-sdk-tool/metadata/config
  - rocprofiler-sdk-tool/metadata/command
  - rocprofiler-sdk-tool/summary
- config output_keys support for NVIDIA %q{<ENV-VAR>} syntax
- config output_keys support keys within keys

* rocprofv3 --summary-groups warning if no domain matches

- emit warning if a regex in for summary groups did not match any domain names

* Compile fix for lib/rocprofiler-sdk-tool/tool.cpp

- get_config().scratch_memory_trace
- pass contributions to write_json

* Update rocprofv3.py to preload rocprofiler-sdk-roctx

- appended to LD_PRELOAD when args.marker_trace is enabled

* Fix ReST link errors about subtitle underline being too short

* Patch tokenization of config::stats_summary_groups

- guard against array values of empty strings

* Tweak rocprofv3 summary test

- input-summary.yaml (used by rocprofv3-test-summary-inp-yaml-execute) only provides one summary group regex

* Disable LD_PRELOAD of librocprofiler-sdk-roctx.so

- this causes problems in the sanitizers, will be addressed in another PR

[ROCm/rocprofiler-sdk commit: 395f01b689]
2024-09-09 11:20:55 -05:00
Jonathan R. Madsen 63f9bdc75e Remove navi3, vega20 runners from testing (#1054)
- Fix env for pc-sampling-integration-test
- run thread sanitizer on mi200

[ROCm/rocprofiler-sdk commit: 1354452cf0]
2024-09-09 11:20:14 -05:00
Vladimir Indic 56e33c7543 More comprehensive IOCTL PC sampling checks (mi200 and mi300) (#1045)
* More comprehensive IOCTL PC sampling checks (mi200 and mi300)

* PC sampling tests: formatting

[ROCm/rocprofiler-sdk commit: 8bf2ce622c]
2024-09-06 09:45:05 -05:00
Vladimir Indic 3ed3489670 PC sampling: online partial PC sampling decoding (#1004)
* PC sampling: online partial PC sampling decoding

PC sampling service decodes a PC sample partially
by replacing the PC with an id of the loaded code object instance
containing PC and the offset of the PC within that code object instance.

* PC sampling: marker records removed

* PC sampling parser: minor doc update in mock

* PC sampling: introducing rocprofiler_pc_t

* NULL value of the code object id introduced.

* Clarifying documenation related to PC offset.

* PC offset documentation improvement

* PC sampling parser benchmark: Reducing the number of samples to recreate half of performance.

[ROCm/rocprofiler-sdk commit: 93e82663d9]
2024-09-05 11:35:46 -05:00
Gopesh Bhardwaj 1a5dd2e7a6 Fixing missing counters for gfx900 (#1028)
[ROCm/rocprofiler-sdk commit: fa91169479]
2024-08-21 11:54:30 +05:30
Gopesh Bhardwaj a4136fde3d Adding HW Block Information (#1021)
* Adding HW Block Information

* Addressed Review comments

[ROCm/rocprofiler-sdk commit: 439025d421]
2024-08-21 10:00:41 +05:30