Commit Graph

13474 Commits

Author SHA1 Message Date
Aaron En Ye Shi 9c873353cc SWDEV-283266 - Add hiprtc option to generate preprocessor expansion
Add -r/--generate_rtc option to hip_embed_pch.sh to generate the
preprocessor expansion output of the HIP headers for hipRTC mode.
Generates an object hiprtc_header.o and shared library libhiprtc.so
which can be used for hipRTC online compilations. Enable
__HIP_ENABLE_RTC by default in the CMake files.

Change-Id: Ief51b695c9b31941d929e06f16872f95eea3619b
2021-05-14 10:20:38 -04:00
Chauncey Hui a2f6bf8522 SWDEV-2 - Change OpenCL version number from 3307 to 3308 2021-05-14 03:00:07 -04:00
Jason Tang f2a077f62f SWDEV-277566 - Only build kernelNames_ when requested.
Currently only clGetProgramInfo/CL_PROGRAM_KERNEL_NAMES requests it.

Change-Id: I38be16999ac2f631850fb5e07eeae54bfbe161ad
2021-05-13 15:07:50 -04:00
Saleel Kudchadker e5e635f9bf SWDEV-283726 - Workaround for rocprof hang
This addresses the rocprof hang seen with direct dispatch. The
workaround queues the handler back if any of the signal value in the batch
is not decremented. To rememmber the last position in the list, we save
the parsed command in the current timestamp struct.

Change-Id: I02959e463cfe3cee83c54808ffd6e6f48f43b4e8
2021-05-13 11:58:03 -04:00
Jason Tang 211ba25b4e SWDEV-277566 - Separate code object loading from building
Change-Id: I87b8178f55e8ef23762dfe11fab71665ba680f00
2021-05-13 08:41:35 -04:00
Chauncey Hui 509f528980 SWDEV-2 - Change OpenCL version number from 3306 to 3307 2021-05-13 03:00:06 -04:00
German Andryeyev 1b82ff6678 SWDEV-286150 - Fix compilation with PAL_GPUOPEN_OCL disabled
Change-Id: If6d77ecce7395023db4aa9cb1ff494bc64cb1f17
2021-05-12 22:48:45 -04:00
Saleel Kudchadker 7b88ba5b57 SWDEV-283726 - Indicate profiler attached
Set profiler attached flag in VirtualGPU to inform ROCclr of it

Change-Id: I776c9fcd762cf02f3ce0f3c386d02384a224126c
2021-05-12 13:40:47 -07:00
Chauncey Hui cb09d0448e SWDEV-2 - Change OpenCL version number from 3305 to 3306 2021-05-12 03:00:06 -04:00
Sourabh Betigeri 66b9a34f06 SWDEV-282354 - Some AMD GPUs cause clock64() to roll over faster, this changeset prevents infinite loops due to that.
Change-Id: I19d026073afa16104ffbee4705b74d37003a04d9
2021-05-11 20:40:23 -04:00
Sourabh Betigeri ddff87b413 SWDEV-281034 - Occupancy calculations for gfx10.3 adjustments based on available VGPRs, SIMDs per CU and number of waves per SIMD.
Change-Id: I0e34decebc9f730fe0e0c3c3258f301de5748e72
2021-05-11 20:39:49 -04:00
Saleel Kudchadker df5b6cf202 SWDEV-280773 - Log affinity reset
Change-Id: I101c14174097d262d5d5b924cb31a69483a49c04
2021-05-11 15:52:55 -07:00
Saleel Kudchadker 1398719b0d SWDEV-280773 - Honor CPU affinity with env var
Setting AMD_CPU_AFFINITY = 1 will make runtime honor core affinity that
the process may set. This is disabled by default as it can prevent
worker thread or any thread that runtime creates from getting scheduled
thus affecting performance.

Change-Id: Ibe4cc95e7b99caee5ce750b7bf66e09e999cc9a3
2021-05-11 18:21:56 -04:00
Vladislav Sytchenko bbe6246f19 SWDEV-273235 - Windows PAL/LC fixes
HIP should be built with HSAIL support disabled.

Currently HSAILProgram::info() and VirtualGPU::buildKernelInfo() expose
ACL interfaces directly. This should not be allowed.

Change-Id: Iae15d4f19be16806826f2f6cb600752c11f97fc1
2021-05-11 17:41:09 -04:00
Vladislav Sytchenko 20eff6c298 SWDEV-273235 - Fix HIP PCH build
hip_rtc.cpp refers to the symbol __hipGetPCH(), but that one can only be
found in hip_global.cpp. It's not referenced anywhere else, hence it
should be moved.

