Hip applications assume that hipEventRecord called from multiple
threads will contain exactly the last queued command to the stream.
Change-Id: I1da3259f143d7670d0870d9a47c08e32336b2222
JIRA : SWDEV-234471
With this change compilation of the ibamdhip64 to be decied by arguments to build_hip_on_rocclr.sh file
build_hip_on_rocclr.sh -r (current) shall conitnue to create libamdhip64.so;
build_hip_on_rocclr.sh -r a (new) shall create libamdhip64.a
other options remain the same
Changed the targets according to requirement of stage2 dependencies.
Changed find_lib with find_package
Adpated the review comments
Change-Id: I719918f73ab33cd8031a32db6fe9b8adaa1b4b87
Host memory allocations use shared device context, which allows
to have access from any device. That breaks default queue detection.
Change-Id: I27ad1234d49ab0ea8f5edd6f2e3ffa93c47d4b1f
hipChannelFormatDesc contains size of each channel in bits. There's 8 bits per byte, not 4, so we should divide by 8.
Change-Id: I38ae2d28ad54740823c98908ca2afecad0ba0183
Similar to http://gerrit-git.amd.com/c/compute/ec/vdi/+/375385, except no -Wno-strict-aliasing.
With this change only two warnings show up during the build - -Wsign-compare and -Wmisleading-indentation.
Change-Id: Iffa436c65ab6312aeaa6def71ee6af38ed1b4a4e
exposing the following hip APIs which have been previously implemented:
hipMemcpy2DFromArray
hipMemcpy2DFromArrayAsync
hipMemcpyAtoH
hipMemcpyHtoA
hipMemcpyParam2DAsync
Change-Id: I3f8635bd4265d2bf5aa2084f4eabb51f74fb18ba
The hipOccupancyMaxPotentialBlockSize API is meant to return the
number of threads for the highest-occupancy workgroup, and the number
of those workgroups. It was previously calculating the number of
maximum-sized workgroups that would fit on a single CU. This is
a mixture of the API we wanted (to calculate max potential block size)
and the MaxBlocksPerMultiprocessor function.
This patch fixes it up so that the internal occupancy calculation
function works for two uses: the traditional function that calculates
the maximum blocks per multiprocessor when a user passes in a fixed
block size (used for hipMaxBlocksPerMultiprocessor style functions)
and a function that calculates the size of a block that would lead
to maximum occupancy, and how many blocks of that size would be
needed to fill the whole GPU (for hipOccupancyMaxPotentialBlockSize
style functions).
This also updates the occupancy calculation function to prepare for
gfx10, which does not have SGPR-based occupancy limits.
Change-Id: Ie007b3f9d5ebc4e166b50a3a051498af35650f35
SWDEV-237377 - This fixes time calculation where the event may
be recorded on Null stream and work submitted on other streams
Change-Id: Ie36310dea5cee2fed4a514ed01f04db4b47e571c