Commit Graph

972 Commits

Author SHA1 Message Date
David Salinas d4c72ad357 Revert "append the ELF flags for sram-ecc and xnack to the target triple per code object"
This reverts commit ee887dd6a2.


[ROCm/hip commit: 5843530a06]
2019-04-18 11:49:40 -04:00
Maneesh Gupta f529a6af13 Merge pull request #995 from david-salinas/add_sram-ecc_and_xnack_flags_to_triple
Append the ELF flags for sram-ecc and xnack to the target triple per code object

[ROCm/hip commit: 8309632e2d]
2019-04-16 09:10:04 +05:30
Maneesh Gupta 8b7cd90f0c Merge pull request #1019 from scchan/lazy_binding
minor workaround for lazy binding

[ROCm/hip commit: d789aef46e]
2019-04-16 08:36:10 +05:30
Mr-LiuSw ba23b5c5db add little changes in hip_runtime_api.h to work with c language (#1017)
* Update hip_runtime_api.h

when i try to use mpicc or gcc to compile a c language code which call some hip runtime api , error occured as
> /path/to/hcc_detail/hip_runtime_api.h:2268:33: error: unknown type name ‘hipFuncAttributes’; 
> hipFuncGetAttributes(hipFuncAttributes* attr, const void* func);
 
add ' struct ' for the first parameter of hipFuncGetAttributes will get ride of this problem.


[ROCm/hip commit: dc07b1b06c]
2019-04-16 08:35:36 +05:30
Aaron Enye Shi 882006555b Use COMgr to read Kernel Args Metadata (#1006)
* Add CMAKE dep to amd_comgr

* Use COMGR for read_kernarg_metadata in COV2

* Do not assume kernargs exist

* Add proper metadata destroy cleanup

* Use a process function for easier destroy

* Remove old read_kernarg_metadata

* Clean up HCC, prints, names

* Use COMGR in CMAKE by default

* Move metadata lookup for keyword values into helper

* Remove C string usage for lookup_keyword_value

* Guard COMGR for non-NVCC path

* Add hip_hcc dependency on comgr package

* Add lifetime to metadata nodes

* Find COMGR config file for amd_comgr target

* Move set_active data earlier


[ROCm/hip commit: 8a548bf40b]
2019-04-16 08:34:39 +05:30
Yaxun (Sam) Liu 9899d0523e hip-clang: Add __align__
CUDA has __align__. Define eqivalent for hip-clang.


[ROCm/hip commit: b9f8f977fb]
2019-04-10 14:17:18 -04:00
David Salinas ee887dd6a2 append the ELF flags for sram-ecc and xnack to the target triple per code object
[ROCm/hip commit: c61f265657]
2019-04-05 13:17:11 -04:00
Siu Chi Chan 23df3b5879 minor workaround for lazy binding
[ROCm/hip commit: e126f7254c]
2019-04-02 17:28:06 -04:00
Wen-Heng (Jack) Chung 1cc94f9369 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


[ROCm/hip commit: 4b7177ac42]
2019-03-29 03:45:04 +00:00
Jeff Daily fb2beb0c88 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.


[ROCm/hip commit: 7aada87cbd]
2019-03-27 21:40:27 +00:00
Jeff Daily 21f5e142f5 load program state once per agent
[ROCm/hip commit: c9117de8eb]
2019-03-27 18:19:10 +00:00
Maneesh Gupta 464c023bb5 Merge pull request #990 from mhbliao/hliao/master/sw
SWDEV-184380 Fix hcc compilation

[ROCm/hip commit: e66dfa6ea3]
2019-03-27 05:23:26 +00:00
Michael LIAO a9a397bc4b SWDEV-184380 Fix hcc compilation
- `hcc` has no builtin. Need to invoke LLVM intrinsic directly.


[ROCm/hip commit: 939d153c1a]
2019-03-26 15:20:17 -04:00
Michael LIAO 94b7856a1a [hip] Fix typo in macro hipLaunchKernel
[ROCm/hip commit: b3497824ec]
2019-03-25 12:06:46 -04:00
Maneesh Gupta 82fd86e63f Merge pull request #970 from mangupta/swdev-172995
hipExtMallocWithFlags implementation

[ROCm/hip commit: 30b5c02ec4]
2019-03-25 07:46:53 +00:00
Maneesh Gupta bfb73dd148 Merge pull request #982 from ROCm-Developer-Tools/hack_swdev-173477
HACK for SWDEV-173477

[ROCm/hip commit: a75f375788]
2019-03-22 09:14:38 +00:00
Wen-Heng (Jack) Chung 3eb009913c 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


[ROCm/hip commit: d941f19399]
2019-03-21 17:18:16 +00:00
Nico Trost 5802734f1b fixed loss of accuracy in hipCfma()
[ROCm/hip commit: 7bb5a14a4e]
2019-03-21 10:30:10 +01:00
Maneesh Gupta 1bc0e84e83 Merge pull request #972 from yxsamliu/global
Add declaration of symbol related API for VDI

[ROCm/hip commit: 6ade928535]
2019-03-20 05:12:21 +00:00
Maneesh Gupta 7892ca44b4 Merge pull request #973 from mhbliao/hliao/master/build
[Device Function] Fix typos.

[ROCm/hip commit: 87551e29f6]
2019-03-20 05:12:14 +00:00
eshcherb bbc63ad2ec 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


[ROCm/hip commit: 673cdeea55]
2019-03-20 05:11:40 +00:00
Siu Chi Chan 99c4f43a6c 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


[ROCm/hip commit: 24d08beef8]
2019-03-20 05:11:15 +00:00
Michael LIAO d0680ef1ee [Device Function] Fix typos.
[ROCm/hip commit: e51fa174c8]
2019-03-19 15:32:19 -04:00
Yaxun Sam Liu 4f094c4d21 Add declaration of symbol related API for VDI
[ROCm/hip commit: e9bc4034d8]
2019-03-19 11:11:49 -04:00
Maneesh Gupta 88761d52ce Merge pull request #965 from mhbliao/hliao/master/immarg
[Device Function] Support immediate argument.

[ROCm/hip commit: 4094824b9e]
2019-03-19 18:41:31 +05:30
Maneesh Gupta 173c910f5d Merge pull request #954 from mhbliao/master
[hip] Re-implement hipLaunchKernelGGL as macros.

[ROCm/hip commit: 91ebfadabf]
2019-03-19 18:39:27 +05:30
Maneesh Gupta 9ac6005d35 hipExtMallocWithFlags implementation
Change-Id: Iee9e119796472200b2933d5e23be60813f33bc75


[ROCm/hip commit: 73ec5d54b5]
2019-03-19 11:59:22 +05:30
Michael LIAO f282ea815a [Device Function] Support immediate argument.
- `immarg`, immediate argument, is enabled on all AMDGPU intrinsics.
  Revise device functions using these intrinsics with immediate
  arguments.


[ROCm/hip commit: 950b6efe72]
2019-03-15 12:38:04 -04:00
Evgeny 36b5313d65 tracing callback layer update
[ROCm/hip commit: 31475c5ac8]
2019-03-14 22:43:52 -05:00
Maneesh Gupta 1d61f5ff58 Merge pull request #958 from aaronenyeshi/cxxabi-mismatch-workaround
CXX11 ABI Mismatch Workaround

[ROCm/hip commit: 419127172e]
2019-03-15 06:15:46 +05:30
Siu Chi Chan 151b288155 remove visibility hidden attribute
[ROCm/hip commit: 10d3084e20]
2019-03-13 11:58:32 -04:00
Evgeny 75d89bf129 adding memset32d
[ROCm/hip commit: 4ffe413cfd]
2019-03-11 21:28:27 -05:00
Siu Chi Chan ce064f942a minor cleanup
[ROCm/hip commit: cb9ea5cefc]
2019-03-11 19:51:57 +00:00
Siu Chi Chan ac10afb0f7 remove old style triple name
[ROCm/hip commit: d37f9e6b2d]
2019-03-11 19:51:51 +00:00
Siu Chi Chan fc9af438a4 move triple_to_hsa_isa into the header
[ROCm/hip commit: 824ee1aa72]
2019-03-11 19:51:44 +00:00
Siu Chi Chan 15061ddfcc Fix memory leak introduced by previous change to Agent_global.
Make Agent_global manage the lifetime of the name string


[ROCm/hip commit: bf1d48bf78]
2019-03-11 19:51:32 +00:00
Aaron Enye Shi 1e07be3ab3 Fix Agent_global variables failing hipTestDeviceSymbol
Issue: Header uses std::vector<Agent_global> agent_globals which is created by hip_module.cpp
  - Move iterator fails to copy Agent_global from library source into header version
  - Due to different versions of std::string name in struct Agent_global
Fix: Change Agent_global to use char* name instead of std::string name


[ROCm/hip commit: 00d24d254d]
2019-03-11 19:51:25 +00:00
Aaron Enye Shi 4b87bd25e8 Fix hash_for undefined reference in hipTestConstant test
Issue: mismatch undefined symbols in different user env
  - Binary expects modified return value std::string&
  - Fails to match libhip_hcc.so: return value is std::string& but doesn't match modified C++ env
Fix: Change return value to char*, create new key std::string in header from char*


[ROCm/hip commit: 23e9968752]
2019-03-11 19:51:18 +00:00
Michael Liao c0f6fa358f [hip] Re-implement hipLaunchKernelGGL as macros.
[ROCm/hip commit: 30185b4114]
2019-03-08 09:10:51 -05:00
Maneesh Gupta 645c29159c Merge pull request #951 from tycho/nvcc-hipDeviceSetCacheConfig
nvcc_detail/hip_runtime_api.h: add missing hipDeviceSetCacheConfig API

[ROCm/hip commit: 250bd58254]
2019-03-08 09:22:25 +05:30
Yaxun Sam Liu a431326408 Fix HIP/VDI build failure due to dlopen change
[ROCm/hip commit: 6e9e90addd]
2019-03-07 14:45:45 -05:00
Steven Noonan 17e2bfe3f8 nvcc_detail/hip_runtime_api.h: add missing hipDeviceSetCacheConfig API
Signed-off-by: Steven Noonan <steven@uplinklabs.net>


[ROCm/hip commit: ee750d5ea4]
2019-03-06 11:21:36 -08:00
Maneesh Gupta 3f5e937afc Merge pull request #949 from gargrahul/single_stream_concurrent_kernels
Add extension for kernel concurrency on same stream

[ROCm/hip commit: 352b17346c]
2019-03-06 17:34:54 +05:30
Alex Voicu 0c16497abd dlopen() fixes (#929)
* Initial attempt to switch over to internally linked state.

* Add missing CMake update.

* hipLaunchKernelGGLImpl must be inline as well. Ensure internal linkage.

* Ensure global retrieval uses internally linked state.

* Hide HC in the implementation. Minimise ADL woes.

* Strange software exists, and must be catered to.

* Use a less spammy mechanism for ensuring internal linkage / non-export.

* Remove leftover internal detail.


[ROCm/hip commit: ea0fcf3e61]
2019-03-06 17:31:44 +05:30
Rahul Garg 5d6fd17fbe Add extension for kernel concurrency on same stream
[ROCm/hip commit: 59081c69fc]
2019-03-06 12:55:39 +05:30
Maneesh Gupta 19b6b2b570 Update hip_runtime_api.h
Use hipCUResultTohipError instead of hipCUDAErrorTohipError in hipMemsetD32 & hipMemsetD32Async.

[ROCm/hip commit: 8db717c769]
2019-03-05 12:10:01 +05:30
Wen-Heng (Jack) Chung da589e38ed Address code review comments to use hipDeviceptr_t
[ROCm/hip commit: 5cbd28f29b]
2019-03-05 05:51:05 +00:00
Wen-Heng (Jack) Chung ea689f63ca Add implementation for NVCC path
[ROCm/hip commit: 0337b686ef]
2019-03-04 20:11:12 -08:00
Wen-Heng (Jack) Chung 0b7f38d100 Add hipMemsetD32 and hipMemsetD32Async
Add 2 extra memset functions which fills memory with integer-typed data

Also change the parameters of ihipMemset to better explain the semantic


[ROCm/hip commit: 7ebbbd3525]
2019-03-04 17:00:33 +00:00
Maneesh Gupta f0bb5690f1 Merge pull request #937 from yxsamliu/nan2
Fix nan for windows

[ROCm/hip commit: 07b0e9574c]
2019-02-28 07:14:27 +05:30