Commit Graph

987 Commits

Author SHA1 Message Date
Maneesh Gupta 13b13c3493 Merge pull request #1062 from mhbliao/hliao/master/icmp
[hip] Re-implement ballot using AMDGCN builtins

[ROCm/clr commit: 2eafa5dcf9]
2019-05-03 17:48:19 +05:30
Michael LIAO eb43303d0b [Device Function] Fix implementation of __bitinsert_u64
- It's a common mistake by assuming 1 << shamt would be promoted to
  64-bit, if shamt is a 64-bit integer. That's not the case. Replace
  that left shift to a 64-bit one to ensure it won't fall into undefined
  behavior.
- Fix the host-side implementation as well for device function testing.


[ROCm/clr commit: 2380eb8ecc]
2019-04-30 08:59:13 -04:00
Michael LIAO e8de293fc5 [devfunc] Re-implement ballot using AMDGCN builtins
- As the signature of `amdgcn.icmp` is changed for next-gen chip, using
  clang builtins is portable way to hide that details.


[ROCm/clr commit: a7a4d80f54]
2019-04-29 17:21:25 -04:00
Aaron Enye Shi f8d108a815 Revert "Use COMgr to read Kernel Args Metadata (#1006)"
This reverts commit 10048a5631.


[ROCm/clr commit: 235c6877c8]
2019-04-26 16:04:56 -04:00
Maneesh Gupta dad6abcd7a Merge pull request #1043 from mhbliao/hliao/master/fp16
[hip] Fix including of hip_fp16.h

[ROCm/clr commit: 7f81c72f1c]
2019-04-24 16:50:46 +05:30
Maneesh Gupta f8f49d57dc Merge pull request #1042 from mhbliao/hliao/master/ldg
[hip] Fix use of `__HIP_CLANG_ONLY__` in `hip_ldg.h`.

[ROCm/clr commit: 63ab2ea945]
2019-04-24 16:50:37 +05:30
Maneesh Gupta b41d81d74e Merge pull request #1040 from eshcherb/roctracer-hip-frontend-190422
hip_prof_api.h include under __cplusplus

[ROCm/clr commit: 54cdeabe6e]
2019-04-24 16:50:27 +05:30
Maneesh Gupta a709855e9d Merge pull request #1039 from gargrahul/fix_ptrgetattr_nvcc
Fix hipPointerGetAttributes for NVCC

[ROCm/clr commit: 7edb43bc83]
2019-04-24 16:50:18 +05:30
Rahul Garg d69edbbb7f Add hipMallocManaged default functional support (#1036)
* Add hipMallocManaged default functional support

* Fix build error

* Add dtest


[ROCm/clr commit: 94769fc8dd]
2019-04-24 16:50:03 +05:30
Michael LIAO 59e6127969 [hip] Fix including of hip_fp16.h
- Separate the definition of `__HCC_OR_HIP_CLANG__`, `__HCC_ONLY__`, and
  `__HIP_CLANG_ONLY__` into hip_common.h so that it could be included in
  hip_fp16.h, which may be included separately in app.


[ROCm/clr commit: d086dbd0e5]
2019-04-23 09:16:00 -04:00
Michael LIAO 619050ae96 [hip] Fix use of __HIP_CLANG_ONLY__ in hip_ldg.h.
- Check its value instead of whether it's defined or not.


[ROCm/clr commit: ca6a5c07eb]
2019-04-22 23:22:32 -04:00
Evgeny 79df39e3c3 hip_prof_api.h include under __cplusplus
[ROCm/clr commit: 165c42483b]
2019-04-22 21:14:18 -05:00
Rahul Garg 0198199780 Fix hipPointerGetAttributes for NVCC
[ROCm/clr commit: c0e0f0b7fd]
2019-04-23 03:22:25 +05:30
Konstantin Pyzhov a525cc8f47 Fix for __popcll() device function implementation.
[ROCm/clr commit: f6fbf8751d]
2019-04-19 08:53:22 -04:00
Konstantin Pyzhov d1bbf23181 Fix for __ffsll() device functions.
[ROCm/clr commit: 5664ed3206]
2019-04-18 13:07:24 -04:00
David Salinas 5624c3837d Revert "append the ELF flags for sram-ecc and xnack to the target triple per code object"
This reverts commit d1f4e7ea54.


[ROCm/clr commit: 1237a0b691]
2019-04-18 11:49:40 -04:00
Maneesh Gupta 7c43b9ee4b 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/clr commit: 715a500b97]
2019-04-16 09:10:04 +05:30
Maneesh Gupta dac817873f Merge pull request #1019 from scchan/lazy_binding
minor workaround for lazy binding

[ROCm/clr commit: 22660bed74]
2019-04-16 08:36:10 +05:30
Mr-LiuSw e909811963 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/clr commit: 64bdf82265]
2019-04-16 08:35:36 +05:30
Aaron Enye Shi 10048a5631 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/clr commit: 2c80975e9c]
2019-04-16 08:34:39 +05:30
Yaxun (Sam) Liu 7d58d7b02a hip-clang: Add __align__
CUDA has __align__. Define eqivalent for hip-clang.


