Commit Graph

5361 Commits

Author SHA1 Message Date
foreman f695910290 P4 to Git Change 1766349 by michliao@hliao-dev-00-hip.rocm-workspace on 2019/04/05 14:24:45
SWDEV-144570 - Fix pointer attribute query.

	- For memory not registered with runtime, return
	  `hipErrorInvalidValue`. That's the behavior expected to check whether
	  a host buffer is pinned.
	- Return `hipErrorInvalidDevice` in case a registered memory object
	  cannot find its matching device.

	RB: http://ocltc.amd.com/reviews/r/17094/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#51 edit
2019-04-05 14:51:37 -04:00
Evgeny Mankov 3352d7b174 Merge pull request #1003 from acowley/patch-1
hipify: translate cudaErrorInvalidSymbol
2019-04-05 20:21:27 +03:00
David Salinas 4d0dc45078 append the ELF flags for sram-ecc and xnack to the target triple per code object 2019-04-05 13:17:11 -04:00
Evgeny Mankov 4990a1003b [HIPIFY][doc] Fix typos and minor text inaccuracies in HIP FAQ 2019-04-05 19:19:38 +03:00
foreman 7a58581c81 P4 to Git Change 1766264 by cpaquot@cpaquot-ocl-lc-lnx on 2019/04/05 11:38:18
SWDEV-145570 - [HIP] Use a context with all devices in system for host register
	hipHostRegister and hipMemcpy 0x10 and 0x20 fail in mGPU systems because
	we only register the memory on the current device. But in HIP, the registering
	needs to happen on all devices.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_context.cpp#17 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#26 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#50 edit
2019-04-05 11:58:25 -04:00
foreman 54f50c23fc P4 to Git Change 1766115 by cpaquot@cpaquot-ocl-lc-lnx on 2019/04/04 18:29:12
SWDEV-145570 - Don't assert when LOG_LEVEL=3 and return value isn't HIP_SUCCESS.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#25 edit
2019-04-04 18:41:09 -04:00
foreman d0c8e12d00 P4 to Git Change 1766106 by kjayapra@99_HIPWS_SLV_CHECKIN on 2019/04/04 18:07:26
SWDEV-144570 - Implementation of hipMemcpyToSymbol and simillar fns for PAL.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#24 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_module.cpp#22 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#26 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.hpp#23 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#89 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.hpp#37 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#102 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.hpp#46 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.cpp#135 edit
2019-04-04 18:22:40 -04:00
foreman 3b461e01ae P4 to Git Change 1766076 by michliao@hliao-dev-00-hip.rocm-workspace on 2019/04/04 17:35:28
SWDEV-144570 - Fix pointer attribute query.

	- Device should be numbered from zero.

	RB: http://ocltc.amd.com/reviews/r/17090/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#49 edit
2019-04-04 17:50:08 -04:00
Siu Chi Chan b5045af7e9 minor workaround for lazy binding 2019-04-02 17:28:06 -04:00
Anthony Cowley f15dd58a91 hipify: translate cudaErrorInvalidSymbol 2019-04-02 08:54:37 -04:00
Maneesh Gupta 2d9e5615b7 Merge pull request #998 from yxsamliu/doc
hip-clang: update installation guide.
2019-04-02 05:08:18 +00:00
Maneesh Gupta a6e7dfefe3 Merge pull request #997 from yxsamliu/mgpu
hip-clang: fix kernel not found on multi-gpu
2019-04-02 05:07:31 +00:00
Evgeny Mankov 5b59f87305 [HIPIFY][tests] Fix typo in test for CUDA 10.x 2019-04-01 19:52:08 +03:00
Evgeny Mankov 799a6f5512 [HIPIFY][cmake] Update CMakeLists and Readme cause CUDA 10.1 and clang 8.0.0 are released 2019-04-01 19:44:52 +03:00
foreman 6220c5059d P4 to Git Change 1764069 by michliao@hliao-dev-00-hip-workspace on 2019/04/01 11:23:34
SWDEV-144570 - Handle zero-byte memset & memcpy

	- Properly handle zero-byte memset & memcpy by skipping the real stuff.

	RB: http://ocltc.amd.com/reviews/r/17062/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#48 edit
