Commit Graph

12238 Commits

Author SHA1 Message Date
German Andryeyev 5ef00cf6e9 Grab the event lock before fetching the last command
Hip applications assume that hipEventRecord called from multiple
threads will contain exactly the last queued command to the stream.

Change-Id: I1da3259f143d7670d0870d9a47c08e32336b2222
2020-07-20 02:01:16 -04:00
Tao Sang 56443c2c3d Let rocclr decide numa dependence
Change-Id: Idaf8ab1d0563ac39c352219a6dacf95745bdc6b0
2020-07-19 23:29:59 -04:00
Chauncey Hui 92cdd43a28 SWDEV-2 - Change OpenCL version number from 3179 to 3180 2020-07-18 03:00:03 -04:00
Ashutosh Mishra 7d3d8c8e6d Adapting to static libaray changes for hipcc
Since the introduction of BUILD_SHARED_LIBS there is only one target created : libamdhip64
Which is static ( libamdhip64.a ) or Dynamic ( libamdhip64.so ) depending on whichever it is
being compiled for. After this change we do not have any target libamdhip64_static which is
mentioned in the hipcc for linking. Hence cleaning the same.

Change-Id: Ia45c145e17b111b3f6a32299a11962b10f1cc539
2020-07-17 14:42:07 -04:00
Payam 2dc41007d7 cleanup warnings
Change-Id: I3715fe6aa540c5a40fe2aa324c9fbeab1e67f717
2020-07-17 14:25:52 -04:00
jujiang 50b299da66 SWDEV-243933-update HIP README document
Change-Id: Ie303698ae92c7fa1b1202c1ee06beda1005ba065
2020-07-17 12:26:05 -04:00
Christophe Paquot a838e6e108 Remove use of setLastQueuedCommand
Change-Id: I07bf54dc09905d9a17b059a476df9282eb6f1f51
2020-07-17 11:45:25 -04:00
Chauncey Hui 0c84ce5608 SWDEV-2 - Change OpenCL version number from 3178 to 3179 2020-07-17 03:00:03 -04:00
Matt Arsenault 2f3e9afab7 Fix windows build
Change-Id: I0c5fff636ec43d5c1daf888457f77ef214a29566
2020-07-16 17:08:22 -04:00
Payam 94e623181b clean up warnings
Change-Id: I5421ab90234278920e6080599bb40ffcb3eaa04d
2020-07-16 09:36:26 -04:00
Chauncey Hui dfd78a65f2 SWDEV-2 - Change OpenCL version number from 3177 to 3178 2020-07-16 03:00:03 -04:00
Evgeny 49091c2463 cleanup: unneeded '\'
Change-Id: I0276312fdb0e4829d678de4281ccfd12eb7f232e
2020-07-16 01:57:07 -05:00
Ashutosh Mishra a77c7e21be 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
2020-07-16 00:29:14 -04:00
Matt Arsenault dabda131bd Correct total size of Semaphore to be 64
Change-Id: I20db76eab06fc8a0b3869348c537e7303dfa6466
2020-07-15 16:51:19 -04:00
Matt Arsenault 5577eabcea Fix -Wmissing-braces
Change-Id: I2394b6923c789f36e72242f4b196844cc0ee90ba
2020-07-15 16:51:03 -04:00
Jason Tang 5e0bb5bd39 SWDEV-244000 - Print freeMem_ for memory accounting
Change-Id: I5bbce213236a109e9aa69766d2d4d370b58d0d08
2020-07-15 13:44:05 -04:00
German Andryeyev af1c4a5794 Disable sysmem alloc for SVM memory
Device backend is responsible for memory allocation, including
possible HMM support.

Change-Id: I0e4e5ae3b9551790f4f85f0791cca63196cc896e
2020-07-15 12:04:23 -04:00
Payam 55b5f5f06c Reset each thread's affinity to all avilable cpus
reset happens at the start of the thread  SWDEV-240685

Change-Id: I6c35473bab67d02f76a8013ab9394f293c6f2b07
2020-07-15 09:41:50 -04:00
Payam 47088fea0d Adding new macro for HIP using ClPrint
calculates duration of a call

Change-Id: I7cca673f6dabc618ec543e3bd6c5102aa76edc3a
2020-07-15 09:40:59 -04:00
Chauncey Hui 1e349179e2 SWDEV-2 - Change OpenCL version number from 3176 to 3177 2020-07-15 03:00:04 -04:00
Sudheer Kumar 7d77902198 [dtest] Enhanced tests to cover multiple hipmemset and hipmemsetAsync apis
SWDEV-238517 for enhancing hip unit tests

