Commit Graph

8920 Commits

Author SHA1 Message Date
colramos-amd 20670da2b7 Responding to first round of Ben R.'s docs feedback.\n\nThis round includes fixes for comments up to the 'Performance Model' section. I will need to work with our documentation group to respond to those higher level comments.
Signed-off-by: colramos-amd <colramos@amd.com>
2024-04-01 14:30:21 -05:00
colramos-amd dfdd8dd21d Add timestamp override to rocprofv2 and format Python
Signed-off-by: colramos-amd <colramos@amd.com>
2024-04-01 14:30:21 -05:00
JoseSantosAMD da506ad9b5 Pytest add mi200 to analyze workloads (#334)
* Updated links in documentation. (#328)

Updated to reflect new GitHub organization.
Fixed broken links to GitHub pages.

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

* update branch for 2.x documentation builds

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>

* update checkout action and use concurrency instead of cancel-workflow-action

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>

* test addition of user option for container launch

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>

* remove --user option for container, try chown instead

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>

* fixing yaml syntax

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>

* reorder job step - start with checkout

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>

* restore missing run directive

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>

* Update workloads to include log.txt
Add missing MI200 workloads

Signed-off-by: Jose Santos <josantos@amd.com>

* Signed-off-by: Jose Santos <josantos@amd.com>
Add vcopy workload for tests

* Change exit codes for caught failures

Signed-off-by: Jose Santos <josantos@amd.com>

* reformat

Signed-off-by: Jose Santos <josantos@amd.com>

* Add pytest-xdist for pytest -n

Signed-off-by: Jose Santos <josantos@amd.com>

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
Signed-off-by: Jose Santos <josantos@amd.com>
Co-authored-by: David Galiffi <David.Galiffi@amd.com>
Co-authored-by: Karl W. Schulz <karl.schulz@amd.com>
2024-04-01 14:30:21 -05:00
colramos-amd 482fd6f2ca Create general_options() func to reduce code in parser
Signed-off-by: colramos-amd <colramos@amd.com>
2024-04-01 14:30:21 -05:00
Nick Curtis d72ef52208 Fix for #300 (#331)
On some versions of numpy/pandas, applying a str map to an empty series doesn't change the type.
As a result, when adding a float to a string, sometimes numpy dies with a uadd error.
We fix this by explicitly casting to a str first

Signed-off-by: Nicholas Curtis <nicurtis@amd.com>
Co-authored-by: Nicholas Curtis <nicurtis@amd.com>
2024-04-01 14:30:21 -05:00
David Galiffi ddb5c0ccc9 Updated links in documentation. (#329)
Updated to reflect new GitHub organization.
Fixed broken links to GitHub pages.

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-04-01 14:30:21 -05:00
gobhardw 08341ded44 Fixiing roctracer tests for MI300
Change-Id: Id8d2bdd78c857ed40ba331db652177beb91d6230
2024-04-01 18:35:55 +00:00
Jonathan R. Madsen 1df597e049 Installers for RHEL 8.8 and RHEL 8.9 (#334)
* Installers for RHEL 8.8 and RHEL 8.9

- RHEL 8.8: Supports ROCm 5.6, 5.7, 6.0
- RHEL 8.9: Supports ROCm 6.0

* Update build-docker.sh

- fix PERL_REPO for OpenSUSE

* Update some workflows to use Node.js 20

* Fix Dockerfile.opensuse*
2024-04-01 13:31:10 -05:00
Ammar ELWazir e6237637eb Formatting as suggestion in the same branch (#711)
* Update formatting.yml

* Update agent.cpp

* Update agent.cpp
2024-04-01 13:11:09 -05:00
Ammar ELWazir 7c3e4593bf Update formatting.yml 2024-03-30 07:21:48 -05:00
Ammar ELWazir 8534dfa1f3 Update docs.yml 2024-03-30 07:21:24 -05:00
Charis Poag f5c32b5415 Add ROCm 6.1.1 changelog, ROCm SMI deprication, vbios fix
* Updates:
    - Add ROCm 6.1.1 Changelog updates
    - Add planned ROCm SMI deprication notice
    - Fix rocm-smi --showvbios showing extra errors
      for GPUs which do not have a VBIOS (MI300a ASICs)

Change-Id: I0e5ccfe2677f9c7909ca13863a920e323e82b439
Signed-off-by: Charis Poag <Charis.Poag@amd.com>
2024-03-30 00:11:09 -05:00
Ammar ELWazir 6077ddf9ca Update continuous_integration.yml 2024-03-29 21:58:18 -05:00
Ammar ELWazir bc97ae0370 Update continuous_integration.yml 2024-03-29 20:25:44 -05:00
Ammar ELWazir 332374b3fe Adding public sync (#703)
* Create sync-mainline.yaml

* Create sync-staging.yaml
2024-03-29 18:09:00 -05:00
Ammar ELWazir 2a1e9b3f11 Update continuous_integration.yml 2024-03-29 17:16:14 -05:00
Gopesh Bhardwaj ecc79b1fa3 SWDEV-452077 Fixing MI300 list counters and metrics issue (#701) 2024-03-29 14:44:38 -07:00
David Yat Sin efe455c2fa Temporary: Set AllocateGTTAccess and node_id for MES
Temporary change to set the AllocateGTTAccess flag and node_id
on MES devices.

Change-Id: I22385d11b17b76cfb44278fa0d8a09bc8721cea6
2024-03-29 19:38:19 +00:00
David Yat Sin 541d0dbbae Set NUMA region to 0 when using GTTAccess flag
When allocating memory for MES AQL queue structure, the PreferredNode
is set to the device index of GPU to hint the location where the BO
needs to be created. But we need to ignore the device index when calling
bind_mem_to_numa.

Change-Id: Iae69fe02bfd48c5a3bd495319f6f2706d6e8aea2
2024-03-29 17:17:56 +00:00
guanyu12 fe5648805f Merge amd-staging into amd-master 20240329
Signed-off-by: guanyu12 <guanyu12@amd.com>
Change-Id: Iea46d075f0ee45bb68469e87b377ce3519b39e2b
2024-03-29 10:26:04 +08:00
Giovanni LB 97288fedc9 Disabling ATT Tests
Change-Id: I0e03337de967aedaa15600c8b848ea618376d8a2
2024-03-28 15:22:37 -04:00
Galantsev, Dmitrii 9d55c26247 Remove -X from .hsaco files
Change-Id: I1f1b4f07eb854ce2e254564b83719be52b553b02
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-03-27 20:35:08 -05:00
David Galiffi b1e5c356aa Fix link to ROCm install instructions (#333)
Now pointing to https://rocm.docs.amd.com/projects/install-on-linux/en/latest/.
2024-03-27 18:13:06 -05:00
Giovanni LB bf749ba8d6 Fixing XCC-based metrics
Change-Id: I7451355b5b5eeefbd1c78b996d4ca5c4b770246a
2024-03-27 16:17:24 -04:00
gobhardw 91ccbe97ff Fixing llama issue for arg parsing
Change-Id: I9e3e4a37493a7f280b1ef8a4c6ec6d940ddae6ce
2024-03-27 13:00:44 +05:30
Konstantin Zhuravlyov 9e8f185397 Add R_AMDGPU_ABS32 support
Change-Id: I0ee0302d919ede44765adf02eab15015573efef2
2024-03-26 18:47:29 -04:00
Konstantin Zhuravlyov c5e74b7d0a Add dynamic relocation types (NFC)
Change-Id: I1b443003077ba241f34444da293e362266c2ae92
2024-03-26 18:47:05 -04:00
Konstantin Zhuravlyov b2c32ad6cb Rename existing relocation types to legacy/v1 (NFC)
Change-Id: Ided7f656c34131b8067a19c0d3b2955fc8823628
2024-03-26 18:46:50 -04:00
Benjamin Welton f0924c6aa7 Make dimension error message print the counter name (#658)
* temp

* source formatting (clang-format v11) (#659)

Co-authored-by: bwelton <1683479+bwelton@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: bwelton <1683479+bwelton@users.noreply.github.com>
2024-03-26 17:19:04 -05:00
Gopesh Bhardwaj f633278720 counter collection header update in docs (#690) 2024-03-26 17:18:39 -05:00
Jonathan R. Madsen bc9f86ec62 Update HSA copy table (#687)
- two copies of HSA table: internal and tracing
- internal is used to invoke HSA function without any possibility of triggering tracing, etc.
2024-03-26 17:11:34 -05:00
Shweta.Khatri 00b63f7452 Replace lazy_ptr's Init() with reset() method
The function Init() called by one of the constructors of lazy_ptr is undefined.
Replacing with reset method sets the object to an uninitialized state and assigns a new constructor function

Fix submitted on github by zhoumin2 - https://github.com/ROCm/ROCR-Runtime/pull/184

Change-Id: I7d906d526ce7fe7e2548b01810e6395b13497bf3
2024-03-26 15:07:34 -04:00
Mihai Preda fa0c182325 Free the malloc'ed event on page alloc failure
Change-Id: I009a9a6e2f67545c51470e86eac1adb78d6181b4
Signed-off-by: Mihai Preda <preda@users.noreply.github.com>
Signed-off-by: Kent Russell <kent.russell@amd.com>
2024-03-26 09:57:26 -04:00
James Zhu daf99471a4 kfdtest: add kfdtest test cases for pc sampling
Add kfdtest test cases for pc sampling.

Change-Id: I49f4f8ebfa6569803acdc7dec895c1902ce0b280
Signed-off-by: James Zhu <James.Zhu@amd.com>
2024-03-26 02:06:19 -04:00
Ammar ELWazir eb005aac74 Update .gitignore 2024-03-25 12:51:38 -05:00
Ammar ELWazir 1e59ce3620 Update sync-mainline.yaml 2024-03-25 12:46:08 -05:00
Ammar ELWazir 52dfa074ae Update sync-staging.yaml 2024-03-25 12:44:54 -05:00
Ammar ELWazir 7b8b97e028 Update sync-staging.yaml 2024-03-25 12:40:16 -05:00
Ammar ELWazir 88e3460af7 Update sync-staging.yaml 2024-03-25 12:31:04 -05:00
Ammar ELWazir a0054a7513 auto sync public (#58)
* Create sync-staging.yaml

* Create sync-mainline.yaml
2024-03-25 12:27:05 -05:00
David Yat Sin f94e2530fb libhsakmt: add PC sampling support
Add pc sampling support.

Change-Id: I08199024ba5a8eb2845c048d499fc8fcd260d2e8
Signed-off-by: David Yat Sin <David.YatSin@amd.com>
Signed-off-by: James Zhu <James.Zhu@amd.com>
2024-03-25 15:53:38 +00:00
Shweta.Khatri 02a40e9272 Convert some comments to Doxygen-style comments
hsa_ext_amd.h - Fix provided by github developer - Mátyás Aradi
Github request - https://github.com/ROCm/ROCR-Runtime/pull/187

Change-Id: I63e4175caebd10be0151f21bd5f048dd011aaf06
2024-03-25 11:47:14 -04:00
David Yat Sin 4f554988b6 libhsakmt: Update Linux header for PC Sampling
Add pc sampling support

Change-Id: I2c472ce00ff8648904cf7e585687e81d3f493049
Signed-off-by: David Yat Sin <David.YatSin@amd.com>
Signed-off-by: James Zhu <James.Zhu@amd.com>
2024-03-22 15:06:10 +00:00
Jonathan R. Madsen 1addfed9f6 Fix agent node id + randomize offset id (#625)
* Fix agent node id + randomize offset id

- fixes the node_id value
- randomizes a constant offset for the id.handle values
- switch to using node ids in rocprofiler-sdk-tool library
- update tests related to agents

* Logical node id

- sequential node id values from 0 to (N-1) where N is the number of agents
2024-03-21 20:04:21 -05:00
Jonathan R. Madsen 2f9b1767e9 Handle hsa_queue_destroy after finalization (#679)
* Handle hsa_queue_destroy after finalization

- fixes issue where hsa_queue_destroy(...) is invoked after rocprofiler-sdk has finalized
- hsa::get_queue_controller() returns pointer
- if queue controller is a null pointer, skip invoking QueueController::destroy_queue

* Update HIP/HSA/marker update_table logging

* Update rocprofv3 tests

- remove HSA_TOOLS_LIB env variable
- remove setting ROCPROFILER_LOG_LEVEL env variable
- add timeouts to tests which are missing them

* Disable thread sanitizer deadlock detection

* Update CI workflow

- rename vega20-ubuntu job to core-ci
- enable navi32 in core-ci and sanitizers

* Update run-ci.py

- set gcovr html medium and high threshold

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

- remove this capture from enable/disable serialization

* Update lib/rocprofiler-sdk/hsa/{hsa_barrier,profile_serializer}.*

- hsa_barrier::set_barrier accepts const-ref to queue map
- profile_serializer::enable and profile_serializer::disable accept const-ref to queue map

* Logging for HIP/HSA/marker/profile_serializer

* Logging for HIP/HSA/marker/queue_controller

* Improve test_retired_correlation_ids asserts

* Fix tests/counter-collection/validate.py

- scale expected SQ_WAVES counter value based on warp size of GPU

* Tweak github comment for code coverage

* Remove gcovr html high/medium threshold args

* Fix tests/counter-collection/validate.py

- round before casting to int in test_counter_values

* operator bool for profile_serializer

- only wait on CV if profile_serializer is used

* Logging updates (profile_serializer + code_object)

* Update counter-collection validate.py

* QueueController does not wait on CV if finalizing/finalized

* Update CI workflow

- remove navi32 from core job

* Improve HIP/HSA/marker tracing get_functor/functor

- remove lambda wrapper around functor

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

- do not acquire cvmutex lock during finalization

* Update lib/rocprofiler-sdk/hsa/hsa_barrier.*

- move ctor and dtor to implementation
- skip signal store screlease and destroy if already finalized

* Update CI workflow

- remove navi32 runners

* bwelton fixes for hangs

* CMake improvements + simplified demangle

- remove amd-comgr from common target (and thus removed from roctx DT_NEEDED)

---------

Co-authored-by: Benjamin Welton <bewelton@amd.com>
2024-03-21 17:52:15 -05:00
Bill(Shuzhou) Liu 750704720b Unlock the mutex when process is dead
After the dead process is detected, pthread_mutex_consistent() will
be called. After that, the pthread_mutex_unlock() should also be
called to unlock it: "It is the responsibility of the application to
recover the state so it can be reused."

Change-Id: I45d3e2e68c3b06779f3acb1e908dbec0c6a39297
2024-03-21 15:31:10 -05:00
Karl W. Schulz 68ea629c14 restore missing run directive
Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
2024-03-21 11:19:43 -05:00
Karl W. Schulz ad65ec14f8 reorder job step - start with checkout
Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
2024-03-21 11:13:05 -05:00
Karl W. Schulz 5e99f039f6 fixing yaml syntax
Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
2024-03-21 11:08:14 -05:00
Karl W. Schulz 79aba89337 remove --user option for container, try chown instead
Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
2024-03-21 11:05:15 -05:00