Commit Graph

90 Commits

Author SHA1 Message Date
Evgeny 5b974209a0 cleanup: unneeded '\'
Change-Id: I0276312fdb0e4829d678de4281ccfd12eb7f232e


[ROCm/clr commit: 49091c2463]
2020-07-16 01:57:07 -05:00
Ashutosh Mishra beda35b8af Adding "BUILD_SHARED_LIBS" flag to cmake files
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


[ROCm/clr commit: a77c7e21be]
2020-07-16 00:29:14 -04:00
Sarbojit Sarkar a4c135ec8a host pointer check [SWDEV-243104, SWDEV-243206]
Change-Id: Id58dabfe5c35e5f8e42d224e700a431a4a97d003


[ROCm/clr commit: 9ba3732180]
2020-07-14 07:16:12 -04:00
Tao Sang 5225aff583 Implement HIP_ENABLE_DEFERRED_LOADING in right way
Change-Id: Ia28dbdea5cde93b3ca69f44c6a3c18ec8a730d42


[ROCm/clr commit: 19d6a646bb]
2020-07-11 18:14:03 -04:00
kjayapra-amd 28b5e13757 SWDEV-240165 - Move all amd::MemObjMap_ reference to ROCclr and only allow base ptr to get ipc handle.
Change-Id: I4f11e56ba455a7ce5a066c0e9e49657c5220a211


[ROCm/clr commit: ff36244b9c]
2020-07-09 21:19:50 -04:00
German Andryeyev 7fea66c9e9 Host device context should return a valid queue
Host memory allocations use shared device context, which allows
to have access from any device. That breaks default queue detection.

Change-Id: I27ad1234d49ab0ea8f5edd6f2e3ffa93c47d4b1f


[ROCm/clr commit: ef75a3c1db]
2020-07-09 10:56:33 -04:00
Aryan Salmanpour c69f88fe04 add an error message before aborting if a wrong GPU target was used for compilation
Change-Id: I7b41e93d420dbc47978238a681f2956a0def01cb


[ROCm/clr commit: 8f862becd0]
2020-07-07 14:50:44 -04:00
Jatin Chaudhary 718c7142d0 Fix error: cannot pass object of non-trivial type string through variadic function when building in debug mode
Change-Id: Idd55ed422addc815fb56c57b05bd4afa9563f2ac


[ROCm/clr commit: 3173dbdec0]
2020-07-06 00:48:40 -04:00
kjayapra-amd 5cf8c4331b SWDEV-236178 - Fixing func_attributes that was over written on redesign.
Change-Id: I157913ae4fa4a3a149817e901f10475b7750188b


[ROCm/clr commit: 2f963728f7]
2020-07-01 11:52:45 -04:00
German Andryeyev f2464edb74 Remove hipMemcpyDeviceToDevice check.
There is hipMemcpyDefault that requires validation also.

Change-Id: I5ae0ffa1c023b7774547acbdc049b84a0c2cb4c5


[ROCm/clr commit: 11b7842f71]
2020-06-30 12:59:54 -04:00
Evgeny 790d14d84b HIP-PROF: fixing pointers tracing
Change-Id: Id2c35972e1d134012980c95a3649ddfdf9303494


[ROCm/clr commit: c148adf362]
2020-06-23 14:02:35 -04:00
agodavar 4644558c2b SWDEV-239297:hipMemset fix, getMemoryObject with unaligned ptr
Change-Id: I37b8139c5099d37b42f34d728a3d694fdf9cb55d


[ROCm/clr commit: 6a47458764]
2020-06-23 08:56:09 -04:00
German Andryeyev 0dd2e2b010 Disable flush on marker
Change-Id: I04d0fd995fb4b29a6bc372e1543902a053017d6a


[ROCm/clr commit: 265d84bab9]
2020-06-22 13:27:39 -04:00
Tao Sang 3113312e03 Fix static lib crashing issue
Initialize HIP_ENABLE_DEFERRED_LOADING = 1

Change-Id: I432ccf1926b953c4391fdd086cde7da2380962bb


[ROCm/clr commit: d536a661ac]
2020-06-22 13:24:40 -04:00
Tao Sang b702f41277 Support numa policy set by user
Add hipHostMallocNumaUser flag to hipHostMalloc() in order to support
numa policy set by user.

Change-Id: I6d70ed539a5f97f27187f2242b68849c0e27e4d6


[ROCm/clr commit: 71c64e98a0]
2020-06-19 21:23:58 -04:00
Vlad Sytchenko 02641f4f43 Correct texture element size calculations
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


[ROCm/clr commit: 81b15ed36e]
2020-06-19 11:39:03 -04:00
Vlad Sytchenko 0a3e99aa14 Support creating textures from user ptr with offset
Change-Id: Ied0af9a842fc6ef067e068a9d89dde63ff5dfce1


