Introducing a VirtualMemObj map as it is needed to differentiate
between virtual address ranges and actual physical memory
This is because a whole VA range can have several physical memories
as chunks.
Change-Id: Ie2a972b4faf3f7d552cfa53e77898f80ad75740a
[ROCm/clr commit: 905088e4e7]
1.Keep track of library name in KHRicdVendorRec
2.Check if library with the same name has already been loaded before adding it in ICD list
CL#1760530
Change-Id: I1e0356422c71963788b76019b0d8db5b8542f9ee
[ROCm/clr commit: ed40c24fa3]
hipGraphExecMemcpyNodeSetParamsFromSymbo was not working in functional
case
Change-Id: I2ad04f6f91519efa075c36fe737a695fa1bc127a
[ROCm/clr commit: bb9e52ab9f]
This also fixes the QMCPack staging (SWDEV-335826) test failures related
to hipMemcpyToSymbol
Change-Id: Icc3ff04fb1e17999f5bddf12e1a7266e2289032f
[ROCm/clr commit: 8a333a989b]
The heap must be cleared once per device, but ROCclr doesn't
create a queue per device in HIP. Hence, the clear operation will
be performed during the first queue creation.
Change-Id: I52ceb06d67d11cde6d019c5ab510059f426a9bfb
[ROCm/clr commit: 04bfd93569]
Let more types support hipResourceViewDesc.
Add missing symbols to fix cuda build failing.
Change-Id: Ife694cc6491427093863252e257e820b0bb4fa0f
[ROCm/clr commit: a19b767e8a]
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]
This reverts commit 1ab7f22334 due to QMCPack test failure (SWDEV-335826)
Change-Id: I40397b345aa60f43afc17853bc72426daf385cf7
[ROCm/clr commit: 84c46047e5]
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]
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]