Commit Graph

64521 Commits

Author SHA1 Message Date
Vladana Stojiljkovic ed458615c4 Revert "SWDEV-492768 - Match hipStreamAddCallback capture behavior with nvidia"
This reverts commit f6c8bbf4dc.

Reason for revert: It is considered a breaking change.

Change-Id: I9b2dfc60f62eec7268c0374b0b33e45eca7b3bbb
2024-11-07 09:49:55 -05:00
Vladana Stojiljkovic d1cf8700c8 Revert "SWDEV-490474 - Allow hipMallocManaged capturing only in relaxed mode"
This reverts commit 830c72e286.

Reason for revert: It is considered a breaking change.

Change-Id: I6bfd81dcc16d36304efa2f151969427249a4122f


[ROCm/clr commit: 48df130d87]
2024-11-07 04:33:07 -05:00
Vladana Stojiljkovic 48df130d87 Revert "SWDEV-490474 - Allow hipMallocManaged capturing only in relaxed mode"
This reverts commit 6deecf1bfe.

Reason for revert: It is considered a breaking change.

Change-Id: I6bfd81dcc16d36304efa2f151969427249a4122f
2024-11-07 04:33:07 -05: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 5eb8c2658c 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>
2024-11-07 01:15:19 -06:00
Jaydeep Patel 700f1d9abd rocr: Decrement counter only if event is popped
Also restore dead signals cleanup for old path when HSA_WAIT_ANY_DEBUG
is used.

Change-Id: I51a7404991443c9f6cbf57b4b9e9faa694b9538c
2024-11-07 01:03:09 -05:00
Jaydeep Patel 6dc8a4ae55 rocr: Decrement counter only if event is popped
Also restore dead signals cleanup for old path when HSA_WAIT_ANY_DEBUG
is used.

Change-Id: I51a7404991443c9f6cbf57b4b9e9faa694b9538c


