Commit Graph

491 Commits

Author SHA1 Message Date
Mallya, Ameya Keshava efe96fc045 Created OSDB workflow for mainline promotion
[ROCm/rocprofiler-sdk commit: 09cf9540fe]
2024-11-26 13:22:30 -08:00
Mallya, Ameya Keshava c067bc6b9e Update force-sync.yml
Fixed destination for mirror

[ROCm/rocprofiler-sdk commit: 92929baa44]
2024-11-23 00:33:04 -06:00
Mallya, Ameya Keshava 91600ceb8f Create force-sync.yml
[ROCm/rocprofiler-sdk commit: f6ca6742a4]
2024-11-23 00:33:04 -06:00
Choudhary, Rahul 0c45ed69f8 Create PSDB.yml enabling psdb for github emu staging branch (#2)
# Create PSDB.yml enabling psdb for github emu staging branch

## What type of PR is this? (check all applicable)

- [ ] Refactor
- [x] Feature
- [ ] Bug Fix
- [ ] Optimization
- [ ] Documentation Update

## Technical details

Moving internal repo from github to github EMU 

## Added/updated tests?

_We encourage you to keep the code coverage percentage at 80% and
above._

- [ ] Yes
- [x] No, Does not apply to this PR.

## Updated CHANGELOG?

_Needed for Release updates for a ROCm release._

- [ ] Yes
- [x] No, Does not apply to this PR.

## Added/Updated documentation?

- [ ] Yes
- [x] No, Does not apply to this PR.

---------

Co-authored-by: Mallya, Ameya Keshava <AmeyaKeshava.Mallya@amd.com>

[ROCm/rocprofiler-sdk commit: 53bb4466a4]
2024-11-23 00:33:04 -06:00
Elwazir, Ammar 7608eb49d6 Updating CI
Update continuous_integration.yml

Update continuous_integration.yml

Adding EMU Runners

Update continuous_integration.yml

Update continuous_integration.yml

Bump thollander/actions-comment-pull-request from 2.5.0 to 3.0.1

Bumps [thollander/actions-comment-pull-request](https://github.com/thollander/actions-comment-pull-request) from 2.5.0 to 3.0.1.
- [Release notes](https://github.com/thollander/actions-comment-pull-request/releases)
- [Commits](https://github.com/thollander/actions-comment-pull-request/compare/v2.5.0...v3.0.1)

---
updated-dependencies:
- dependency-name: thollander/actions-comment-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Update continuous_integration.yml

Update continuous_integration.yml

Update run-ci.py

Update upload-image-to-github.py

Update continuous_integration.yml

Update continuous_integration.yml

Update continuous_integration.yml

Update continuous_integration.yml

Update continuous_integration.yml

using github output

Update continuous_integration.yml

Revert temp change

Update continuous_integration.yml

Update continuous_integration.yml


[ROCm/rocprofiler-sdk commit: d564f759a5]
2024-11-23 00:33:04 -06:00
Benjamin Welton 39db3e8a1d Add rocprofiler_load_counter_definition (#1193)
Adds rocprofiler_load_counter_definition. This function allows a counter definition file to be supplied to rocprofiler-sdk directly. Takes in a string containing the counter definition YAML, its size (in bytes), and a flag value to state whether this is an append operation or not.

---------

Co-authored-by: Benjamin Welton <ben@amd.com>
Co-authored-by: Jonathan R. Madsen <jrmadsen@users.noreply.github.com>
Co-authored-by: usrihari123 <srihari.u@amd.com>

[ROCm/rocprofiler-sdk commit: 7ddc72ad45]
2024-11-22 01:55:47 -08:00
Gopesh Bhardwaj 5bea1772ea SDK doc updates (#1183)
* correcting usage example

* rccl trace

* Adding Navi power state limitation

* Addressed feedback

* kernel-rename

* kokkos trace

* more information on kookos tracing

* Corecting tool library hardcoding

* summary domains

* Updating domain stats file

* updating images

* rocprofv3 default behavior update

* Removing README from API documentation

* Added missing description in Topics

* Fixed wrong rendering of README in API document

* Fixing Topics in API docs

* Removing API doc for details/rccl.h

* Addressed review comments

[ROCm/rocprofiler-sdk commit: 7ea9ced493]
2024-11-22 12:05:11 +05:30
Vladimir Indic e11b553a26 PC sampling services provides dispatch id (#1209)
[ROCm/rocprofiler-sdk commit: 8d2ce4b475]
2024-11-21 11:10:31 -06:00
Giovanni Lenzi Baraldi a9256ea070 SWDEV-484742+SWDEV-489158: Dynamic record size for counter collection (#1208)
* Rebased optizations for rocprofv3 tool

* Fixing merge conflicts

* Formatting

* Open from within mutex

* Small name changes

* Added operator

[ROCm/rocprofiler-sdk commit: 6ae441f785]
2024-11-20 15:43:11 -06:00
Vladimir Indic 42c6ffc0eb Host trap PC sampling uses new record type (#1207)
* Host trap PC sampling uses new record type

* removing redundant field

* formatting

* simplifying templates in the parser - no need for HostTrap boolean

* reviving some parser tests

* hw_id decoding on GFX9

* HW id parser test

* parser CID test

* Parser multigpu test

* removing rocprofiler_pc_sampling_record_t and some fields from hw_id

* simplifying parser context

* keep bench test internally

* initializing gfx9_hw_id_t differently

* anonymous struct first

* avoiding inlining initialization of struct

[ROCm/rocprofiler-sdk commit: bc52c17e64]
2024-11-20 14:02:47 -06:00
Giovanni Lenzi Baraldi 3291f05e2e Remove check for instance count in aql_tests (#1214)
[ROCm/rocprofiler-sdk commit: 55aea3ef10]
2024-11-20 12:45:30 +01:00
Gopesh Bhardwaj a71d6dc340 Format rocporfv3 help (#1199)
* Format rocporfv3 help

* python formatter fix

[ROCm/rocprofiler-sdk commit: a976ed0783]
2024-11-18 20:51:02 -06:00
Jonathan R. Madsen 1ea688c447 Runtime Initialization Tracing (#1105)
* Runtime initialization tracing

- calbacks and buffer entries notifying when a runtime has been initialized

* Minor cleanup to registration.cpp

* JSON tool implementation

* Increase perfetto_reader timeout

* Handle perfetto_reader timeout when attr doesn't exist

* clang-tidy fixes to memory_allocation.cpp

[ROCm/rocprofiler-sdk commit: 249c50fc40]
2024-11-18 20:50:29 -06:00
itrowbri 94f4f56c40 Memory Allocation Tracking (#1142)
* Initial commit: Need to implement wrapper function to collect data and test that wrapper function is correctly replacing core HSA functions

* Attempted to implement wrapper implementation for hsa memory allocation functions. Need to modify generate record files and test if implementation is working as expected

* Debugging and implementing generateCSV function

* Memory allocation size and starting address outputted to csv and json file formats

* Formatting

* Initial setup for OTF2 and Perfetto generation

* Collecting agent id for memory_allocation and formatting

* Modified memory_allocation.cpp to set up code for AMD_EXT commands

* Support for memory_pool_allocate added

* Removed accidently added file

* Made flag optional and added more OTF2 and Perfetto code. Needs testing to ensure perfetto and OTF2 works

* Formatting

* Fixed perfetto and otf2 output

* Fixed flag issue due to incorrect buffer use

* Updated documentation

* Small cleaning and comments

* Added test for HSA memory allocation tracing

* Fixed summary test validation errors due to allocation tracing. Added type to location_base to create unique event ids for allocation due to OTF2 trace error

* Decreased lower limit of hip calls for test

* Modified summary tests to vary number of allocate requests

* Minor fixes to address comments. Still need to address OTF2 comments

* Fix docs and changed OTF2 to use enum for type specified in location_base construction

* Fixed schema error

* Added vmem command tracking. Need to add test

* Updated test to work with vmem command and updated generateCSV to output int instead of hex string.

* OTF2 enum update and mispelling fix

* CI does not support Virtual Memory API. Removed vmem test. Will add back if CI is modifed to suport vmem API

* Update CMakeLists.txt for memory allocation test

* Updated summary test

* Minor fixes to address comments

* Moved domain_type.hpp enum to before LAST

* Fixed compile errors and formatting

* Fixed stats summary domain name error

* Added rocprofv3 test

* Page migration test fix

* Undo page migration test changes. Failures do not appear to have to do with memory allocation

[ROCm/rocprofiler-sdk commit: 3bd7773cf7]
2024-11-18 20:22:14 -06:00
Ammar ELWazir e2892bc8b9 Adding rccl-dev package in core CI testing (#1197)
* Adding rccl-dev package in core CI testing

* Update continuous_integration.yml

[ROCm/rocprofiler-sdk commit: 0d764eb3c5]
2024-11-12 09:56:24 -06:00
itrowbri 343a842c81 SWDEV-496634: Revert deprecation of hipHostMalloc and hipHostFree functions (#1186)
[ROCm/rocprofiler-sdk commit: 0356446654]
2024-11-11 11:47:31 -06:00
Jonathan R. Madsen 957b34e01a Fix navi3 kernel tracing (#1133)
* Fix navi3 kernel tracing

- conditional aql::set_profiler_active_on_queue only when counter collection is registered

* Update changelog

* Update following name change

[ROCm/rocprofiler-sdk commit: f7c87e455d]
2024-11-11 11:14:59 -06:00
Mythreya 36d357337d Report page migration events as start/end (#793)
* Squashed commit of the following:

commit b76f2635f4b65599f03812a73d0cf410f5ada213
Author: Mythreya <mythreya.kuricheti@amd.com>
Date:   Fri Apr 26 00:29:09 2024 +0000

    Changed for PR feedback

commit bedb8ad566ff42fbf117b19202c26c507abcf8ac
Author: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
Date:   Thu Apr 25 19:20:06 2024 -0500

    Fix installation

commit a98f8a69459a1450a1be9c98e20b3c1e7f2568c2
Author: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
Date:   Thu Apr 25 19:16:35 2024 -0500

    Restructure the headers

commit 46489a020ffafdd5f4ce3f580469ff233ef67fe1
Author: Mythreya <mythreya.kuricheti@amd.com>
Date:   Tue Apr 23 23:31:10 2024 +0000

    Update hsa include

commit 8e795282cce348fc6aa736b7857b21aeb32aa20a
Author: Mythreya <mythreya.kuricheti@amd.com>
Date:   Tue Apr 23 23:02:32 2024 +0000

    Report page migration events as start/end

    * Updated tests accordingly
    * Page migration events are reported independently

commit 8784e5ad4895a626a2a8e4ac12f8021b34172bd4
Author: Mythreya <mythreya.kuricheti@amd.com>
Date:   Tue Apr 16 17:01:57 2024 +0000

    Update handling of dropped page migration events

    Previously, we dropped all locally buffered events when we detect that
    KFD has dropped some events. This may drop too many pending events too eagerly.

    When we receive an end event and cannot find the corresponding start,
    we can be sure that KFD has dropped some events in the immediate past.

    When this happens, we look through all locally buffered events and report
    the start events that are older than 10s as partial events --- they have
    no "end" information (we expect that the end events have been dropped).

    We also set the polling timeout to 10s to prevent the local buffer from
    getting too large with events waiting to be paired up.

    Updated tests

commit 2e8e0b07eeda9b5990e1ae8d28dcd3a035ce38e1
Author: Mythreya <mythreya.kuricheti@amd.com>
Date:   Tue Apr 16 17:01:31 2024 +0000

    Docs for triggers

* Fix page migration sample

* Fix hasher, kfd install

* Add hsa include
* Install KFD include dir

* Updates from code review

- single timestamp field
- node_id -> agent_id
- from_node -> from_agent
- to_node -> to_agent

* Misc revisions

* Remove page-migration install target

* Update page-migration pytest

* Tweak to serialization

* Address PR comments

* Update page-migration test

* Add cli args, update iterations

* Address PR comments

* Add abi.cpp for static_asserts
* Update page_migration gtest with only runtime tests
* Moved helpers into utils.hpp

---------

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

[ROCm/rocprofiler-sdk commit: 363f85dc72]
2024-11-11 11:08:47 -06:00
venkat1361 46cb82b75f Dimension support for reduce operator (#1147)
* cache reference nodes

* evaluation based on dim args

* format

* add dimensions for reduce operator

* add dimensions for reduce operator

* add dimensions for reduce operator docs

* add dimensions for reduce operator.

* refactor switch cases

* Update CHANGELOG.md

* updated doc with data example

* updated doc with data example for reduce operation.

* added fallthrough in switch case sum.

* changelog.md

* format

* fix bug in constuct_test_data()

[ROCm/rocprofiler-sdk commit: 472907a576]
2024-11-11 18:37:28 +05:30
venkat1361 1a369af8fa SWDEV-477244: Select() Expression Dimension Support (#1091)
* add support for select function in derived counters

* formatting

* renaming select dims variable name from set to map

* format

* Update doc with select() for dimensions

* use : for defining range of values in select dims

* - update dimension for metric after select.
- make sure to raise runtime error if user provides range for a dimension.

* use map instead of unordered_map for select dim info

* new line EOF

* fix bug: select() operator.

* Update evaluate_ast.cpp

format

* added a check for dim value exceeds max.

* Update source/lib/rocprofiler-sdk/counters/evaluate_ast.cpp

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

* Update source/lib/rocprofiler-sdk/counters/evaluate_ast.cpp

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

* updated doc with data example for select operation.

* changelog.md

* Update CHANGELOG.md

---------

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

[ROCm/rocprofiler-sdk commit: cc4811d27d]
2024-11-11 15:14:22 +05:30
Giovanni Lenzi Baraldi 665bbaeab8 SWDEV-495725: Skipping metadata init for unsupported agents (#1194)
* SWDEV-495725: Skipping metadata init for unsupported agents

* Update source/lib/output/metadata.cpp

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

---------

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

[ROCm/rocprofiler-sdk commit: 576819a6ed]
2024-11-10 08:33:28 +05:30
Benjamin Welton 6fb17e6a62 Counter definitions for GFX12 (#1038)
Co-authored-by: Benjamin Welton <ben@amd.com>

[ROCm/rocprofiler-sdk commit: 89167f03a3]
2024-11-08 08:27:15 -08:00
Jonathan R. Madsen c17952fd23 rocprofv3: refactor and reorganize rocprofiler-sdk-tool library (#1138)
* Add rocprofv3-multi-node.md to source/lib/rocprofiler-sdk-tool

* Initial source re-organization

- create "output" static library

* Update include/rocprofiler-sdk/cxx/serialization.hpp

- add GPR count fields to kernel symbol serialization

* Add source/scripts/generate-rocpd.py

- reads one or more JSON output files from rocprofv3 and writes rocpd SQLite3 database
- Note: preliminary implementation

* More reorganization b/t lib/rocprofiler-sdk-tool and lib/output

* Updates to generate-rocpd.py

- add SQL views
- option: --absolute-timestamps -> --normalize-timestamps
- option: --generic-markers
- misc fixes with regards to getting the views working
- support marker names

* Update generate-rocpd.py

- Add --marker-mode option

* Update generate-rocpd.py

- Improve debugging of bad bulk SQLite statements

* Update rocprofv3-multi-node.md

- cleanup of proposed SQL schema

* lib/output/format_path.{hpp,cpp}

- rename format to format_path (in config.hpp and config.cpp)
- move format_path functionality to format_path.{hpp,cpp}

* Rework lib/output/tmp_file_buffer.{hpp,cpp}

* Update output_key.cpp

- support %cwd%, %launch_date%

* Rework lib/output/buffered_output.hpp

* Support csv_output_file constructed via domain_type

* Update lib/output/domain_type.{hpp,cpp}

- get_domain_trace_file_name
- get_domain_stats_file_name

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

- tweak headers

* Update lib/output/generate*.cpp

- remove include of helpers.hpp
- CSV uses domain_type for filenames

* Update samples/counter_collection/per_dev_serialization.cpp

- make wait_on volatile

* Remove tool_table from lib/output and lib/rocprofiler-sdk-tool

- Also split various structs into their own files
  - lib/output/agent_info
  - lib/output/metadata
  - lib/output/kernel_symbol_info
  - lib/output/counter_info
- Implemented rocprofiler::tool::metadata

* Optimize rocprofiler_tool_counter_collection_record_t

- reduce the size of the struct from 24784 bytes to 8376 bytes

* Introduced output_config

- split subset of config (from tools library) into output_config to be able to configure the output generating functions separately from the tool library
- this is a significant step towards the output generating functions not relying on static global memory

* Stream chunks of data into output instead of loading all info memory

* Remove duplicate group_segment_size in rocprofiler_kernel_dispatch_info_t serialization

* Adding Q&A to rocprofv3-multi-node.md

* Remove all remaining include lib/rocprofiler-sdk-tool from lib/output

- migrated a fair amount of code from lib/rocprofiler-sdk-tool/helper.hpp to lib/output

* Update Q&A of rocprofv3-multi-node.md

* Fix minor compilation errors + minor cleanup

* Update hsa/async_copy.cpp

- when ROCPROFILER_CI_STRICT_TIMESTAMPS > 0, reduce the active_signal sync wait time

* Update profiling_time.hpp

- fix log messages for when start/end time is less/greater than enqueue/current CPU time

* Fix generate_stats for tool_counter_record_t

* Dictionary optimization for generate-rocpd.py

---------

Co-authored-by: SrirakshaNag <104580803+SrirakshaNag@users.noreply.github.com>

[ROCm/rocprofiler-sdk commit: 5eb8c2658c]
2024-11-07 01:15:19 -06:00
Jonathan R. Madsen b43bc64099 CI: Relax timestamp checking (#1189)
* Relax timestamp checking

- Prevent recurring CI failures that have no remedy until HSA/driver issues are resolved

* Replace "cc" abbreviation in tests with "counter-collection"

* Update CODEOWNERS to explicitly include jrmadsen for source/include

* Extra logging in rocprofiler tool library

* Tweak aborted-app test

- remove counter collection as part of the test

[ROCm/rocprofiler-sdk commit: 98858b60ec]
2024-11-06 23:32:47 -06:00
Benjamin Welton 0265a56972 Update comparing-with-legacy-tools.rst (#1187)
[ROCm/rocprofiler-sdk commit: 6564419357]
2024-11-06 08:56:32 -08:00
Benjamin Welton 8d249f5772 Timing documentation Update (#1168)
* Timing documentation Update

Documentation update for timing differences. Needs additional review from Joe Greathouse before landing.

* Update comparing-with-legacy-tools.rst

[ROCm/rocprofiler-sdk commit: c491a5bc34]
2024-11-06 09:28:41 -06:00
Larry Meadows 73916608df SDK: OMPT Support part 1: include file and print formatters for OMPT support (#1175)
* include file and print formatters for OMPT support

* Apply suggestions from code review

* Remove rocprofiler_ompt_set_callbacks

* Reorder ROCPROFILER_EXTERNAL_CORRELATION_REQUEST_OPENMP

---------

Co-authored-by: Jonathan R. Madsen <jrmadsen@users.noreply.github.com>
Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>

[ROCm/rocprofiler-sdk commit: 62e0a9c1a3]
2024-11-05 23:57:11 -06:00
Larry Meadows 9805ea599c Ability to select alternative compiler per file (#1086)
[ROCm/rocprofiler-sdk commit: cc1498bb3b]
2024-11-05 23:45:54 -06:00
Ammar ELWazir e6a4ad787a SWDEV-466390: Adding License for roctx, docs, tests packages (#1174)
* Adding License for roctx, docs, tests packages

* Fixing Docs/ROCTx packages

* Fixing roctx path

[ROCm/rocprofiler-sdk commit: d269c845ae]
2024-11-05 13:38:55 -06:00
Benjamin Welton 0568f772ab Kernel Serialization Documentation (#1167)
* Kernel Serialization Documentation

Added docs for kernel serialization.

* Update counter_collection_services.md

* correcting counter collection mode names

* correcting counter collection modes naming

---------

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

[ROCm/rocprofiler-sdk commit: dc6a568ec5]
2024-11-05 09:00:11 -06:00
srawat 162fb23187 Update CHANGELOG.md (#1181)
[ROCm/rocprofiler-sdk commit: 216f724e9a]
2024-11-05 18:11:57 +05:30
Jonathan R. Madsen 3e64cedc0c SDK: create CMake option for strict checks on CPU vs. GPU timestamps (#1159)
* SDK: create CMake option for strict checks on CPU vs. GPU timestamps

- Configurating CMake with `ROCPROFILER_BUILD_CI_STRICT_TIMESTAMPS=ON` will enable fatal errors if dispatch/memcpy timestamps on GPU are outside of the start/end time from the CPU
- `ROCPROFIELR_BUILD_CI_STRICT_TIMESTAMPS` defaults to the value of `ROCPROFILER_BUILD_CI`

* Formatting

* Disable async_copy frequency scaling

* Disable profiling dispatch time frequency scaling

* Support runtime configuration via env variables

- ROCPROFILER_CI_FREQ_SCALE_TIMESTAMPS env variable will enable scaling the timestamps based on the hsa timestamp period
- ROCPROFILER_CI_STRICT_TIMESTAMPS env variable will enable strict timestamp checks
  - when cmake is configured with ROCPROFILER_BUILD_CI_STRICT_TIMESTAMPS=ON, this env variable defaults to true

* ROCPROFILER_BUILD_CI_STRICT_TIMESTAMPS defaults to OFF

* Update cmake-target

* Common tracing::adjust_profiling_time

---------

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

[ROCm/rocprofiler-sdk commit: ad48201912]
2024-11-01 23:12:51 -05:00
srawat d8cfdd2887 Refactor API reference docs (#1125)
* Refactor API reference docs

* refactor API ref docs

* corrections

* consistent naming

* updates

* Update CHANGELOG.md

* improving SEO

* improving SEO

* Update using-rocprofv3.rst

* Update counter_collection_services.md

* Update using-rocprofv3.rst

* Fixing doc build errors

* changelogs and some formatting issues

---------

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

[ROCm/rocprofiler-sdk commit: 4204042ac6]
2024-10-30 19:39:08 +05:30
Gopesh Bhardwaj b69bf8d939 changelog update for release notes (#1171)
[ROCm/rocprofiler-sdk commit: 762ca819cf]
2024-10-30 15:48:43 +05:30
Jonathan R. Madsen 22f8106311 Remove serializing Reserved field of HSA_CAPABILITY (#1170)
- reserved fields have no meaning

[ROCm/rocprofiler-sdk commit: 7f416a2f82]
2024-10-30 00:12:48 -05:00
Giovanni Lenzi Baraldi f6b0641a2a Update fetch_size metric (#1165)
Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>

[ROCm/rocprofiler-sdk commit: 4acca76edb]
2024-10-29 21:44:27 -03:00
Gopesh Bhardwaj 2800fb526f CODEOWNERS Update (#1164)
* Assigining code owners

* Assigining code owners

* reducing default list further for ease

* Update CODEOWNERS

* Update CODEOWNERS

* Update CODEOWNERS

---------

Co-authored-by: Jonathan R. Madsen <jrmadsen@users.noreply.github.com>

[ROCm/rocprofiler-sdk commit: 980b97cc51]
2024-10-29 11:47:14 +05:30
Manjunath P Jakaraddi fa35b62708 SWDEV-493402: Changing the header format for counter collection (#1148)
* SWDEV-493402: Changing the header format for counter collection

* Adding column widths

[ROCm/rocprofiler-sdk commit: f087debe84]
2024-10-29 10:11:29 +05:30
Benjamin Welton 48fe6573a4 SDK: counter collection serialization per device (#1157)
Migrates profiler_serializer class in QueueController to have an instance per-agent instead of one globally. Other changes in this commit are to allow for maps of the queues associated with each agent to be passed to profiler_serializer when it is turned on/off. Existing test cases cover whether or not the kernels are serialized (multistream app). New test case added to show that this serialization only occurs on a per device level with a kernel launched on one device waiting for a value to be set on the other.

[ROCm/rocprofiler-sdk commit: 4a5b1d98c2]
2024-10-25 13:13:36 -07:00
Jonathan R. Madsen 6752f1ea9b rocprofv3: stabilize rocprofv3 summary tests (#1161)
* Update tests/bin/transpose/transpose.cpp

- add hipMemGetInfo call to display the available vs. total memory on the GPU

* Update tests/rocprofv3/summary/validate.py

- Updated test_summary_display_data after addition of hipMemGetInfo to transpose test exe

* Tweak code coverage comment uploading

- create unique orphan branch per PR
- reduce quality of PNG files (85 -> 70)

* Revert some of code coverage comment uploading

- remove creation of unique orphan branch per PR

* Tweak code coverage comment uploading

- create unique orphan branch per PR

[ROCm/rocprofiler-sdk commit: 5e1643cf81]
2024-10-25 14:14:59 -05:00
Jonathan R. Madsen 07f698a532 CMake: Consistently name CMake Targets (#1082)
* Change all rocprofiler-X target names to rocprofiler-sdk-X

* Update rocprofiler-sdk-config.cmake

- fix install tree target names
- simplify logic for using find w/ components and find w/o components

* Update rocprofiler-sdk-roctx-config.cmake

- simplify logic for using find w/ components and find w/o components

* Update samples/intercept_table/CMakeLists.txt

- demonstrate/test use of `find_package(rocprofiler-sdk ... COMPONENTS ...)`

[ROCm/rocprofiler-sdk commit: 74facf87a6]
2024-10-25 11:17:34 -05:00
Jonathan R. Madsen 651e28f7f0 rocprofv3: support specifying HW counters via command line (#1130)
* rocprofv3: support specifying PMC counters via command line

- E.g. `rocprofv3 --pmc SQ_WAVES -- <app>`

* Update CHANGELOG

* updated rocprofv3 help and documentation

---------

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

[ROCm/rocprofiler-sdk commit: d93d4d9463]
2024-10-25 02:49:30 -05:00
Giovanni Lenzi Baraldi dbad56597a Fix for clang tidy (#1155)
[ROCm/rocprofiler-sdk commit: b5f1d70105]
2024-10-24 20:37:05 -03:00
Giovanni Lenzi Baraldi f1c7a1a368 SWDEV-489158: Optimizing counter collection performance (#1150)
* SWDEV-489158: Optimizing counter collection performance

* Static initializer fix

* adding sched_yield+sleep

[ROCm/rocprofiler-sdk commit: aef18896dd]
2024-10-24 16:58:07 -03:00
Gopesh Bhardwaj 4a64ab1884 Fixing logging (#1146)
* Fixing logging

* Removing logs

[ROCm/rocprofiler-sdk commit: 42765c35a2]
2024-10-24 12:03:16 +05:30
Sam Wu 132f00cbec Documentation - Bump rocm-docs-core to 1.8.2 (#1116)
* Bump rocm-docs-core to 1.8.2

* changing certi back to previous version

---------

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

[ROCm/rocprofiler-sdk commit: dd71131114]
2024-10-23 17:24:12 +05:30
venkat1361 4a048d9052 Max reduction operation bug fix & support reduction for derived counters (#1085)
* Max reduction operation bug fix & support reduction for derived counters

* CHANGELOG

* Added missing new line

---------

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

[ROCm/rocprofiler-sdk commit: 9d3d5cc07c]
2024-10-22 22:49:51 +05:30
venkat1361 3819a846da Check to force tools to initialize the ctx id to zero. (#1135)
* Check to force tool to initialize the ctx id to zero.

* initialize rocprofiler_context_id_t with 0 in units tests

* changelog

---------

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

[ROCm/rocprofiler-sdk commit: 3f91d90bbc]
2024-10-22 18:09:25 +05:30
Jonathan R. Madsen d87319ba1c Miscellaneous Testing Fixes + CMake find_package include guard (#1106)
* Improve ROCPROFILER_DEFAULT_FAIL_REGEX

* Support find_package called twice

* Skip iteration of ROCPROFILER_AGENT_TYPE_CPU

* Relax tests/rocprofv3/summary

* Tweak to rocprofiler-sdk-tool/tool.cpp

* Move rocprofv3-trigger-list-metrics to libexec

* Remove PC_SAMPLING_TESTS_REGEX from CI workflow

* Update packaging

- core component depends on roctx component

* Increase verbosity for failing tests

* Fix RPATH of rocprofv3-trigger-list-metrics

---------

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

[ROCm/rocprofiler-sdk commit: a92fa8f071]
2024-10-22 16:24:16 +05:30
Gopesh Bhardwaj 3f62fe0730 Removing rocprofv3.sh and rocprofv3 install path to sbin (#1143)
[ROCm/rocprofiler-sdk commit: bfe80a4428]
2024-10-22 14:16:36 +05:30