Graf commitů

85 Commity

Autor SHA1 Zpráva Datum
Payam c5f76c3de3 name change vdi to rocclr
Change-Id: I06d198bbb4a499e153b290b73a92afed3553b252
2020-05-06 09:14:30 -04:00
root 2689246de6 Merge master into amd-master-next
Change-Id: I3fc1dc0c860d627053537581e75561e8a7efe327
2020-04-26 22:19:37 +00:00
Michael LIAO 19f793f1cd [hip] Generate assertion message in assertion.
Change-Id: Ie66f6563e8728fd0e21cf22dcc6619e4a0e5c28d
2020-04-21 16:44:40 -04:00
Aryan Salmanpour 386a0e0123 disable printf on hip-clang on Windows (#2021) 2020-04-17 10:33:24 +05:30
Maneesh Gupta 2af31479e2 Merge branch 'amd-master' into amd-master-next
Change-Id: I3094c15008093f2072bcd38aca4ea90aeae2d97b
2020-04-09 06:31:00 -04:00
Sameer Sahasrabuddhe 9a0c5d0653 enable HCC printf when using hip-clang
This is cherry-picked from PR#1947 that was committed to the
github repo. It allows printf to work with hip-clang and HCC
runtime.

Change-Id: I754753250ea1e694cf3441722e2d4c9d25fa75bc
2020-03-28 00:18:21 -04:00
Sarbojit2019 5024f9057a Fix for __usad issue (#1972)
Fixes #1930
2020-03-26 17:09:44 +05:30
Sameer Sahasrabuddhe 899c878703 enable HCC printf when using hip-clang (#1947)
This allows printf to work with hip-clang and HCC runtime. See comments under #1919 for a reported bug and feature request.
2020-03-17 14:03:27 +05:30
Sarbojit2019 320742e8a0 Fix __sad signature match with Cuda (#1936)
Fix for issue #1930
2020-03-17 14:02:00 +05:30
Sameer Sahasrabuddhe 64cd527335 SWDEV-204784: separate printf declaration for vdi/clang
There are now two implementations of printf in HIP:

1. The implemenation for HCC is controlled by the HC_FEATURE_PRINTF
   macro, and it works only with the HCC compiler used in combination
   with the HCC runtime.

2. The implementation for hip-clang requires the VDI runtime, and is
   always enabled with that combination.

Change-Id: Ibaeda7900ffe2ce602ca0094aafed0f1147ac2b6
2020-03-16 04:00:39 -04:00
Vladislav Sytchenko 4ca9cda372 Fix typo in device __shfl_xor function
Change-Id: I8bcdd53ced00c596a0af013a0c34e37aa67c93ae
2020-03-10 13:23:08 -04:00
Nick Curtis 09edc7e49c Fix incorrect shfl_xor for Windows
copy/paste error, need __shfl_xor w/ lane_mask
2020-03-10 12:04:05 -05:00
Sameer Sahasrabuddhe 09130b3b92 separate printf declaration for vdi/clang
There are now two implementations of printf in HIP:

1. The implemenation for HCC is controlled by the HC_FEATURE_PRINTF
   macro, and it works only with the HCC compiler used in combination
   with the HCC runtime.

2. The implementation for hip-clang requires the VDI runtime, and is
   always enabled with that combination.
2020-03-09 09:40:05 +05:30
Nick Curtis b7dd073d93 fix long shuffle implementations for windows (#1895)
Fixes for SWDEV-223694
2020-02-26 15:53:56 +05:30
Nick Curtis 797a929a65 Implement long / long long shuffles (#1829)
Implement additional data-types for shuffles (long and long long).
Based upon the double implementation.
2020-02-15 09:51:09 +05:30
Maneesh Gupta 00bd5d1cec Revert PRs that break ROCm builds (#1781)
Fixes SWDEV-218626 and SWDEV-218629

Changes:
- Revert "`static inline` in a header, just like excess sugar in a diet, causes bloat (#1692)"
   This reverts commit be70b9f7e7.
- Revert "Fix rocFFT build failure (#1777)"
   This reverts commit 753277422a.
2020-01-08 15:11:58 +05:30
Alex Voicu be70b9f7e7 static inline in a header, just like excess sugar in a diet, causes bloat (#1692) 2019-12-23 19:09:38 +05:30
satyanveshd 6b06911ef1 fixed directed tests fail when hcc bumped to 3.0 (#1678)
Handled the HCC version check appropriately as few of the directed tests (SWDEV-212161) were failing when hcc was bumped to 3.0.
2019-11-20 21:37:52 +05:30
satyanveshd 4b413739a9 Map clock64() to __builtin_readcyclecounter() (#1473)
Fixes SWDEV-203215.
2019-09-30 10:40:31 +05:30
mhbliao 119ee4b671 [hip] Stop using noduplicate and replace it with convergent. (#1390) 2019-09-05 10:03:43 +00:00
mshivama d75dc4eb29 Device side support for Cooperative Group feature (#1202)
* first cut of the header implementation of cooperative group feature

* add diclarations for device library functions

* fixed various compile time issues in the CG headers

* enabled copy construction and copy assignment

* fixed a minor bug related to conditional compilation macro

* fixed few more CG constructor issues and added a unit testcase

* fixed typo

* extended unit testcase

* compute size of partitioned CG from mask

* bit of code refactoring

* removed boilerplate code

* fixed few of the review comments by Brian

* Changes to the sigantures of few grid and multi-grid related OCKL functions

* changes to declarations of OCKL functions related to CG feature

* removed all the block level support as it is not planned for 2.9

* Have taken care of review comments by Brian

* Have taken care of review comments by Brian

* removed unused functions which were initially intended to use in block level cg support
2019-08-29 01:01:25 +00:00
kpyzhov 0e3198be25 Corrected declaration of __ockl_clz_u64() (#1340) 2019-08-20 12:06:36 +00:00
Alex Voicu a85b0fe68e This difference makes absolutely no sense. 2019-08-02 12:30:03 +03:00
Michael LIAO 498fe92734 [hip] Minor fix to silence compilation warnings.
- Add parenthese to silence repeative compilation warnings across
  projects built against hip.
2019-06-04 10:39:31 -04:00
Aaron Enye Shi ff74babedf Fix bug in __smid not setting correct size
The SZ field should minus by 1 since SIZE range is 1..32. Also add comments that results may vary.
2019-05-22 19:20:09 +00:00
Maneesh Gupta 117bdd8774 Merge pull request #1062 from mhbliao/hliao/master/icmp
[hip] Re-implement ballot using AMDGCN builtins
2019-05-03 17:48:19 +05:30
Michael LIAO 9bd2d5746d [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.
2019-04-30 08:59:13 -04:00
Michael LIAO a64637da2c [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.
2019-04-29 17:21:25 -04:00
Konstantin Pyzhov beadaab661 Fix for __popcll() device function implementation. 2019-04-19 08:53:22 -04:00
Konstantin Pyzhov b7bd29924a Fix for __ffsll() device functions. 2019-04-18 13:07:24 -04: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 e51fa174c8 [Device Function] Fix typos. 2019-03-19 15:32:19 -04:00
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
Maneesh Gupta 0b86b421c1 Merge pull request #714 from aaronenyeshi/remove-static-hip-device
Remove libhip_device.a static library
2018-10-31 14:08:29 +05:30
Aaron Enye Shi 817b27d530 Remove libhip_device.a static library
Move remaining function definitions from device_util.cpp to hip_runtime.h header. We can now remove the static library completely as device_util.cpp was the last file part of target hip::hip_device .
2018-10-25 19:52:35 +00:00
Maneesh Gupta f6f160fa6b Merge pull request #723 from mangupta/fix_double_shfl
Fix logic for double variants of __shfl*
2018-10-25 06:01:38 +05:30
Maneesh Gupta 19404e603d Fix logic for double variants of __shfl*
Change-Id: I604f00b54cf4bd9c5f26ca6fa680fca5e9629417
2018-10-24 12:39:09 +05:30
Maneesh Gupta 0703a2d0f0 Make HIP functional again with HCC from ROCm 1.9.x
Change-Id: I214acdfd0b79dcf783993e44fe31baee64fd4dc3
2018-10-24 10:41:56 +05:30
Aaron Enye Shi 0787f74ac2 Replace IRIF fences with atomic_work_item_fence 2018-10-04 21:47:28 +00:00
Yaxun Sam Liu cf184460e9 Fix build failure of hipTestHalf and hipTestIncludeMath for hip-clang 2018-09-18 21:00:15 -04:00
Maneesh Gupta 66f863d1f3 Merge branch 'master' into support-malloc 2018-09-17 10:17:25 +05:30
carlushuang d577f27d1a fix __longlong_as_double() problem, return the double value
previous version return a long long valus *as* double, hence we may get the wrong result.
this also affect atomicAdd(double * ...), which use long long pointer to mimic double pointer.

Signed-off-by: carlushuang <carlus.huang@amd.com>
2018-09-12 13:25:00 +08:00
Maneesh Gupta a3a93a68d4 Merge pull request #657 from yxsamliu/fix-clz
Fix ambiguity of __clz and __clzll
2018-09-03 16:34:42 +05:30
Maneesh Gupta 7459defec1 Merge pull request #651 from yxsamliu/hip-clang-clock
Add clock() and clock64()
2018-09-03 16:32:30 +05:30
Yaxun Sam Liu 11c91c2fdd Fix ambiguity of __clz and __clzll 2018-08-31 18:07:57 -04:00
Yaxun Sam Liu 1f74a66bea Add clock() and clock64() 2018-08-29 10:51:00 -04:00
Aaron Enye Shi ba9fc6f355 Add bitinsert64 to device functions 2018-08-28 20:01:14 +00:00
Aaron Enye Shi b939a3c6ed Clean up and add meaningful variables to bit funcs 2018-08-28 18:19:48 +00:00
Aaron Enye Shi b445e45007 Add bitextract and bitinsert functions 2018-08-20 16:46:12 +00:00
Yaxun Sam Liu 02d0e93601 Support malloc/free for hip-clang 2018-07-27 16:24:51 -04:00