[ROCm/clr commit: ba2d3fbbb3]
2020-06-17 14:10:14 -04:00
Vlad Sytchenko 7a902e0788 Fix -Wsign-compare warnings
Change-Id: I874dc007ac657c25a72c6752c1a2da74c028a822


[ROCm/clr commit: 8db45328d9]
2020-06-17 11:20:45 -04:00
Jason Tang ab081f39cc Add asicRevision
Change-Id: I59f3ad20b9bdadf77bd1e0725f7a401d7ad423a3


[ROCm/clr commit: 8933c078f6]
2020-06-16 17:54:20 -04:00
Tao Sang 315cd2f959 Make hipHostMalloc() respect hipSetDevice()
Change-Id: I2410240f91b108c24597ee0fa7cf31e7b1f3ac5d


[ROCm/clr commit: 63ce69224a]
2020-06-15 23:20:09 -04:00
kjayapra-amd b079478641 SWDEV-240589 - Remove guarantee @ __hipRegisterFunction flow for now.
Change-Id: Ic51e2a1f951ac7745c2bbd11cfd2b92521c6966a


[ROCm/clr commit: 2467e37f3f]
2020-06-15 22:32:24 -04:00
Vlad Sytchenko e5f959ce02 Enable the use of some warnings when building HIP-ROCclr
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


[ROCm/clr commit: 509a38f50c]
2020-06-15 20:33:30 -04:00
German Andryeyev 17bf7b0138 Initial support for HIP managed memory
- Call the new ROCclr interfaces for HMM

Change-Id: I2cd1bf438f712a9e9e328340e7d0c025257ca6c1


[ROCm/clr commit: b182ad9574]
2020-06-15 18:10:41 -04:00
Aryan Salmanpour c60c625688 expose five missing memcpy hip APIs
exposing the following hip APIs which have been previously implemented:

hipMemcpy2DFromArray
hipMemcpy2DFromArrayAsync
hipMemcpyAtoH
hipMemcpyHtoA
hipMemcpyParam2DAsync

Change-Id: I3f8635bd4265d2bf5aa2084f4eabb51f74fb18ba


[ROCm/clr commit: 02c62165b8]
2020-06-15 12:30:31 -04:00
kjayapra-amd 1ed6d978a8 SWDEV-236178 - Store texture reference metadata for dynamically loaded modules.
Change-Id: I99ecc80da7e29c691341a01a09e4532972f1e3e5


[ROCm/clr commit: 0b788c4c67]
2020-06-11 22:34:50 -04:00
kjayapra-amd d6ccf1209c SWDEV-236178 - Reorganizing Platform/Modules code for easy access.
Change-Id: Ie8920260ffc4ff01e44b48af8cec9ea5aed1aa9b


[ROCm/clr commit: 840347f0d0]
2020-06-11 10:11:20 -04:00
jujiang 83c3939c6c Fix for SWDEV-239415 to handle hipGetDevice properly while no GPU present
Change-Id: I252cbbf9a89fc76fe1be1fbb8f45778e96c70fb2


[ROCm/clr commit: bb32492438]
2020-06-10 14:18:56 -04:00
kjayapra-amd 5593475c37 SWDEV-231701 - Remove amd::memory->svm_ptr from MemObj, instead of the ptr to the object.
Change-Id: I5aab450a2320cfa5417c284e2a8454102df6f99d


[ROCm/clr commit: 9ff22151d2]
2020-06-10 11:49:02 -04:00
Christophe Paquot 4206cfddc5 Do not deferred stream creation now that we multiplex HW queues
SWDEV-239856

Change-Id: I156650faf832f86891f00ee167269509edd844ec


[ROCm/clr commit: 20ae4d709f]
2020-06-09 19:16:25 -04:00
Saleel Kudchadker 3f07846c7e Modify HIP_RETURN to print useful details
Change-Id: I23892c2d9a738b0298cdf24106d688a792937c73


[ROCm/clr commit: fbba37070c]
2020-06-06 02:05:21 -04:00
kjayapra-amd edcdf621b9 SWDEV-239327 - Remove amd_mem_obj during unregistervar
Change-Id: I2130eaa21369b9634a9459680061138c61eaaaa4


[ROCm/clr commit: ee2ff4bc5e]
2020-06-05 23:24:38 -04:00
kjayapra-amd db1b21b1fa SWDEV-235295 - Move addDeviceProgram() to lazy loading
Change-Id: I8fe07e370e58844496e18c858bb528393556854f


[ROCm/clr commit: 1dc24194a3]
2020-06-05 18:03:32 -04:00
Jason Tang 7735b228ec SWDEV-227909 - Add gcnArchName
Change-Id: Iea6d16b5d693dd0d900fa424d7a321c39315430e


[ROCm/clr commit: 14c699e9de]
2020-06-05 15:33:55 -04:00
kjayapra-amd 70e90419a9 SWDEV-234295 - Pass flag to ROCclr to not clear device programs during program::build()
Change-Id: I50b9fa1a96da6895f73fdf4a7c0d3f096b1188da