Change-Id: Iba2c419a4487955f34b4f19abe174ef427d289d8
2020-07-15 01:13:07 -04:00
sushantkumar14 fe3cd6ca27 [dtest] Half2 comparison related tests
Tests heq2, hne2, hle2, hge2, hlt2, hgt2 APIs for functionality
and NaN tests

SWDEV-238517 for enhancing hip unit tests

Change-Id: I88a9a8ead0d00a1261f3d650361d655f2f397e48
2020-07-14 23:53:55 -04:00
Christophe Paquot 3d15a1e291 Make append and setLastQueuedCommand atomic
Two threads can enqueue to the same HostQueue (HostQueue::enqueue)
and result in last queued command being the first one reachine queue_.enqueue

NOTE: Temporarly make setLastQueuedCommand empty function to pass the build

Change-Id: Id09c3a28d184986f52b2ec86a2f6a18c40df1f0b
2020-07-14 18:22:45 -04:00
mshivama 1c5537dde4 Add support for few CUDA compatible reduction operations like __syncthreads_count()
Change-Id: I0917820058f0edad5c0bdd42dea37f06353fc63c
2020-07-14 12:03:14 -04:00
Sarbojit Sarkar 9ba3732180 host pointer check [SWDEV-243104, SWDEV-243206]
Change-Id: Id58dabfe5c35e5f8e42d224e700a431a4a97d003
2020-07-14 07:16:12 -04:00
kjayapra-amd 6be6cd9ebd SWDEV-240165 - Adding a simple test for IPC memory.
Change-Id: Ib33ac20412cafa779fe20ff4df8a76dc22d50421
2020-07-13 10:29:04 -04:00
Chauncey Hui 453ea922a7 SWDEV-2 - Change OpenCL version number from 3175 to 3176 2020-07-12 03:00:03 -04:00
Tao Sang 19d6a646bb Implement HIP_ENABLE_DEFERRED_LOADING in right way
Change-Id: Ia28dbdea5cde93b3ca69f44c6a3c18ec8a730d42
2020-07-11 18:14:03 -04:00
Tao Sang 4d67856bed Support static lib of comgr
Add "BUILD_SHARED_LIBS" flag to cmake file.
To build libamdhip64.so, you don't need change cmake cmd.
To build libamdhip64.a, you need append
   -DBUILD_SHARED_LIBS=OFF
to cmake cmd.

Change-Id: Ibc30ed52963314b2b8cc1df73c360fc1ba15780a
2020-07-11 09:41:03 -04:00
Chauncey Hui d37d1fe0a4 SWDEV-2 - Change OpenCL version number from 3174 to 3175 2020-07-11 03:00:03 -04:00
kjayapra-amd e993bf9f47 SWDEV-243423 - Avoid repeated metadata processing if the unbundled binary_ptr is same.
Change-Id: I71e008021b728dec61187d9ff29483ad8c4cad5c
2020-07-10 10:35:16 -04:00
Chauncey Hui 9ed1767c02 SWDEV-2 - Change OpenCL version number from 3173 to 3174 2020-07-10 03:00:04 -04:00
agodavar de31b341d2 SWDEV-242592:Remove define of UndefinedVars in setKernels
Change-Id: I51b0c5ac6c4cb2564a53f7c45fdf8a893a5edbd3
2020-07-09 23:15:31 -04:00
kjayapra-amd ff36244b9c SWDEV-240165 - Move all amd::MemObjMap_ reference to ROCclr and only allow base ptr to get ipc handle.
Change-Id: I4f11e56ba455a7ce5a066c0e9e49657c5220a211
2020-07-09 21:19:50 -04:00
kjayapra-amd 16e6b65b5c SWDEV-240165 - Move all amd::MemObjMap_ reference to ROCclr and only allow base ptr to get ipc handle.
Change-Id: I9de10a0c4ba4dee3b3c8b972966840ab807001d8
2020-07-09 21:19:45 -04:00
Pruthvi Madugundu b88a313eff Adding support for multiple icd files specific to ROCm version
- amdocl64.icd is renamed to amdocl64_<ROCM_PATCH_VERSION>.icd
- This will enable support for multiple icd for different versions of
  ROCm

Signed-off-by: Pruthvi Madugundu <pruthvi.madugundu@amd.com>
Change-Id: I8031b19f8579507ffb6727dedcd2e3fbb4e45de8
2020-07-09 18:04:18 -07:00
German Andryeyev ef75a3c1db 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
2020-07-09 10:56:33 -04:00
sushantkumar14 2dc42154c4 [dtest] Added hipStreamGetPriority API test
SWDEV-238517 for enhancing hip unit tests

