Commit Graph
64512 Commits
Author SHA1 Message Date
Laurent Morichetti fb3cf218c9 Merge "Fix a hang in './test/hsa/ctrl ctrl_hsa_input_trace'" into amd-staging
[ROCm/roctracer commit: 9cecf30131]
2022-05-10 14:54:11 -04:00
Laurent Morichetti 9cecf30131 Merge "Fix a hang in './test/hsa/ctrl ctrl_hsa_input_trace'" into amd-staging 2022-05-10 14:54:11 -04:00
Laurent Morichetti 8b98f245ad Merge "Remove now unused hsa_rsrc_factory" into amd-staging
[ROCm/roctracer commit: fe0adfd37b]
2022-05-10 14:54:01 -04:00
Laurent Morichetti fe0adfd37b Merge "Remove now unused hsa_rsrc_factory" into amd-staging 2022-05-10 14:54:01 -04:00
Laurent Morichetti 4e9c35c929 Merge "Consolidate all sources of timestamps" into amd-staging
[ROCm/roctracer commit: 7c4f7625b1]
2022-05-10 14:53:36 -04:00
Laurent Morichetti 7c4f7625b1 Merge "Consolidate all sources of timestamps" into amd-staging 2022-05-10 14:53:36 -04:00
Jonathan R. Madsen 77721c2db5 Remove wikipedia links [skip ci] (#56)
[ROCm/rocprofiler-systems commit: ef202f3d86]
2022-05-10 13:16:04 -05:00
Jonathan R. Madsen ef202f3d86 Remove wikipedia links [skip ci] (#56) 2022-05-10 13:16:04 -05:00
Jeremy Newton b53cb9e585 SWDEV-336248 - Use public icd header
HIP uses icd_dispatch.h, which is not a public header. Using the public
CL/cl_icd.h removes inclusion of the private header.

This allows compiling HIP without relying on OCL ICD source, which makes
distributing a standalone ROCclr easier.

For WIN32, a few other headers are required.

Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I0cab173b9753c5b0ab3be9222aa8bb0545cdeaab


[ROCm/clr commit: d04938a6ad]
2022-05-10 13:46:08 -04:00
Jeremy Newton d04938a6ad SWDEV-336248 - Use public icd header
HIP uses icd_dispatch.h, which is not a public header. Using the public
CL/cl_icd.h removes inclusion of the private header.

This allows compiling HIP without relying on OCL ICD source, which makes
distributing a standalone ROCclr easier.

For WIN32, a few other headers are required.

Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I0cab173b9753c5b0ab3be9222aa8bb0545cdeaab
2022-05-10 13:46:08 -04:00
Sourabh Betigeri 1171423bcf SWDEV-329829 - Fixes to return right error codes for respective negative scenarios
Change-Id: Icb615a336bb846df1cf2811316d88a0e88381da8


[ROCm/clr commit: 5fa514fea0]
2022-05-10 12:56:20 -04:00
Sourabh Betigeri 5fa514fea0 SWDEV-329829 - Fixes to return right error codes for respective negative scenarios
Change-Id: Icb615a336bb846df1cf2811316d88a0e88381da8
2022-05-10 12:56:20 -04:00
Laurent Morichetti e309f4c5df Cleanup CallbackTable::Get
Make CallbackTable::Get return the callback_function/user_arg pair
as an actual return value instead of returning it through arguments
pointers.

Change-Id: Ia2dfcdad8c237a09620518ad67af94add47220da


[ROCm/roctracer commit: 4aeb76f7a8]
2022-05-10 08:13:18 -07:00
Laurent Morichetti 4aeb76f7a8 Cleanup CallbackTable::Get
Make CallbackTable::Get return the callback_function/user_arg pair
as an actual return value instead of returning it through arguments
pointers.

Change-Id: Ia2dfcdad8c237a09620518ad67af94add47220da
2022-05-10 08:13:18 -07:00
Laurent Morichetti df767311e3 Remove unused open_output_file/close_output_file
Change-Id: I0e5118b814617cb605949c99e5f0dc235f6edac0


[ROCm/roctracer commit: cb040b7def]
2022-05-10 08:13:18 -07:00
Laurent Morichetti cb040b7def Remove unused open_output_file/close_output_file
Change-Id: I0e5118b814617cb605949c99e5f0dc235f6edac0
2022-05-10 08:13:18 -07:00
Laurent Morichetti 63ead69012 Fix a hang in './test/hsa/ctrl ctrl_hsa_input_trace'
At the end of the test, the tracer tool is unloaded and the active
memory pools are flushed. In the flush callback, to get the activity
operation string, the RocpLoader instance is neeeded, and if the
RocpLoader is not already loaded, it attempts to dlopen the rocprofiler
library.

Calling dlopen from a global destructor hangs because the dynamic
loader lock is already owned (e.g. by dlclose).

To temporarily work around the issue, instanciate the RocpLoader when
the activities needing it are enabled.

Change-Id: I712c66d88c43694fe53a95d6a61d7b22abb75262


[ROCm/roctracer commit: 11887f596a]
2022-05-10 08:13:18 -07:00
Laurent Morichetti 11887f596a Fix a hang in './test/hsa/ctrl ctrl_hsa_input_trace'
At the end of the test, the tracer tool is unloaded and the active
memory pools are flushed. In the flush callback, to get the activity
operation string, the RocpLoader instance is neeeded, and if the
RocpLoader is not already loaded, it attempts to dlopen the rocprofiler
library.

Calling dlopen from a global destructor hangs because the dynamic
loader lock is already owned (e.g. by dlclose).

To temporarily work around the issue, instanciate the RocpLoader when
the activities needing it are enabled.

Change-Id: I712c66d88c43694fe53a95d6a61d7b22abb75262
2022-05-10 08:13:18 -07:00
Laurent Morichetti ef47516a88 Remove now unused hsa_rsrc_factory
Change-Id: I66175eb9fae2e7e61400af77a0c89be9c39e770e


[ROCm/roctracer commit: 4ced94b9a2]
2022-05-10 08:13:18 -07:00
Laurent Morichetti 4ced94b9a2 Remove now unused hsa_rsrc_factory
Change-Id: I66175eb9fae2e7e61400af77a0c89be9c39e770e
2022-05-10 08:13:18 -07:00
Laurent Morichetti 19fbb76f1b Consolidate all sources of timestamps
System clock timestamps should only come from a single source:
util::timestamp_ns(). Externally, this function is exposed as
roctracer_get_timestamp() (used by the tracer tool).

Removed the now unused HSA Runtime Utilities which were never part
of the ROCtracer API.

Change-Id: I044b7f4da60fd8fdb771b0c877622a3143f0e815


[ROCm/roctracer commit: f8462b8637]
2022-05-10 08:13:09 -07:00
Laurent Morichetti f8462b8637 Consolidate all sources of timestamps
System clock timestamps should only come from a single source:
util::timestamp_ns(). Externally, this function is exposed as
roctracer_get_timestamp() (used by the tracer tool).

Removed the now unused HSA Runtime Utilities which were never part
of the ROCtracer API.

Change-Id: I044b7f4da60fd8fdb771b0c877622a3143f0e815
2022-05-10 08:13:09 -07:00
Jenkins eb31e8842d SWDEV-299127 - Merge 'develop' into 'amd-staging'
Change-Id: I99ee15426896dad36497c70ded0bcb307cfca5c6


[ROCm/hip commit: abf7a9b1b3]
2022-05-10 07:10:24 -04:00
Jenkins abf7a9b1b3 SWDEV-299127 - Merge 'develop' into 'amd-staging'
Change-Id: I99ee15426896dad36497c70ded0bcb307cfca5c6
2022-05-10 07:10:24 -04:00
Todd tiantuo Li c75c34f099 SWDEV-315047 - add Raphael(gfx1036) to OCLDeviceQueries
Change-Id: Iaa930c5ea9e39f9c44b1a5d737fc3520e9b6eca8


[ROCm/clr commit: 6c4ab575ca]
2022-05-10 02:37:42 -07:00
Todd tiantuo Li 6c4ab575ca SWDEV-315047 - add Raphael(gfx1036) to OCLDeviceQueries
Change-Id: Iaa930c5ea9e39f9c44b1a5d737fc3520e9b6eca8
2022-05-10 02:37:42 -07:00
Christophe Paquot 2c3faaa3a0 SWDEV-322620 - Virtual Memory Management
Add a virtualMemoryManagement_ flag to device.info.

Change-Id: Iabd039010d83fc51b4bcef600c609f5c65e7b1ae


[ROCm/clr commit: b4645c7d4e]
2022-05-09 22:54:42 -07:00
Christophe Paquot b4645c7d4e SWDEV-322620 - Virtual Memory Management
Add a virtualMemoryManagement_ flag to device.info.

Change-Id: Iabd039010d83fc51b4bcef600c609f5c65e7b1ae
2022-05-09 22:54:42 -07:00
Rakesh Roy 5a9a25fcb6 Revert "SWDEV-332606 - SWDEV-333585 - Fix hipMemcpySymbol* and hipGetSymbol* APIs"
This reverts commit 1ab7f22334 due to QMCPack test failure (SWDEV-335826)

Change-Id: I40397b345aa60f43afc17853bc72426daf385cf7


[ROCm/clr commit: 84c46047e5]
2022-05-10 11:20:36 +05:30
Rakesh Roy 84c46047e5 Revert "SWDEV-332606 - SWDEV-333585 - Fix hipMemcpySymbol* and hipGetSymbol* APIs"
This reverts commit f1fb612774 due to QMCPack test failure (SWDEV-335826)

Change-Id: I40397b345aa60f43afc17853bc72426daf385cf7
2022-05-10 11:20:36 +05:30
ROCm CI Service Account 510bab4931 SWDEV-321874 - [catch2][dtest] Texture dtests migrated from HIT to catch2 framework (#2576)
Change-Id: Ice382bf552fd0a9b41133f2a6ab333e3672b7c28

[ROCm/hip-tests commit: cf3f8d18c4]
2022-05-09 16:41:37 -07:00
ROCm CI Service Account cf3f8d18c4 SWDEV-321874 - [catch2][dtest] Texture dtests migrated from HIT to catch2 framework (#2576)
Change-Id: Ice382bf552fd0a9b41133f2a6ab333e3672b7c28
2022-05-09 16:41:37 -07:00
ROCm CI Service Account 803d9e1d63 SWDEV-321874 - [catch2][dtest] Texture dtests migrated from HIT to catch2 framework (#2576)
Change-Id: Ice382bf552fd0a9b41133f2a6ab333e3672b7c28

[ROCm/hip commit: d7e34e8534]
2022-05-09 16:41:37 -07:00
ROCm CI Service Account d7e34e8534 SWDEV-321874 - [catch2][dtest] Texture dtests migrated from HIT to catch2 framework (#2576)
Change-Id: Ice382bf552fd0a9b41133f2a6ab333e3672b7c28
2022-05-09 16:41:37 -07:00
Alex Xie 9811bbaa4f SWDEV-328156 - Palamida scan remediation
Change-Id: I7e2ae4afea117630cfc43d2cd0f0fd6d98fe4f58


[ROCm/clr commit: aa8a31b1d8]
2022-05-09 19:24:09 -04:00
Alex Xie aa8a31b1d8 SWDEV-328156 - Palamida scan remediation
Change-Id: I7e2ae4afea117630cfc43d2cd0f0fd6d98fe4f58
2022-05-09 19:24:09 -04:00
Jenkins 0c06a551be SWDEV-299127 - Merge 'develop' into 'amd-staging'
Change-Id: I222e7e56773ba82867bfa72ce47f2515d2cb5ed0


[ROCm/hip commit: 1af79bb986]
2022-05-09 19:12:45 -04:00
Jenkins 1af79bb986 SWDEV-299127 - Merge 'develop' into 'amd-staging'
Change-Id: I222e7e56773ba82867bfa72ce47f2515d2cb5ed0
2022-05-09 19:12:45 -04:00
Ammar ELWazir f15a0ec2f0 Solving issue with using clang as the compiler
Change-Id: I4fa7b24af7008a30b0300b57ccbf1bc82dbfd66e


[ROCm/roctracer commit: 502ea835b9]
2022-05-09 17:41:33 -05:00
Ammar ELWazir 502ea835b9 Solving issue with using clang as the compiler
Change-Id: I4fa7b24af7008a30b0300b57ccbf1bc82dbfd66e
2022-05-09 17:41:33 -05:00
Sean Keely ace0599c69 Report pointer info queries to released fragments as type UNKNOWN.
We should not leak suballocation info to users.

Change-Id: I13b2a22bf5517b523ba04ddc039b49da8378b55f
2022-05-09 13:46:16 -05:00
Sean Keely 14c6bd37fd Report pointer info queries to released fragments as type UNKNOWN.
We should not leak suballocation info to users.

Change-Id: I13b2a22bf5517b523ba04ddc039b49da8378b55f


[ROCm/ROCR-Runtime commit: ace0599c69]
2022-05-09 13:46:16 -05:00
Sean Keely 0ba9b162db Ensure IPC imports always create an allocation map entry.
Simplifies behavior.  A memory type now either always generates an
entry or never does.

Change-Id: Ie98cddea01e801308ac0ba650795fdef92b7e47d
2022-05-09 13:46:16 -05:00
Sean Keely 588e124c4e Ensure IPC imports always create an allocation map entry.
Simplifies behavior.  A memory type now either always generates an
entry or never does.

Change-Id: Ie98cddea01e801308ac0ba650795fdef92b7e47d


[ROCm/ROCR-Runtime commit: 0ba9b162db]
2022-05-09 13:46:16 -05:00
Sean Keely 752cfd5ffd Adjust include paths for new header locations.
Thunk and rocm_smi_lib paths have been updated.

Change-Id: If2948172f8064dd992cbccbc2a80f9161ad4d457
2022-05-09 14:44:32 -04:00
Sean Keely c96272841b Adjust include paths for new header locations.
Thunk and rocm_smi_lib paths have been updated.

Change-Id: If2948172f8064dd992cbccbc2a80f9161ad4d457


[ROCm/ROCR-Runtime commit: 752cfd5ffd]
2022-05-09 14:44:32 -04:00
Jeremy Newton 90d46dc278 SWDEV-336248 - Don't exclude cl_egl.h from install
cl_icd.h includes cl_egl.h, but cl_egl.h is excluded from install. It
was reported by the community that including cl_icd.h would error due to
the missing cl_egl.h file.

I'm assuming that cl_egl.h was excluded because EGL isn't important for
ROCm. Since cl_icd.h has some important typedefs, it makes sense just
to include cl_egl.h, which seems to be a common practice in open source
projects.

Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I506257c2dc51512ec8e11b1e5dadbe6e48ad785b


[ROCm/clr commit: e9dd848149]
2022-05-09 14:33:00 -04:00
Jeremy Newton e9dd848149 SWDEV-336248 - Don't exclude cl_egl.h from install
cl_icd.h includes cl_egl.h, but cl_egl.h is excluded from install. It
was reported by the community that including cl_icd.h would error due to
the missing cl_egl.h file.

I'm assuming that cl_egl.h was excluded because EGL isn't important for
ROCm. Since cl_icd.h has some important typedefs, it makes sense just
to include cl_egl.h, which seems to be a common practice in open source
projects.

Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I506257c2dc51512ec8e11b1e5dadbe6e48ad785b
2022-05-09 14:33:00 -04:00
Cordell Bloor 2e0b90e818 SWDEV-335902 - Fix HIP when Git info unavailable
Prior to this change, when Git_FOUND was false, HIP_VERSION_BUILD_ID
would be undefined in the CMake code. The value of HIP_VERSION_BUILD_ID
in <hip/hip_version.h> is taken from the CMake variable, so it was being
defined as nothing in those cases. That would cause compilation failures,
as src/hip_global.cpp contains the function:

    size_t amd_dbgapi_get_build_id() {
      return HIP_VERSION_BUILD_ID;
    }

which would become

    size_t amd_dbgapi_get_build_id() {
      return ;
    }

after preprocessing. To prevent this, we can define the version
information to a default value when Git is not found.

A related problem was reported by Harmen Stoppels in
https://github.com/ROCm-Developer-Tools/HIP/pull/2218. When Git
is not available (or if the library is being built from a tarball),
the HIP_VERSION_GITHASH is not defined. This causes trouble because
HIP_LIB_VERSION_STRING is defined as "X.Y.Z-${HIP_VERSION_GITHASH}"
and therefore becomes "X.Y.Z-".

The incomplete version string becomes a problem when it is appended
to the shared library file name. File names that end with '-' confuse
the linker. They cause strange errors when attempting to link to the
HIP library. This problem can be prevented by dropping the trailing
dash and using "X.Y.Z" as the version string when HIP_VERSION_GITHASH
is not defined.

Change-Id: I6e290c1f1b603ba30c9ded885e125d9ca9a2e688
Signed-off-by: Cordell Bloor <Cordell.Bloor@amd.com>


[ROCm/clr commit: 9c450d6f66]
2022-05-09 13:44:09 -04:00
Cordell Bloor 9c450d6f66 SWDEV-335902 - Fix HIP when Git info unavailable
Prior to this change, when Git_FOUND was false, HIP_VERSION_BUILD_ID
would be undefined in the CMake code. The value of HIP_VERSION_BUILD_ID
in <hip/hip_version.h> is taken from the CMake variable, so it was being
defined as nothing in those cases. That would cause compilation failures,
as src/hip_global.cpp contains the function:

    size_t amd_dbgapi_get_build_id() {
      return HIP_VERSION_BUILD_ID;
    }

which would become

    size_t amd_dbgapi_get_build_id() {
      return ;
    }

after preprocessing. To prevent this, we can define the version
information to a default value when Git is not found.

A related problem was reported by Harmen Stoppels in
https://github.com/ROCm-Developer-Tools/HIP/pull/2218. When Git
is not available (or if the library is being built from a tarball),
the HIP_VERSION_GITHASH is not defined. This causes trouble because
HIP_LIB_VERSION_STRING is defined as "X.Y.Z-${HIP_VERSION_GITHASH}"
and therefore becomes "X.Y.Z-".

The incomplete version string becomes a problem when it is appended
to the shared library file name. File names that end with '-' confuse
the linker. They cause strange errors when attempting to link to the
HIP library. This problem can be prevented by dropping the trailing
dash and using "X.Y.Z" as the version string when HIP_VERSION_GITHASH
is not defined.

Change-Id: I6e290c1f1b603ba30c9ded885e125d9ca9a2e688
Signed-off-by: Cordell Bloor <Cordell.Bloor@amd.com>
2022-05-09 13:44:09 -04:00