Change-Id: Ifc67b2f3b1b8344dec0e6c30d083d62288fb5e24
2021-05-11 17:40:32 -04:00
Julia Jiang c68bff088b SWDEV-282350 - Add managed memory support in HIP document
Change-Id: Iea4479058b4c40c36d71c9302834396a4088ac6f
2021-05-11 16:04:46 -04:00
pghafari ccff5216f0 SWDEV-245532 - HIP - Vulkan interop semaphores
Change-Id: I89be5ee84d4728d76e1987d5016c944c0dbc9a96
2021-05-11 11:44:59 -04:00
Jason Tang 744dfa6d9d SWDEV-277566 - Add amd::Program::load interface
Change-Id: Iba32fd6add7b1c51b33a9ea899732044c0a064f6
2021-05-11 10:51:45 -04:00
Brian Sumner c44c866cf6 SWDEV-285332 - add hostcall service to allocate and deallocate device...
Change-Id: Ia63c1d9bc65367837a5161c09d274c51aead8f8d
2021-05-11 07:30:37 -07:00
Vladislav Sytchenko 0782883cb3 SWDEV-240806 - Fix Windows build
hipGraphAddHostNode and hipGraphAddMemcpyNode1D are not part of the HIP
graph implementation, hence they should not be exported.

Change-Id: Ia3d0188895fb4f64ebfa23d4a0a09c44438f878d
2021-05-11 10:07:49 -04:00
Chauncey Hui c2e31fa8cb SWDEV-2 - Change OpenCL version number from 3304 to 3305 2021-05-11 03:00:09 -04:00
Jason Tang b423c699a6 SWDEV-277566 - Use amd::Program::load interface
Change-Id: I0c19d4efcc09709b8aced6fa63e6deae39f58abb
2021-05-10 16:46:03 -04:00
German Andryeyev 5d8cafef2d SWDEV-240804 - HMM changes
- Accept hipMemAttachHost flag
- Don't allocate HMM memory if HMM is disabled in KFD

Change-Id: I3d386eb0a109a19c16a87a728944a3a6669f643a
2021-05-10 13:50:21 -04:00
Aaron En Ye Shi 688693e9fd SWDEV-283266 - __HIPCC_RTC__ macro added to HIP headers
For hipRTC on Windows, add macro __HIPCC_RTC__ to allow
online compilation of with device functions excluding standard
C/C++ headers, system headers, and host HIP APIs.

Change-Id: I1d91f042baf1359856ec83ab7030dc58785e0334
2021-05-10 17:28:07 +00:00
Julia Jiang 381503211a SWDEV-272921 - Remove non-existing link for square sample
Change-Id: If8c87a6ded6aacaa4301b1b80ee218897219a6fb
2021-05-10 12:09:28 -04:00
Brian Sumner 6d09a83b2d SWDEV-285332 - move common context into parent
Change-Id: I99ceb62ad948e1fa9d1dcaa5ede98626cc95bea7
2021-05-09 09:18:39 -07:00
Chauncey Hui 01722818d0 SWDEV-2 - Change OpenCL version number from 3303 to 3304 2021-05-08 03:00:05 -04:00
Anusha Godavarthy Surya 8cc0e04239 SWDEV-240806 - Initial commit for hipGraph and stream capture infrastructure
On StreamBegincapture captures the parameters passed to APIs and respective node will be created and added to graph
All parameters are passed to STREAM_CAPTURE macro, it checks if stream in capture mode and redirects the call to the capture function and returns
Updated hipStream and hipEvent with capture parameters
Added handling for hipStreamBeginCapture & hipStreamEndCapture

Change-Id: Ic8926a7b4336c2cc81f0b3a9a224aa392c474134
2021-05-07 17:38:16 -04:00
Jason Tang b2116c2137 SWDEV-277566 - Add amd::Program::load interface
Skeleton implementation to allow change at HIP and OpenCL.

Change-Id: I70e69d33c6870cc96238b2f18010ace86d56147f
2021-05-07 17:07:15 -04:00
Ravi C Akkenapally 44ac926b08 SWDEV-281998 - TEST: StreamOperations : Split StreamWait and Update into two seperate threads
Change-Id: I0fda25857dd9f097f36ce1bafedb7689ca2beecc
2021-05-07 11:11:28 -07:00
Julia Jiang 8f38d6f496 SWDEV-282350 - update HIP documents
Change-Id: Iff3a49e75279b1ecee0672a6d35f6b84a8256296
2021-05-07 12:38:13 -04:00
Chauncey Hui 6feda9e15c SWDEV-2 - Change OpenCL version number from 3302 to 3303 2021-05-07 03:00:08 -04:00
Maneesh Gupta 055a460f12 SWDEV-252801 - Fail if launch params exceeds launch_bounds
Change-Id: I90c8d0f1897ca63f00c3eec7c99d649a5c43416d
2021-05-06 22:38:50 -07:00
German Andryeyev df9de9a312 SWDEV-272496 - disable direct dispatch by default
Change-Id: I706387355add75852c570be2656131ef99e8958c
2021-05-06 16:17:26 -04:00
Vladislav Sytchenko ff3f6b2575 SWDEV-273235 - Allow explicitly disabling LF support
Currently LiquidFlash cannot be supported from Github Enterprise,
hence we need to be able to build with out it.

Allow this by setting -DWITH_LIQUID_FLASH=0.

