Граф коммитов

1023 Коммитов

Автор SHA1 Сообщение Дата
Konstantin Pyzhov b7bd29924a Fix for __ffsll() device functions. 2019-04-18 13:07:24 -04:00
David Salinas 5843530a06 Revert "append the ELF flags for sram-ecc and xnack to the target triple per code object"
This reverts commit c61f265657.
2019-04-18 11:49:40 -04:00
Maneesh Gupta 8309632e2d 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
2019-04-16 09:10:04 +05:30
Maneesh Gupta d789aef46e Merge pull request #1019 from scchan/lazy_binding
minor workaround for lazy binding
2019-04-16 08:36:10 +05:30
Mr-LiuSw dc07b1b06c 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.
2019-04-16 08:35:36 +05:30
Aaron Enye Shi 8a548bf40b 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
2019-04-16 08:34:39 +05:30
Yaxun (Sam) Liu b9f8f977fb hip-clang: Add __align__
CUDA has __align__. Define eqivalent for hip-clang.
2019-04-10 14:17:18 -04:00
David Salinas c61f265657 append the ELF flags for sram-ecc and xnack to the target triple per code object 2019-04-05 13:17:11 -04:00
Siu Chi Chan e126f7254c minor workaround for lazy binding 2019-04-02 17:28:06 -04:00
Wen-Heng (Jack) Chung 4b7177ac42 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
Jeff Daily 7aada87cbd 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
Jeff Daily c9117de8eb load program state once per agent 2019-03-27 18:19:10 +00:00
Maneesh Gupta e66dfa6ea3 Merge pull request #990 from mhbliao/hliao/master/sw
SWDEV-184380 Fix hcc compilation
2019-03-27 05:23:26 +00:00
Michael LIAO 939d153c1a SWDEV-184380 Fix hcc compilation
- `hcc` has no builtin. Need to invoke LLVM intrinsic directly.
2019-03-26 15:20:17 -04:00
Michael LIAO b3497824ec [hip] Fix typo in macro hipLaunchKernel 2019-03-25 12:06:46 -04:00
Maneesh Gupta 30b5c02ec4 Merge pull request #970 from mangupta/swdev-172995
hipExtMallocWithFlags implementation
2019-03-25 07:46:53 +00:00
Maneesh Gupta a75f375788 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 d941f19399 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
Nico Trost 7bb5a14a4e fixed loss of accuracy in hipCfma() 2019-03-21 10:30:10 +01:00
Maneesh Gupta 6ade928535 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 87551e29f6 Merge pull request #973 from mhbliao/hliao/master/build
[Device Function] Fix typos.
2019-03-20 05:12:14 +00:00
eshcherb 673cdeea55 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 24d08beef8 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
Michael LIAO e51fa174c8 [Device Function] Fix typos. 2019-03-19 15:32:19 -04:00
Yaxun Sam Liu e9bc4034d8 Add declaration of symbol related API for VDI 2019-03-19 11:11:49 -04:00
Maneesh Gupta 4094824b9e Merge pull request #965 from mhbliao/hliao/master/immarg
[Device Function] Support immediate argument.
2019-03-19 18:41:31 +05:30
Maneesh Gupta 91ebfadabf Merge pull request #954 from mhbliao/master
[hip] Re-implement hipLaunchKernelGGL as macros.
2019-03-19 18:39:27 +05:30
Maneesh Gupta 73ec5d54b5 hipExtMallocWithFlags implementation
Change-Id: Iee9e119796472200b2933d5e23be60813f33bc75
2019-03-19 11:59:22 +05:30
Michael LIAO 950b6efe72 [Device Function] Support immediate argument.
- `immarg`, immediate argument, is enabled on all AMDGPU intrinsics.
  Revise device functions using these intrinsics with immediate
  arguments.
2019-03-15 12:38:04 -04:00
Evgeny 31475c5ac8 tracing callback layer update 2019-03-14 22:43:52 -05:00
Maneesh Gupta 419127172e Merge pull request #958 from aaronenyeshi/cxxabi-mismatch-workaround
CXX11 ABI Mismatch Workaround
2019-03-15 06:15:46 +05:30
Siu Chi Chan 10d3084e20 remove visibility hidden attribute 2019-03-13 11:58:32 -04:00
Evgeny 4ffe413cfd adding memset32d 2019-03-11 21:28:27 -05:00
Siu Chi Chan cb9ea5cefc minor cleanup 2019-03-11 19:51:57 +00:00
Siu Chi Chan d37f9e6b2d remove old style triple name 2019-03-11 19:51:51 +00:00
Siu Chi Chan 824ee1aa72 move triple_to_hsa_isa into the header 2019-03-11 19:51:44 +00:00
Siu Chi Chan bf1d48bf78 Fix memory leak introduced by previous change to Agent_global.
Make Agent_global manage the lifetime of the name string
2019-03-11 19:51:32 +00:00
Aaron Enye Shi 00d24d254d 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
2019-03-11 19:51:25 +00:00
Aaron Enye Shi 23e9968752 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*
2019-03-11 19:51:18 +00:00
Michael Liao 30185b4114 [hip] Re-implement hipLaunchKernelGGL as macros. 2019-03-08 09:10:51 -05:00
Maneesh Gupta 250bd58254 Merge pull request #951 from tycho/nvcc-hipDeviceSetCacheConfig
nvcc_detail/hip_runtime_api.h: add missing hipDeviceSetCacheConfig API
2019-03-08 09:22:25 +05:30
Yaxun Sam Liu 6e9e90addd Fix HIP/VDI build failure due to dlopen change 2019-03-07 14:45:45 -05:00
Steven Noonan ee750d5ea4 nvcc_detail/hip_runtime_api.h: add missing hipDeviceSetCacheConfig API
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
2019-03-06 11:21:36 -08:00
Maneesh Gupta 352b17346c Merge pull request #949 from gargrahul/single_stream_concurrent_kernels
Add extension for kernel concurrency on same stream
2019-03-06 17:34:54 +05:30
Alex Voicu ea0fcf3e61 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.
2019-03-06 17:31:44 +05:30
Rahul Garg 59081c69fc Add extension for kernel concurrency on same stream 2019-03-06 12:55:39 +05:30
Maneesh Gupta 8db717c769 Update hip_runtime_api.h
Use hipCUResultTohipError instead of hipCUDAErrorTohipError in hipMemsetD32 & hipMemsetD32Async.
2019-03-05 12:10:01 +05:30
Wen-Heng (Jack) Chung 5cbd28f29b Address code review comments to use hipDeviceptr_t 2019-03-05 05:51:05 +00:00
Wen-Heng (Jack) Chung 0337b686ef Add implementation for NVCC path 2019-03-04 20:11:12 -08:00
Wen-Heng (Jack) Chung 7ebbbd3525 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
2019-03-04 17:00:33 +00:00