[ROCm/clr commit: 9261a35be9]
2020-06-05 09:53:11 -04:00
Aryan Salmanpour 1c329fee60 Add support for setting hip stream priority
this change follows CUDA convention where lower number is greater priority

Change-Id: I72596a36449e818cbd8c175bf8519c51f46b1610


[ROCm/clr commit: 83b8e1fbac]
2020-06-04 22:50:30 -04:00
Payam 8bdf07bb9c Observed softhang while running hipStreamAddCallbackCatch SWDEV-236746
Workaround hipStream deadlock issue as the same lock was used twice SWDEV-236746

Change-Id: Icc60104ce6edf4cfd2a3a889bab78a6caadd50b7


[ROCm/clr commit: f3ee29cdb2]
2020-06-04 14:11:22 -04:00
Evgeny ecdca97a00 adding hipGetStreamDeviceId() profiling API
Change-Id: I5ccf88ddac123260d7c17defefcf20ff3b2504e2


[ROCm/clr commit: 0c0a8fc108]
2020-06-03 18:57:49 -04:00
Jatin 216873e9c8 Adding changes for hipExtLaunchKernel for rocCLR
Change-Id: Iba52bc3bde7c37f3fb375a55ba0947e87b3cdc9b


[ROCm/clr commit: 126573df4c]
2020-06-02 14:16:41 -04:00
Aryan Salmanpour e4052cd66b Add support for missig hipStreamGetPriority API
Change-Id: I2be4b055e5f977eb6ecad0b1f5f9535e72345fe7


[ROCm/clr commit: bf11ffd175]
2020-06-01 13:33:14 -04:00
agodavar a3feb53a30 hipMemset dont enqueue command if size bytes is 0
Change-Id: I63bf896f9f23edf254acdf7a8c11c92f8b5ac039


[ROCm/clr commit: 3375920638]
2020-05-30 10:33:44 -04:00
kjayapra-amd 776af02dfe SWDEV-229840 - fixing return HIP_RETURN instances in hip.
Change-Id: I48763d7268bf5649bf2242c962c185f5f4af159c


[ROCm/clr commit: ab17b43d45]
2020-05-29 09:43:58 -04:00
Christophe Paquot c5e4607065 Revert "Call notifyCmdQueue when building the event wait list"
This reverts commit df67d8971a.

Reason for revert: better fix in ROCclr

Change-Id: I9707e69adf42a662c08fe9b3ec7458655d838bdd


[ROCm/clr commit: dfec136725]
2020-05-28 17:01:10 -04:00
kjayapra-amd b91ab37e8d SWDEV-233927 - Crash if binary for current device is not found.
Change-Id: I57281ae6c09110f39155664fca5a83ea57bb62b4


[ROCm/clr commit: f2899243f3]
2020-05-28 16:18:27 -04:00
Joseph Greathouse 9b1faa7db0 Fix a build error on signed/unsigned comparison
Change-Id: Ic79eb4c3ec5c6fd36cea7c4810d990619f08b9e1


[ROCm/clr commit: 766e708535]
2020-05-28 14:27:16 -05:00
kjayapra-amd 640559bdcb SWDEV-236465 - Return error code as soon as global creation fails.
Change-Id: I790b8b4fdd6ab8818bc5b6b9a79e6900b840372d


[ROCm/clr commit: 55cdef8e45]
2020-05-28 13:28:23 -04:00
Joseph Greathouse db6de71b54 Fix occupancy calculation functions in ROCclr path
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


[ROCm/clr commit: 90453b68d3]
2020-05-28 10:22:10 -05:00
Evgeny 40f527175f adding hipKernelNameRefByPtr function
Change-Id: Iefc18967b10394b85a207ffdb5bbfe5e3601474d


[ROCm/clr commit: d863edb8ba]
2020-05-28 10:59:48 -04:00
Saleel Kudchadker fd522b44ff Fix elapsed time calculation for null stream
SWDEV-237377 - This fixes time calculation where the event may
be recorded on Null stream and work submitted on other streams

Change-Id: Ie36310dea5cee2fed4a514ed01f04db4b47e571c


[ROCm/clr commit: facb05495f]
2020-05-27 18:42:07 -04:00
Christophe Paquot df67d8971a Call notifyCmdQueue when building the event wait list
SWDEV-237846

Change-Id: I8bf70e7ad19903767a080d8c6e516c83b0dc2545


[ROCm/clr commit: 1cfc9d1860]
2020-05-27 12:53:46 -04:00
Christophe Paquot 20dadcac1e hipDeviceSynchronize needs to sync NonBlocking streams as well
SWDEV-237167

Change-Id: Ie916d8f03ce91e8ef05a2b4edc580a7021520f6f


[ROCm/clr commit: 9611b5a8b4]
2020-05-26 17:59:22 -04:00