Change-Id: Icff175360815ba6e25a6954a67947b65caff3711
2020-07-09 01:59:44 -04:00
jujiang b90f3732ea SWDEV-242207-Update deprecated APIs
Change-Id: I0c1c7f33f75232b210495241d0e5e7e6b90d45f0
2020-07-08 15:23:52 -04:00
jujiang e73e0d2fb3 SWDEV-241903-Add document HIP_logging.md
Change-Id: I348218218b305e845b7e26afaeb4e287bf0387de
2020-07-08 11:19:33 -04:00
Chauncey Hui 1b69c85913 SWDEV-2 - Change OpenCL version number from 3172 to 3173 2020-07-08 03:00:03 -04:00
Rahul Garg 27002fd792 Bump version to 3.7
Change-Id: Id077c317573e95833c8bc7f16951df776de2a273
2020-07-08 01:54:05 -04:00
Jatin Chaudhary cd1e364911 Replacing deprecated HSA API calls with newer ones
Change-Id: Iebe2c00e717ab0e47c61611752b717966c719994
2020-07-08 00:32:24 -04:00
Aryan Salmanpour 4a901f3dd3 Always print error message with the returned error code before abort
Change-Id: I8479abc586937a50c90b2785c4ce7364e6e9732b
2020-07-07 16:28:30 -04:00
Aryan Salmanpour 8f862becd0 add an error message before aborting if a wrong GPU target was used for compilation
Change-Id: I7b41e93d420dbc47978238a681f2956a0def01cb
2020-07-07 14:50:44 -04:00
Chauncey Hui 5c2e64a43c SWDEV-2 - Change OpenCL version number from 3171 to 3172 2020-07-07 03:00:03 -04:00
Lakhan singh Thakur 18f8b15523 [dtest] Enhancing hipStreamAddCallback() api test
-Scenario-1:: This test case is used to verify if the callback function
              called through  hipStreamAddCallback() api completes the
	      execution in order as hipStreamAddCallback() api queued
	      in their respective streams: hipStreamACb_AltEnqueue.cpp
-Scenario-2:: This test case tests if Host thread continues with next
              command after hipStreamAddCallback() api or wait for
	      callback() call to finish. Ideally Host thread should not
              wait for callback to
              finish: hipStreamACb_ThrdBehaviour.cpp
-Scenario-3:: Streams are launched in individual GPUs with different
              kernel Verify that all the kernels queued are executed
	      before the callback is hit: hipStreamACb_MStrm_Mgpu.cpp
-Scenario-4:: Checks the callback execution in the same order it was
              added. Also, it checks if the number of callbacks
	      executed are same as the number of callbacks added:
	      hipStreamACb_order.cpp
-Scenario-5:: This test case checks whether hipStreamSynchronize() is
              taking less time than the time taken by Callback()
	      function launched by hipStreamAddCallback() api :
	      hipStreamACb_StrmSyncTiming.cpp
-Scenario-6:: This test case is used to check if the runtime is ok when
              hipStreamAddCallback() is called back to back multiple
	      calls: hipStreamACb_MultiCalls.cpp
-Scenario-7:: This test case is used to check the behaviour of HIP when
              multiple hipStreaAddCallback() are called over multiple
	      Threads:hipStreamACb_MultiThread.cpp
              (Currently disabled)

SWDEV-238517 for enhancing hip unit tests

Change-Id: I9c7b7df6766c728b2b201df18726b9fbdd434c06
2020-07-07 00:43:32 -04:00
Tao Sang f7bf882981 Fix static lib crash by setting top init_priority
Set top init_priority on affecting global variables so that
they will be created firstly and destroyed lastly.

Change-Id: Ied59fbecab66ba8195c4a7a02b6bef9fa2fad3af
2020-07-06 16:54:10 -04:00
Vlad Sytchenko 3be244fb34 Add ability to run each ocltst test individually
Now one can run a single test by invoking `make test.ocltst.${module_name}.${test_name}`. Invoking `make test.ocltst.${module_name}` will still run all of the modules tests.

Change-Id: I31b384576cb09800e580e41c12528a276899b6c2
Signed-off-by: Vlad Sytchenko <Vladislav.Sytchenko@amd.com>
2020-07-06 15:56:46 -04:00
Michael LIAO b39195b639 [hipcc] Only add -x hip on HIP-Clang compilation.
Change-Id: I19704c713ad00f92196d7586498e62f80b8cd177
2020-07-06 15:16:51 -04:00