With HIP API callback runtime has to stall the queue until the
callback is done. Rocclr will introduce SW blocking HSA signal,
which will be released after the callback is done.
Change-Id: I6411f3efab31b468e3b87ebb5c8d155e116b613d
This change refactors the current ROCclr cmake build to accomodate a
more modular approach. This allows easier support for multiple compiler
and/or multiple runtime backends.
Currently supported compilers:
HSAIL - enabled by ROCCLR_ENABLE_HSAIL (defaults to OFF)
LC - enabled by ROCCLR_ENABLE_LC (defaults to ON)
Currently supported runtimes:
HSA - enabled by ROCCLR_ENABLE_HSA (defaults to ON)
PAL - enabled by ROCCLR_ENABLE_PAL (defaults to OFF)
Any configuration is supported as long as at least one compiler and one
runtime is enabled.
Since ROCclr clients can configure it differently, one cannot reuse the
same ROCclr build artifacts between different clients. To assure this,
this patch assumes that ROCclr will be built as part of the clients
project.
Change-Id: Id4a5c43634296802b8ae87d1ad5984968391ccaf
Terse static_assert is only available starting with c++17. Add the
message argument since HIP is not compiled using c++17.
Change-Id: I77bc7ddb635e50ac3e6744d73c8751dc8299087e
If the texture object was created from an array, then the array owns
the image SRD. Otherwise, if the texture object is a view, or was
created from a buffer, then it owns the image SRD.
The texture object always owns the sampler SRD.
Change-Id: Id88360c23b2b82418c8c3ae2dd569f427574d420
This reverts commit 5b5f934d58.
Reason for revert: Copyright year to be updated only when a file is getting modified in that year.
Change-Id: Id1ece634dce7e67da9f3f6e10103ef6214e72dab
LINK_LANGUAGE support has some issue in CMake versions from 3.18.0 to
3.19.8 when complex libs' dependence exists. Jump to a known CMake
version 3.20.0 where the issue is fixed.
Change-Id: I3fe6dbc35a7b14baa210df297b7885df83d28178
Replace return value of hipPointerGetAttributes() on NV from
hipErrorUnknown to hipErrorInvalidValue if memory has been freed.
Change-Id: I3fe6dbc35a7a14aa9109df297b7885df83d28149
Make hipModuleGetGlobal match cuModuleGetGlobal behavour.
That is, if one of the first two parameters is nullptr, ignore it.
Change-Id: I3fe6dbc35a7b14aa9119df297b7885df83d28048
On Windows, to enable comgr and hiprtc to enable compilation,
provide the correct target flags. Otherwise comgr cannot
figure out which platform to compile for.
Change-Id: I6426e518c8d695342cb49df0ebdeac0437da83df
Add typedefs for int32 and int64. Add templates provided in
system headers such as type_traits used in our HIP header
amd_hip_vector_types.h. Make replacements for clang builtin,
__is_convertible_to.
Change-Id: I4129b3f4f37238e2dda5b64d55e5cffe4d4480c6
Currently generating profiling header is not supported on Windows,
hence why the feature is being disabled.
Change-Id: I1f6d70ec3d68356799c5ecc89469eb007ae894f8