[ROCm/ROCR-Runtime commit: 700f1d9abd]
2024-11-07 01:03:09 -05: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
Jonathan R. Madsen 98858b60ec 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
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 6564419357 Update comparing-with-legacy-tools.rst (#1187) 2024-11-06 08:56:32 -08:00
Ioannis Assiouras 7d8eb4adb8 SWDEV-483134 - Removed hipExtHostAlloc tests
Change-Id: Ifb938ad6d8382cfe25d531e5e36c5a4df986d940


[ROCm/hip-tests commit: b2e3b605a6]
2024-11-06 11:28:37 -05:00
Ioannis Assiouras b2e3b605a6 SWDEV-483134 - Removed hipExtHostAlloc tests
Change-Id: Ifb938ad6d8382cfe25d531e5e36c5a4df986d940
2024-11-06 11:28:37 -05: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
Benjamin Welton c491a5bc34 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
2024-11-06 09:28:41 -06:00
AravindanC 1a0de862aa Update static package dependency of rocrtst
Change-Id: Ic12a6f2ec3bd03d871815810cc79488e7d5c57ab
2024-11-06 07:06:37 -08:00
AravindanC 697d500cb7 Update static package dependency of rocrtst
Change-Id: Ic12a6f2ec3bd03d871815810cc79488e7d5c57ab


[ROCm/ROCR-Runtime commit: 1a0de862aa]
2024-11-06 07:06:37 -08: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 62e0a9c1a3 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>
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
Larry Meadows cc1498bb3b Ability to select alternative compiler per file (#1086) 2024-11-05 23:45:54 -06:00
jofernau 6d5af4fe1f SWDEV-496006 - Update tests according to compiler.
Change-Id: I8870be9f7d1d209e3d9ae07928e8990180e3dd0b


[ROCm/hip-tests commit: 5f6eded274]
2024-11-06 01:30:30 -04:00
jofernau 5f6eded274 SWDEV-496006 - Update tests according to compiler.
Change-Id: I8870be9f7d1d209e3d9ae07928e8990180e3dd0b
2024-11-06 01:30:30 -04:00
Jorge López d51bd18649 Updates driverInitialized() to support amdgpu built as module as well as kernel built-in. Fixes ROCm/rocm_smi_lib#102 and is an updated version of ROCm/rocm_smi_lib#104
Change-Id: Icb3abe820bc67035b822358a1c04bd09a7c22b6b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
Reviewed-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rocm_smi_lib commit: 35c1d00f5a]
2024-11-05 16:30:37 -05:00
Jorge López 35c1d00f5a Updates driverInitialized() to support amdgpu built as module as well as kernel built-in. Fixes ROCm/rocm_smi_lib#102 and is an updated version of ROCm/rocm_smi_lib#104
Change-Id: Icb3abe820bc67035b822358a1c04bd09a7c22b6b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
Reviewed-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-11-05 16:30:37 -05:00
Julia Jiang 0692af90ad SWDEV-494501 - Fix CTS api negative sub-test failures
Change-Id: I0dd67467d977569fca45dcdad28a96c839bae33b


[ROCm/clr commit: 11a4cb3c34]
2024-11-05 14:58:01 -05:00
Julia Jiang 11a4cb3c34 SWDEV-494501 - Fix CTS api negative sub-test failures
Change-Id: I0dd67467d977569fca45dcdad28a96c839bae33b
2024-11-05 14:58:01 -05: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
Ammar ELWazir d269c845ae SWDEV-466390: Adding License for roctx, docs, tests packages (#1174)
* Adding License for roctx, docs, tests packages

* Fixing Docs/ROCTx packages

* Fixing roctx path
2024-11-05 13:38:55 -06:00
David Galiffi 42d64232af Merge pull request #466 from ROCm/dgaliffi/sync-main-with-stg
Omniperf v3.0.0 in prep for ROCm 6.3.0

[ROCm/rocprofiler-compute commit: 71bc463921]
2024-11-05 13:53:20 -05:00
David Galiffi 71bc463921 Merge pull request #466 from ROCm/dgaliffi/sync-main-with-stg
Omniperf v3.0.0 in prep for ROCm 6.3.0
2024-11-05 13:53:20 -05:00
meserve-amd 4467e50453 SWDEV-470692: Fix parsing of unknown API records
- A valid trace is now given even if an individual entry in an API trace
  does not contain a parameter list
- Previously an "unknown" record in an API trace would cause the entire
  output to be discarded

Change-Id: I29bf6df2cf58a231d836aafb37fbde9c5d85512f
2024-11-05 12:48:35 -05:00
meserve-amd f3aaad1687 SWDEV-470692: Fix parsing of unknown API records
- A valid trace is now given even if an individual entry in an API trace
  does not contain a parameter list
- Previously an "unknown" record in an API trace would cause the entire
  output to be discarded

Change-Id: I29bf6df2cf58a231d836aafb37fbde9c5d85512f


[ROCm/rocprofiler commit: 4467e50453]
2024-11-05 12:48:35 -05:00
David Galiffi 38da6b266a Merge branch 'amd-staging' into dgaliffi/sync-main-with-stg
Signed-off-by: David Galiffi <David.Galiffi@amd.com>


[ROCm/rocprofiler-compute commit: f0ccace29b]
2024-11-05 11:21:47 -05:00
David Galiffi f0ccace29b Merge branch 'amd-staging' into dgaliffi/sync-main-with-stg
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-11-05 11:21:47 -05:00
Fei Zheng 03ffa7a756 Merge pull request #460 from feizheng10/doc_warp_efficency
Fix PoP of VALU Active Threads with wave_size

[ROCm/rocprofiler-compute commit: b4f9b38e99]
2024-11-05 09:00:59 -07:00
Fei Zheng b4f9b38e99 Merge pull request #460 from feizheng10/doc_warp_efficency
Fix PoP of VALU Active Threads with wave_size
2024-11-05 09:00:59 -07:00
David Galiffi 7eaaa83024 Fix for proto files not being viewable in Perfetto UI (#16)
- Fix for proto files not being viewable in Perfetto UI
  - Ported from https://github.com/ROCm/omnitrace/pull/411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

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

[ROCm/rocprofiler-systems commit: 21d9ab79fd]
2024-11-05 10:14:25 -05:00
David Galiffi 21d9ab79fd Fix for proto files not being viewable in Perfetto UI (#16)
- Fix for proto files not being viewable in Perfetto UI
  - Ported from https://github.com/ROCm/omnitrace/pull/411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-11-05 10:14:25 -05: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
Benjamin Welton dc6a568ec5 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>
2024-11-05 09:00:11 -06:00
Peter Park 5a30a05800 Fix changelog heading
Signed-off-by: Peter Park <peter.park@amd.com>


[ROCm/rocprofiler-compute commit: 6a381d8966]
2024-11-05 09:07:57 -05:00
Peter Park 6a381d8966 Fix changelog heading
Signed-off-by: Peter Park <peter.park@amd.com>
2024-11-05 09:07:57 -05:00
srawat 162fb23187 Update CHANGELOG.md (#1181)
[ROCm/rocprofiler-sdk commit: 216f724e9a]
2024-11-05 18:11:57 +05:30
srawat 216f724e9a Update CHANGELOG.md (#1181) 2024-11-05 18:11:57 +05:30
Vladana Stojiljkovic 353bb4ac4d SWDEV-479312 - Implement tests for hipMemcpy2DArrayToArray
Change-Id: Id42557aefa0a887799402503c8905ee4cd322629


[ROCm/hip-tests commit: 558cbfd829]
2024-11-05 04:06:26 -05:00
Vladana Stojiljkovic 558cbfd829 SWDEV-479312 - Implement tests for hipMemcpy2DArrayToArray
Change-Id: Id42557aefa0a887799402503c8905ee4cd322629
2024-11-05 04:06:26 -05:00
Vladana Stojiljkovic f6f7b7cf9c SWDEV-478205 - Implement tests for hipTexRefSetMaxAnisotropy
Change-Id: I0ef580ea9be685ab83c9ee29193eae4aa0813d3a


[ROCm/hip-tests commit: e53b31db23]
2024-11-05 02:47:37 -05:00
Vladana Stojiljkovic e53b31db23 SWDEV-478205 - Implement tests for hipTexRefSetMaxAnisotropy
Change-Id: I0ef580ea9be685ab83c9ee29193eae4aa0813d3a
2024-11-05 02:47:37 -05:00
Marko Arandjelovic 712ee64a1a SWDEV-478801 - Add unit test for hipMemcpyDtoA
Change-Id: Ia0f606294574c43b5e84438a33eda4c43bd0acbc


[ROCm/hip-tests commit: 04ad40156c]
2024-11-05 02:40:33 -05:00