Commit Graph

8920 Commits

Author SHA1 Message Date
Giovanni LB 95dae41625 SWDEV-475884: Fixing hang issue on iree, fixing bitshift on codeobj markers
Change-Id: I046312cbfa82742c7388f64b87b95a9d671b9d3d
2024-07-26 17:13:51 -03:00
Gopesh Bhardwaj dc671497da look for symbols in dynsym table (#990)
* look for symbols in dynsym table

* checking both symtab and dynsym

* Avoid symbol duplication in non stripped binaries

* clang-format

* Minor elf_utils.cpp updates

- use 'else if' instead of 'if'
- logging tweaks

* Update registration

- tweak logging

* Update testing

- strip the rocprofiler-sdk-c-tool library
- add test-c-tool-rocp-tool-lib-execute test which does NOT LD_PRELOAD the library (uses only ROCP_TOOL_LIBRARIES instead)

---------

Co-authored-by: Jonathan R. Madsen <jonathanrmadsen@gmail.com>
2024-07-26 10:21:04 +05:30
AravindanC 9155768fe7 SWDEV-396819 Update File Permissions for other binary files
Change-Id: I085b482e87a016c82b339e2efe67e3d1b5a7af21
2024-07-25 18:02:29 -07:00
meserve-amd 70268ccc9f SWDEV-475540: Fix build time parsing of unions
- Fixes issue where types defined inside of a union were being skipped
  for ostream operator generation
- Also fixes issue where these types were not correctly defined in the
  resulting operators' parameters
- Fixes edge case where types with "union" in their name were being
  skipped as if they were union types

Change-Id: I736c57788cbc461e9493d4651756dc06c278430d
2024-07-25 17:28:24 -04:00
David Galiffi 8fa76b9459 Add docs/** to paths-ignore
Document location is being refactored.
2024-07-25 13:15:22 -04:00
David Galiffi 977bfe8347 Update checkout action to v4 2024-07-25 13:15:22 -04:00
David Galiffi b852d9df06 Remove Ubuntu 18.04 and SUSE 15.2 2024-07-25 13:15:22 -04:00
gobhardw fee1f00ddc SWDEV-471998: roctracer test fix
Change-Id: I8e88d087f66ecb265154b29f19e3544706578724
2024-07-25 12:20:17 +05:30
itrowbri 2a65365b46 Initialize PcieAccessApi* api and void* libpciaccess_handle to nullptr
Change-Id: I58306f12653a8cb532c107bc3852aa0df8f7c6b9
2024-07-24 16:16:03 -05:00
itrowbri 4ed346aa63 SWDEV-469750: Load libpciaccess-dev functions with dlopen. Removed libsystemd-dev from CMakeLists.txt
Change-Id: I314c188fabc2dd4de3b633d722599bc11a046622
2024-07-24 11:22:32 -05:00
Gopesh Bhardwaj ba35562729 fixing core dump wehen no hipcc optmization (#989) 2024-07-24 10:22:07 +05:30
Galantsev, Dmitrii 35357d85d0 Azure - Switch to amd-staging branch
Change-Id: If37b4cd804e0ea50ea4031118b83090263fd39f6
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-07-23 17:08:32 -05:00
Galantsev, Dmitrii dd954be887 Azure - Switch to amd-staging branch
Change-Id: I9e69d0d4f8ece2dfc7b3327f8486f0d3d8bbeba0
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
2024-07-23 17:07:05 -05:00
Gopesh Bhardwaj a35a81b060 Fixing docs (#987) 2024-07-23 08:07:59 +05:30
Giovanni Lenzi Baraldi 04a38ce034 Adding barrier bit on packets after dispatch (#981)
Co-authored-by: Gopesh Bhardwaj <gopesh.bhardwaj@amd.com>
2024-07-22 22:39:56 +05:30
Vladimir Indic 0f89f0449d PC sampling: chiplet id + integration test fix (#983)
* PCS: show chiplet; cover loading/unloading in integration test

* Use (code_object_id, pc_addr) pair as instruction id.
2024-07-22 16:00:59 +05:30
Benjamin Welton 0be3e07388 Only check lock if counter collection is used
Only check the lock if counter collection is being
attempted by the profiler. Not when it is loaded.

SWDEV-474455

Change-Id: Ie14de3c8db57e0cbd279ffca51c333a375ca8654
Signed-off-by: Benjamin Welton <bewelton@amd.com>
2024-07-22 05:24:50 -04:00
Giovanni LB 95ed584e6d SWDEV-474179: Fixing hang issue for perfetto and missing records for trace period
Change-Id: I8926565720873d7dd730c5518f60ac6521e3bbf5
2024-07-22 01:09:47 -04:00
Chris Freehill 6fda123836 Change "devel" to "dev" for runtime-rocr
Also, don't call rpm command if distro doesn't support it.

Change-Id: I7f39f9c1f39c5408967d66e2db1f471847c5e668
2024-07-19 22:58:07 -05:00
David Galiffi 98e7d0cfb3 Fixing for packaging (#386)
Should have been checking environment variables for package name
overrides.
Disabled RPM Build's AUTOREQ and AUTOPROV

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-07-19 22:16:59 -04:00
Giovanni LB 637abbf8d7 SWDEV-474615: Adding barrier bit to read and stop packets
Change-Id: I895dc7389d870ed111ac3b9c400e6946023ffe97
2024-07-19 12:45:52 -03:00
Alex Sierra 626eb4bfaf src/fmm.c: fallback to old userptr reg if SVM fails
Fallback to old userptr registration in case SVM method fails.

Signed-off-by: Alex Sierra <alex.sierra@amd.com>
Change-Id: I70c3ec74a8b4f762713e6a0619453642f3fca8e5
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-18 10:20:05 -05:00
Adam Niederer 84567b6416 Allow overriding gfx version per-node
This lets you run two unsupported-but-really-supported cards of different architecture together in the same program. Works great w/ llama.cpp on my 7900XT + 6600.

Example usage (device 0 is RDNA3, device 1 is RDNA2):

HSA_OVERRIDE_GFX_VERSION_1="11.0.0" HSA_OVERRIDE_GFX_VERSION_2="10.3.0" ollama serve

Change-Id: Ic63ef462f698dee722d360f7fc3ef72789c277b7
Signed-off-by: AdamNiederer
Signed-off-by: Kent Russell <kent.russell@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-18 10:20:05 -05:00
Tim Huang 06242b70e7 kfdtest: add blacklist for gfx1152
Change-Id: I74c957539c138160ed379aea7e1fa253d7648175
Signed-off-by: Tim Huang <tim.huang@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-18 10:20:05 -05:00
David Belanger 611911020c kfdtest: Fix DeviceHdpFlush on GFX12
Fix register COMPUTE_PGM_RSRC2 in Dispatch code.
Bit 6 (called TRAP_PRESENT on pre-GFX12) should not be set on GFX12
as it has a different meaning (DYNAMIC_VGPR).

Minor instructions changes for CopyOnSignalIsa and WriteAndSignalIsa
shaders.

Change-Id: Ib4e75e3c92f220210bc45778738d81b91efb9d5e
Signed-off-by: David Belanger <david.belanger@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-18 10:20:05 -05:00
Kent Russell bd2d9770f7 kfdtest: Add required LLVM header
A function call was refactored out of CommandLine.h, so add the header
to include it

Change-Id: If5594e3abc2fdfdd59f108c4379802cedab127ee
Signed-off-by: Kent Russell <kent.russell@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-18 10:20:05 -05:00
Philip Yang 42df8b2b34 kfdtest: Skip ContiguousVRAMAllocation if no enough VRAM
RDMATest.ContiguousVRAMAllocation test uses 4GB buffer, skip the test if
total VRAM size is less than 5GB, considering page table and other
reserved VRAM usage.

Change-Id: I0342417501cdd3477c2bf1b2f7d1e6bef61d1871
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-18 10:20:05 -05:00
Chris Freehill 9e8477e1c9 Use static drm and drm_amdgpu for static builds
This commit was ported from old repo.
Original author: Ranjith Ramakrishnan <Ranjith.Ramakrishnan@amd.com>

For static builds use drm and drm_amdgpu static libraries for linking.

Created a separate cmake target file and static library for static use case

The config file will include the respective target file based on
BUILD_SHARED_LIBS.

Default target file will be the one where drm and libdrm_amdgpu shaed libraries
are linked.

Applications using statically linked cmake targets of hsakmt should install the
required static libraries before building.

Change-Id: Idf4e1a2b5f18b344f5a9927803756d50c2b33702
2024-07-18 10:19:49 -05:00
Ammar ELWazir b8a22e6ebd Open Source Contributions (#750)
* Create CONTRIBUTING.md 

Adding ROCm needed files for Open source development.

* Create CODEOWNERS

* Adding issue templates

* Addressing review comments

---------

Co-authored-by: Ammar ELWazir <aelwazir@hpe6u-21.amd.com>
Co-authored-by: gobhardw <gopesh.bhardwaj@amd.com>
2024-07-18 15:04:23 +05:30
Gopesh Bhardwaj 785cc39c16 gobhardw/docs refactor (#975)
* refactor docs

* Fixing docs build

* merging 967

* Improving readability with table usage

* review changes

* compilation fix

* README links

---------

Co-authored-by: srawat <120587655+SwRaw@users.noreply.github.com>
2024-07-18 12:58:20 +05:30
Gopesh Bhardwaj bb5b2c9264 updating CI for RHEL and SLES builds (#956)
* updating CI for RHEL and SLES builds

* Turn off Build CI for rhel/sles

* update CI workflow

* Attempt to fix job names

* core-deb and core-rpm

* picking the right runner-set

* compiler version check for rhel/sles

* PC sampling check

* BUILD_CI off for

* trying with sudo

* supressing unused variable error

* removing LD_LIBRARY_PATH

* Revert "removing LD_LIBRARY_PATH"

This reverts commit eb2d79ab65c00a97056f6bb4b679de3aad59f593.

* Removing duplicate code
2024-07-18 10:08:48 +05:30
Chris Freehill 2a5e433393 Use staticdrm target of hsakmt for static build
This will link static libraries of drm and libdrm_amdgpu libraries

This commit was ported from old repo and originally authored by:
Ranjith Ramakrishnan <Ranjith.Ramakrishnan@amd.com>
Date: Thu, 20 Jun 2024 08:29:03 -0700

Change-Id: I8b06811516335317d4fb3d7c98b001a12776a808
2024-07-17 22:45:50 -05:00
Tim Huang 1278ac25c0 Fix last AMDGCN-based processors enumerator error
Change-Id: Idd0659a327585b30b0f7d4dcb9e2212b55239941
Signed-off-by: Tim Huang <tim.huang@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-17 22:32:23 -05:00
David Belanger 13c3f06dfe Fix overflow in max_slice variable for GFX12
Change max_slice type to uint64_t and calculation to 64-bit, otherwise
value overflows to 0.

Problem triggered only on GFX12 as field size was increased.

Change-Id: If26451224538743dabc41bdc1b327c6ef021bc24
Signed-off-by: David Belanger <david.belanger@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-17 22:32:23 -05:00
Lang Yu 7e6c3d1bfa Fix Memory_Atomic_Add_Test issue
Since "libhsakmt: Prevent hsaKmtRegisterMemory* from registering non-userptr",
non-userptr is not allowed to be pinned any more.
Use hsa_amd_agents_allow_access to map host memory.

Change-Id: I898d2f83222907de58cafc1a2b18a636634d1b20
Signed-off-by: Lang Yu <lang.yu@amd.com>
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-17 22:32:23 -05:00
David Belanger 4f453f3bd4 Fix image issue on GFX12
Fix encoding of pitch in SRD (1 bit missing).
Issue affects images with pitch > 8192.

Signed-off-by: David Belanger <david.belanger@amd.com>
Change-Id: Id0b431f51ab3984d1a47d3e8c13d35e28a6009cf
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-07-17 22:32:23 -05:00
Chris Freehill 5820fa37d7 Set PARENT_SCOPE for HSA_DEP_ROCPROFILER_REG
This variable is now in a sub-project, but needs to be visible
in the super-project.

Change-Id: I14d307646253df8f0a8a50d01b8ca677b904234c
2024-07-17 17:52:59 -05:00
Jonathan R. Madsen 90accda152 Common string entry (#971)
* Common string entry

* Add lib/common/string_entry.cpp + return const string*
2024-07-16 23:07:49 -07:00
Benjamin Welton 34897d318f Convert counter def format to YAML (#976)
* Convert counter def format to YAML

Converts counter definition format to YAML with the
following structure:

```yaml
COUNTER_NAME:
 architectures:
  gfxXX: // Can be more than one, / deliminated if they share idential data
    block: <Optional>
    event: <Optional>
    expression: <optional>
    description: <Optional> // In case per arch notes are needed
  gfxYY:
    ...
 description: General counter desctiption
```

All counters (derived and hardware) are now defined
in the same file for ease of future additions/subtractions.

Removes existing XML parser. Keeps the existing XML
definitions for now (since other tools still rely on
its presence).
2024-07-12 16:20:33 -07:00
Jonathan R. Madsen 2be3543c7b Parse ELF format for rocprofiler_configure symbol (#970)
* Parse ELF format to search for rocprofiler_configure

* Use ELF parsing in registration
2024-07-11 20:22:26 -05:00
dependabot[bot] 0600911f0b Bump rocm-docs-core from 1.4.0 to 1.5.0 in /docs/sphinx
Bumps [rocm-docs-core](https://github.com/ROCm/rocm-docs-core) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/ROCm/rocm-docs-core/releases)
- [Changelog](https://github.com/ROCm/rocm-docs-core/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ROCm/rocm-docs-core/compare/v1.4.0...v1.5.0)

---
updated-dependencies:
- dependency-name: rocm-docs-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Change-Id: I60c2d94a447b71ca0ce26a87b7f55b055b8bef9e
2024-07-11 10:01:23 -04:00
Maisam Arif 3cd677419e Merge amd-staging into amd-master 20240710
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I82f353d21279e2c1ee1788cb9e949b6d3b7e3270
2024-07-10 19:57:39 -05:00
Maisam Arif db4d81b944 Bump version lib:7.3.0 tool:2.3.0+hash
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I637b34e03580d5b5efb1e12805a9cdeb7778de74
2024-07-10 19:55:15 -05:00
David Galiffi b0b1dca21e Add ElfUtils and BinUtils Download URL Overrides (#358)
* Add CMake CACHE Variable ElfUtils_DOWNLOAD_URL

Used to override the default URL to download ElfUtils from.
Useful for internal builds

Also, include a mirror to fallback to if the override URL fails.

* Update timemory submodule

Updating to include the BINUTIL_DOWNLOAD_URL override cmake
variable.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
2024-07-10 10:34:18 -04:00
Chris Freehill bdefad8028 Add PROVIDES "hsa-rocr-dev,hsa-ext-rocr-dev" for RPMs
Change-Id: If2c4ef2dfdb89d4f2287b81e421815b27d0bcfb9
2024-07-09 22:51:32 -05:00
Lang Yu 7313e52f35 SWDEV-467545 - Add rocprofiler support for gfx1150/gfx1151
Change-Id: I2cddc36981f6d815c865d180a1daf1b8a7e0633f
Signed-off-by: Lang Yu <lang.yu@amd.com>
2024-07-09 22:40:10 -04:00
Jonathan R. Madsen 8b1b074b2a Fix agent shutdown destructor errors (#969)
* Update lib/rocprofiler-sdk/agent.cpp

- use static_object wrapper for vector of agent_pair (rocp agent <-> hsa agent)

* Fix get_aql_handles() shutdown error

- use `static_object` wrapper for vector of `aqlprofile_agent_handle_t`
2024-07-08 17:53:02 -05:00
Jonathan R. Madsen 60b1dbfb6f Update HIP API tracing (#958)
- support HipDispatchTable additions for HIP_RUNTIME_API_TABLE_STEP_VERSION 1 thru 4
2024-07-08 17:12:53 -05:00
Jonathan R. Madsen 1e49b43738 Miscellaneous updates (#959)
- missing-new-line CI job: ensures all source files end with new line
- logging updates
- add new line to the end of many files
- fix header include ordering is misc places
- transition to use hsa::get_core_table() and hsa::get_amd_ext_table() in various places instead of making copies
2024-07-08 16:50:32 -05:00
Giovanni Lenzi Baraldi 78fd8cb379 Returning code object id information in code_printing.cpp:Instruction (#965)
* Returning code object id information in code_printing.cpp:Instruction

* Adding assertions

* Simplifying decoder library
2024-07-08 16:59:40 -03:00