[ROCm/clr commit: e200ece4da]
2019-04-10 14:17:18 -04:00
David Salinas d1f4e7ea54 append the ELF flags for sram-ecc and xnack to the target triple per code object
[ROCm/clr commit: 4d0dc45078]
2019-04-05 13:17:11 -04:00
Siu Chi Chan f6837a4e7f minor workaround for lazy binding
[ROCm/clr commit: b5045af7e9]
2019-04-02 17:28:06 -04:00
Wen-Heng (Jack) Chung cfe930f9d6 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/clr commit: 04915cea2f]
2019-03-29 03:45:04 +00:00
Jeff Daily 5233d41c6c 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/clr commit: f5e4fff6cc]
2019-03-27 21:40:27 +00:00
Jeff Daily 9cee2c5311 load program state once per agent
[ROCm/clr commit: 2845b4c4b8]
2019-03-27 18:19:10 +00:00
Maneesh Gupta 6fb7f626ba Merge pull request #990 from mhbliao/hliao/master/sw
SWDEV-184380 Fix hcc compilation

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


[ROCm/clr commit: d355122bf9]
2019-03-26 15:20:17 -04:00
Michael LIAO 5482fa8102 [hip] Fix typo in macro hipLaunchKernel
[ROCm/clr commit: 13655df76e]
2019-03-25 12:06:46 -04:00
Maneesh Gupta 817e064745 Merge pull request #970 from mangupta/swdev-172995
hipExtMallocWithFlags implementation

[ROCm/clr commit: c20d233585]
2019-03-25 07:46:53 +00:00
Maneesh Gupta 888b43cc6f Merge pull request #982 from ROCm-Developer-Tools/hack_swdev-173477
HACK for SWDEV-173477

[ROCm/clr commit: 158eac9374]
2019-03-22 09:14:38 +00:00
Wen-Heng (Jack) Chung 86379d694f 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/clr commit: cf7ad0f184]
2019-03-21 17:18:16 +00:00
Nico Trost 0b3f8dce2b fixed loss of accuracy in hipCfma()
[ROCm/clr commit: 725486fb11]
2019-03-21 10:30:10 +01:00
Maneesh Gupta 19bba906a2 Merge pull request #972 from yxsamliu/global
Add declaration of symbol related API for VDI

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

[ROCm/clr commit: 54091b5273]
2019-03-20 05:12:14 +00:00
eshcherb 05b9ae6a09 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/clr commit: 1229750546]
2019-03-20 05:11:40 +00:00
Siu Chi Chan 597c06b6be 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/clr commit: fa9495841b]
2019-03-20 05:11:15 +00:00
Michael LIAO 43afb85ca4 [Device Function] Fix typos.
[ROCm/clr commit: f42e84cef7]
2019-03-19 15:32:19 -04:00
Yaxun Sam Liu 24bd42fb57 Add declaration of symbol related API for VDI
[ROCm/clr commit: fb3241a000]
2019-03-19 11:11:49 -04:00
Maneesh Gupta 4366c618d5 Merge pull request #965 from mhbliao/hliao/master/immarg
[Device Function] Support immediate argument.

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

[ROCm/clr commit: 1500eec5f7]
2019-03-19 18:39:27 +05:30
Maneesh Gupta f1d064562d hipExtMallocWithFlags implementation
Change-Id: Iee9e119796472200b2933d5e23be60813f33bc75


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


[ROCm/clr commit: b74b4500c4]
2019-03-15 12:38:04 -04:00
Evgeny a0c8ef2e96 tracing callback layer update
[ROCm/clr commit: 2aa88a4505]
2019-03-14 22:43:52 -05:00
Maneesh Gupta fc835d6a43 Merge pull request #958 from aaronenyeshi/cxxabi-mismatch-workaround
CXX11 ABI Mismatch Workaround

[ROCm/clr commit: 23170f6af8]
2019-03-15 06:15:46 +05:30
Siu Chi Chan b2a51c6cdb remove visibility hidden attribute
[ROCm/clr commit: 739d43c5d8]
2019-03-13 11:58:32 -04:00
Evgeny 0b4f2151a2 adding memset32d
[ROCm/clr commit: 0586924ae6]
2019-03-11 21:28:27 -05:00
Siu Chi Chan 2d6ebcaffb minor cleanup
[ROCm/clr commit: 5044c9ba49]
2019-03-11 19:51:57 +00:00
Siu Chi Chan 7955348b8e remove old style triple name
[ROCm/clr commit: f54da9358b]
2019-03-11 19:51:51 +00:00
Siu Chi Chan f7817c48d5 move triple_to_hsa_isa into the header
[ROCm/clr commit: 30053f6443]
2019-03-11 19:51:44 +00:00