Change-Id: If59afe45c02a1623639360dbcc3927360f16ebd3
2021-05-06 13:05:12 -04:00
Julia Jiang e65317fd56 SWDEV-282350 - Adding hip_debugging
Change-Id: I18f52a76f88bcd3a0628030a6798d546a3973f4d
2021-05-06 11:48:52 -04:00
Vladislav Sytchenko ece83262de SWDEV-273235 - Minor build fixes for Windows CMake
Change-Id: Ia0631c8d6c2a58526b9938cfd141cbe64437f8fb
2021-05-05 14:32:47 -04:00
Vladislav Sytchenko 7034e749e3 SWDEV-273235 - Allow explicitly disabling LF support
Currently LiquidFlash cannot be supported from Github Enterprise,
hence we need to be able to build with out it.

Allow this by setting -DWITH_LIQUID_FLASH=0.

Change-Id: I975e8ee16b7ba033e3eb95fe40955d8c1d4779b7
2021-05-05 14:32:30 -04:00
Vladislav Sytchenko 8af3f12790 SWDEV-273235 - Allow explicitly disabling LF support
Currently LiquidFlash cannot be supported from Github Enterprise,
hence we need to be able to build with out it.

Allow this by setting -DWITH_LIQUID_FLASH=0.

Change-Id: I8f147b5d52ca1c8203000beea8f16b2699548dc3
2021-05-05 12:43:59 -04:00
Vladislav Sytchenko 4127be5c63 SWDEV-273235 - Remove implicit dependancy on WGL
Change-Id: I8355587be50492767caa3d2a4e602bdd6eb73960
2021-05-05 12:42:35 -04:00
Vladislav Sytchenko 5958b3bba5 SWDEV-273235 - Minor build fixes for Windows CMake
runtime directory only exists in P4. We should not be referencing it.

Change-Id: I1d88f32fccc716468c070235c4797bd905a76866
2021-05-05 12:40:26 -04:00
Vladislav Sytchenko 7fd1e9c10a SWDEV-280473 - Remove dependancy on internal ACL API
aclutGetTargetInfo() is an internal compiler lib helper functions. This
will not be imported in the HSAIL shared library build, however it is
simple enough that we can maintain our own local copy of it.

Change-Id: I91d1a336c7da027bf8a7df8fae86a25add533611
2021-05-05 12:19:52 -04:00
Anusha GodavarthySurya e9cc056d25 SWDEV-271978 - Function __byte_perm to match CUDA behavior
Selector indices are as follows (the upper 16-bits of the selector are not used): selector[0] = s<2:0> selector[1] = s<6:4> selector[2] = s<10:8> selector[3] = s<14:12>

Change-Id: Ibf76c6ec2374f1f5b9bba8bd9dbd73660f830eea
2021-05-05 03:00:32 -04:00
Chauncey Hui 34ccb004df SWDEV-2 - Change OpenCL version number from 3301 to 3302 2021-05-04 03:00:05 -04:00
Christophe Paquot f665936fe1 SWDEV-270599 - Refactored the way we get time from start/stop events in all cases
Change-Id: Id3f9bcad45d643e493daf9d5f47b3a032a427177
2021-05-03 13:16:36 -07:00
Saleel Kudchadker 42b8236f93 SWDEV-280773 - Additional logging for signals
Cleanup new lines in debug log

Change-Id: I6862c332eb9457b51e23cf4e9db9ba3f870d0c39
2021-04-30 15:05:57 -07:00
Aaron En Ye Shi bacb89c086 SWDEV-283930 - Fix bugs in HIP Tests on Windows
Windows doesn't have headers unistd.h, sys/wait.h, so
remove them for _WIN64. Also, Windows doesn't have rand_r
so define it. Fixes builds for HIP tests:
d2dMemCpyWithPinnedHostMemory, hipMemset3DFunctional,
hipModuleLoadMultProcessOnMultGPU,
hipModuleLoadUnloadStress, hipModuleNegative,
hipStreamACb_ThrdBehaviour, hipMemcpyNegativeMThrdMSize,
hipStreamACb_MStrm_Mgpu, StreamAddCallback,
hipStreamACb_StrmSyncTiming, hipStreamACb_MultiCalls,
hipMallocConcurrency, hipMemset3DRegressMultiThread,
and hipSetGetDevice.

Change-Id: Id2f98d664716026c590d879e464ba467d4c071be
2021-04-30 21:38:45 +00:00
kjayapra-amd 31d412c292 SWDEV-245533 - Implementing Mipmap array APIs
Change-Id: I222c8d0fcbd50cdefd702462e689463bb36366d2
2021-04-30 16:33:43 -04:00
agodavar a2d4487cc6 SWDEV-283897 - SWDEV-283901 - Fix directed and performance test failure
Change-Id: Ia0e9ab5d172802403af7bf6568f985b82e799baf
2021-04-30 17:56:44 +00:00
Jatin Chaudhary 7941dedc45 SWDEV-283959 - Make hipcc recognize -xc -xc++ -xhip options and add CXX flags when user mentiones filetype as -x hip
Change-Id: I737fba3db77eef21eb88ccf648b4134218249456
2021-04-30 04:58:07 -04:00