2019-04-01 11:51:06 -04:00
Yaxun Sam Liu 8f5c812a68 hip-clang: fix kernel not found on multi-gpu
__hipRegisterFunction is called during by .init functions during program initialization.
It calls hipModuleGetFunction to locate kernel symbol in code objects. hipModuleGetFunction
assumes current device when locating kernel symbols. This works for HCC but not for hip-clang,
since hip-clang needs to locate kernel symbols for different devices without switching
between devices.

This patch introduces a new hsa agent parameter to ihipModuleGetFunction, which allows
__hipRegisterFunction to choose the correct hsa agent when locating kernel symbols. By
default it uses this_agent(), therefore this patch has no impact on HCC.
2019-03-31 10:08:20 -04:00
Yaxun (Sam) Liu 76a9fdd924 Update INSTALL.md 2019-03-30 08:29:08 -04:00
Yaxun Sam Liu 598604aa7f hip-clang: update installation guide. 2019-03-30 08:24:49 -04:00
Wen-Heng (Jack) Chung 04915cea2f Make hipModuleGetGlobal be in HIP runtime so it can be discovered at runtime (#981)
* Make hipModuleGetGlobal be in HIP runtime so it can be discovered at runtime

In HIP PR #929, quite a few HIP public APIs were made as inline functions with
hidden visibility. It was necessary to support applications with shared
libraries with GPU kernels launched via hipLaunchKernelGGL(), after HIP runtime
is initialized.

In empirical tests, the implementation has been proved to be a bit too
excessive, especially for hipModuleGetGlobal(). The function is used by another
type of client applications which relies on the existence of this function
within HIP runtime so global symbols from HSA code objects loaded dynamically
at runtime can be retrieved programmtically.

This commit moves hipModuleGetGlobal() back to src/hip_module.cpp, and makes it
visible and not inline, to fulfill requirements for applications
aforementioned. It does not change the behavior of applications depending on
hipLaunchKernelGGL().

* Add HIP_INIT_API into the implementation of hipModuleGetGlobal

Address review comments.

* Fix failing HIP unit tests
2019-03-29 03:45:04 +00:00
Maneesh Gupta f9f4cee347 Merge pull request #992 from gargrahul/handle_d2d_memcpy2d
Handle D2D in memcpy2D
2019-03-28 04:41:36 +00:00
Jeff Daily f5e4fff6cc improve program state commentary
Disambiguate calling many varibles "agent".
More detail in exception message.
Create and discard map placeholders; no need to call std::vector::clear() on map value.
2019-03-27 21:40:27 +00:00
Rahul Garg 50d623981e Handle D2D in memcpy2D 2019-03-28 02:21:45 +05:30
Jeff Daily 2845b4c4b8 load program state once per agent 2019-03-27 18:19:10 +00:00
foreman dbb7c04ac1 P4 to Git Change 1762349 by yaxunl@yaxunl-lc10 on 2019/03/27 11:50:12
SWDEV-145570 - Workaround for mismatch of device name and bundle id for gfx906.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#25 edit
2019-03-27 12:53:17 -04:00
Maneesh Gupta 93906a072c Merge pull request #987 from gargrahul/fix_hostmalloc_double_device_map
Avoid double mapping of devices to hostMalloc buffer
2019-03-27 05:23:47 +00:00
Maneesh Gupta 178e3ecdca Merge pull request #990 from mhbliao/hliao/master/sw
SWDEV-184380 Fix hcc compilation
2019-03-27 05:23:26 +00:00
Michael LIAO d355122bf9 SWDEV-184380 Fix hcc compilation
- `hcc` has no builtin. Need to invoke LLVM intrinsic directly.
2019-03-26 15:20:17 -04:00
Rahul Garg 9b38380c03 Let hipHostMalloc always share/map pinned host ptr 2019-03-26 10:19:13 +05:30
Rahul Garg ad11972f47 Avoid double mapping of devices to hostMalloc buffer 2019-03-25 23:07:05 +05:30
Michael LIAO 13655df76e [hip] Fix typo in macro hipLaunchKernel 2019-03-25 12:06:46 -04:00
Maneesh Gupta c20d233585 Merge pull request #970 from mangupta/swdev-172995
hipExtMallocWithFlags implementation
2019-03-25 07:46:53 +00:00
Maneesh Gupta 9de28dfa5a Merge pull request #962 from gargrahul/add_2d_copy_fallback
Add 2D fallback to use copy kernel
2019-03-25 07:46:43 +00:00
Rahul Garg bec3995700 2D Fallback needs hcc workweek 19101 or higher 2019-03-25 12:07:28 +05:30
Maneesh Gupta 45255ab492 hipExtMallocWithFlags needs hcc workweek 19115 or higher 2019-03-25 11:41:20 +05:30
Maneesh Gupta 158eac9374 Merge pull request #982 from ROCm-Developer-Tools/hack_swdev-173477
HACK for SWDEV-173477
2019-03-22 09:14:38 +00:00
Wen-Heng (Jack) Chung cf7ad0f184 HACK for SWDEV-173477
For code objects with global symbols of length 0, ROCR runtime would
ignore them even though they exist in the symbol table. Therefore the
result from read_agent_globals() can't be trusted entirely.

As a workaround to tame applications which depend on the existence of
global symbols with length 0, always return hipSuccess here.

This behavior shall be reverted once ROCR runtime has been fixed to
address SWDEV-173477
2019-03-21 17:18:16 +00:00
foreman 95d1962401 P4 to Git Change 1759609 by kjayapra@1_HIPWS_SL_IPC on 2019/03/21 12:09:27
SWDEV-144570 - Disbaling __hipHostRegister implementation to unblock pytorch tests in PAL.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#24 edit
2019-03-21 12:43:25 -04:00
Nico Trost 725486fb11 fixed loss of accuracy in hipCfma() 2019-03-21 10:30:10 +01:00
eshcherb 045c6afa2c adding hip_prof_gen verbose log (#977)
* adding hip_prof_gen verbose log

* adding stderr fatal error

* adding no error exit by default

* adding hip_prof_str regeneration dependencies

* adding more informative messages

* fixing error mesage
2019-03-21 05:28:18 +00:00
foreman 9682f81a75 P4 to Git Change 1759248 by cpaquot@cpaquot-ocl-lc-lnx on 2019/03/20 18:32:19
SWDEV-183452 - [HIP] Typo of | instead of &

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#47 edit
2019-03-20 19:18:10 -04:00
foreman a63b38c304 P4 to Git Change 1759224 by cpaquot@cpaquot-ocl-lc-lnx on 2019/03/20 17:47:43
SWDEV-183452 - [HIP] PyTorch test_pin_memory fails
	hipPointerGetAttributes should return hipMemoryTypeHost for hipHostMalloc memories.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#46 edit
2019-03-20 18:43:07 -04:00
foreman 7d3439719d P4 to Git Change 1758971 by yaxunl@yaxunl-lc10 on 2019/03/20 12:00:49
SWDEV-145570 - Fix build failure due to type mismatch of amd::Event::CallBackFunction

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_stream.cpp#16 edit
2019-03-20 12:24:45 -04:00
Maneesh Gupta ce72890dcf Merge pull request #972 from yxsamliu/global
Add declaration of symbol related API for VDI
2019-03-20 05:12:21 +00:00
Maneesh Gupta 54091b5273 Merge pull request #973 from mhbliao/hliao/master/build
[Device Function] Fix typos.
2019-03-20 05:12:14 +00:00
Maneesh Gupta 48d790e205 Merge pull request #974 from yxsamliu/name2
Change HIP dll name to amdhip64.dll on Windows
2019-03-20 05:11:58 +00:00
eshcherb 1229750546 adding prof primitives generator (#967)
* adding prof primitives generator

* minor change, renaming

* minor cosmetic changes, comments correcting and dead code removing

* minor changes and renaming

* minor chane, fixing comments
2019-03-20 05:11:40 +00:00
Siu Chi Chan fa9495841b reimplement HIP_INIT as hip_impl::hip_init(), add hip_init() to some of the inlined API (#966)
* reimplement HIP_INIT as a function, expose it as hip_impl::hip_init()
so that it could be called from hipLaunchKernelGGL and other inlined
HIP functions

* Don't call hip_init from ihipPreLaunchKernel
2019-03-20 05:11:15 +00:00
Yaxun Sam Liu 55f4c416a0 Change HIP dll name to amdhip64.dll on Windows 2019-03-19 16:27:18 -04:00
Michael LIAO f42e84cef7 [Device Function] Fix typos. 2019-03-19 15:32:19 -04:00
foreman 4ef60db63b P4 to Git Change 1758323 by yaxunl@yaxunl-lc10 on 2019/03/19 11:22:17
SWDEV-145570 - Forward declare hipModuleGetGlobal to fix build failure.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#23 edit
2019-03-19 11:31:24 -04:00