Commit Graph

490 Commits

Author SHA1 Message Date
Aditya Atluri 35d829773d added support for lgammaf and lgamma
1. Implementation inside HIP

Change-Id: I657263b7276a57c56081d3336fef816b5f204eff


[ROCm/clr commit: 52859a8a40]
2017-03-17 18:26:10 -05:00
Sun, Peng d5f632f271 Disable additional debug warning message
Change-Id: Ic5c374589bfad387a7c4c5346430a490e2c6e2a7


[ROCm/clr commit: 2585812fba]
2017-03-17 15:03:03 -05:00
pensun a8c91ca379 Change the #define of GENERIC_GRID_LAUNCH to take valueat compilation, disable warning messages
Change-Id: Ic6c011529e26de359bcda1e7083727e7ee52887b


[ROCm/clr commit: faf0fbebe9]
2017-03-17 14:59:34 -05:00
pensun 9c9a9bb330 Initial integration with Alex' Generic Grid Launch
Change-Id: I559afb80e9e39ec0d119bb3bf3b85ef9e448caf6


[ROCm/clr commit: ad882222b0]
2017-03-17 14:59:34 -05:00
Ben Sander 7466b4005b Move USE_PROMOTE_FREE_HCC
[ROCm/clr commit: 20ea5e179f]
2017-03-17 12:04:13 -05:00
Ben Sander e0171505b4 Add __device__ to needful functions for promote-free.
[ROCm/clr commit: 92fd4c8f10]
2017-03-17 11:19:48 -05:00
Ben Sander 572be5449d Add USE_PROMOTE_FREE_HCC for smooth transition to new HCC caps.
ADDRESS_SPACE_1 defines


[ROCm/clr commit: f4256cb57c]
2017-03-17 11:04:39 -05:00
Ben Sander c81fb24611 Add simple device-side assert macro
Currently swallows asserts but will compile.


[ROCm/clr commit: c9f64bbd2d]
2017-03-17 10:25:56 -05:00
Maneesh Gupta d43640c77c Merge branch 'amd-master' into amd-develop
Change-Id: I01a77c34e11b1b02cb20e11b105741f6bd383543


[ROCm/clr commit: e3aa3d7ba6]
2017-03-15 09:56:45 +05:30
Rahul Garg 6e4f693cd8 hipMemsetD8 support for HIP/NVCC path
Change-Id: I48eee8266afd7b45a12d5ce2c4849b687a006c0f


[ROCm/clr commit: 09d1a46139]
2017-03-14 23:49:21 +05:30
Rahul Garg 4443b7520c Added hipMemsetD8
Change-Id: I6a230a036c9c46c72a77d5f93c16ce8a00c3f837


[ROCm/clr commit: dccf9e2aa9]
2017-03-14 22:11:34 +05:30
Wen-Heng (Jack) Chung 54f40acc7a Revert "Changes to HIP to cope with Promote-free HCC"
This reverts commit 9591c5a447.

Change-Id: I20a9bab3883ad09913b320210344d37599cb8fcd


[ROCm/clr commit: 17af837120]
2017-03-14 22:59:27 +08:00
Maneesh Gupta 8d526e796e Merge branch 'amd-master' into amd-develop
[ROCm/clr commit: 0853c8ac2e]
2017-03-14 13:44:41 +05:30
Aditya Atluri 725f20ab1e make sure the inter-thread intrinsics are working post hawaii
Change-Id: I30ea5284c2160276f5bc0f937dfd386ca8640ce8


[ROCm/clr commit: af56898ea0]
2017-03-13 11:16:05 -05:00
Ben Sander 49d7ea94f5 Refactor registered memory calls.
[ROCm/clr commit: b7acb85fa8]
2017-03-11 09:18:27 -06:00
Aditya Atluri c8a1b6bc30 fixed warning raised by g++ using hip_vector_types.h
Change-Id: I9e7cdfc8b28b03b690eecd068529cf7629296d68


[ROCm/clr commit: a47066153f]
2017-03-10 15:14:26 -06:00
Rahul Garg b2b8361763 IPC supported using ROCR APIs
Change-Id: I0a353b1240098f4b20fa266a871f5f5826290af9


[ROCm/clr commit: 3af487007b]
2017-03-10 23:45:28 +05:30
pensun a49f5c7e1d update porting guide for updated __HIP_DEVICE_COMPILE__
Change-Id: I0f025d354f76e2d728231bf112a77e8c8fcacc8c


[ROCm/clr commit: 1a2844e3a3]
2017-03-10 10:01:12 -06:00
Aditya Atluri a816a9eb54 Added architecture guards around __shfl, dpp and ds_permute device functions
Change-Id: I10f9b08618fbf25b61c1932278fc5759e41c0d66


[ROCm/clr commit: 046ec0375b]
2017-03-10 08:40:59 -06:00
pensun 3152223be6 add inline to all hip_complex operators
Change-Id: Ifba5966c297cbc9299c39ecfc45c7296003ebb5d


[ROCm/clr commit: 14a5d3c80d]
2017-03-08 14:06:13 -06:00
Aditya Atluri c861d10d1e Added new API, hipMemPtrGetInfo
1. This API returns memory allocation size of pointer
2. Added test to check its functionality

Change-Id: I87976d817b5a6ca5530336c09e7cb0420601cb2c


[ROCm/clr commit: 7b7d53f875]
2017-03-07 13:46:29 -06:00
Wen-Heng (Jack) Chung 9591c5a447 Changes to HIP to cope with Promote-free HCC
Squashed commit of the following:

commit c111b5bd10d7c2a5b0b1ad8b07f6e81185b47b39
Author: Wen-Heng (Jack) Chung <whchung@gmail.com>
Date:   Sat Mar 4 17:06:46 2017 +0800

    Use __device__ for all variables and functions to be used in kernel path

    Abolish __device and adopt [[hc]] in HIP implementation, so __device__ can be
    used on all HIP applications, no matter they are variables or functions.

    Change-Id: I20ca25857ce3bc3e42a5ebf65cafea2c8492f4c7

commit 30c0e4e4701bbf6bd9a7182e0320a71ff73d3a83
Author: Wen-Heng (Jack) Chung <whchung@gmail.com>
Date:   Thu Mar 2 12:14:11 2017 +0800

    XXX FIXME get around LDS spills caused in Promote-free HCC

    hipDynamicShared2 uses all 64KB of LDS for computation. But in Promote-free HCC
    there are cases where LDS spills would occur, which would make the test case to
    hang.

    In this workaround commit we reduce the size of dynamic LDS used to get around
    this known issue, and will revert this commit when LDS spills are resolved in
    HCC.

    Change-Id: If648b36200a4f9143951a8129192bcb7ed0bef5e

commit e803173be2d73e2f132a7ff7f61e7a20b4083d34
Author: Wen-Heng (Jack) Chung <whchung@gmail.com>
Date:   Wed Mar 1 21:41:41 2017 +0800

    Fix math functions which take pointer arguments

    Change-Id: I332c997e640edbc44824691e2a9434c6b3dadefa

commit de590c469e213c42090ff83dbd060f25bb1d6047
Author: Wen-Heng (Jack) Chung <whchung@gmail.com>
Date:   Wed Mar 1 18:38:54 2017 +0800

    Changes to cope with Promote-free HCC

    - abolish usage of address_space GNU attribute
    - use __device in file-scope global variables which would be accessed by GPU kernels
    - temporarily disable some math functions which take pointer arguments

    Change-Id: I730311dee848e20e763e35cd3980317fce0dce0d

Change-Id: I1f6b970b53b9401eeaaab08f04a7b9fed0fb8cf0


[ROCm/clr commit: 0005dd5f66]
2017-03-08 01:32:59 +08:00
Aditya Atluri 106030f2c6 added new field to hipDeviceProp_t structure gcnArch.
1. It is an integer containing gfx values 701, 801, 802, 803
2. On NV path, it is zero

Change-Id: I2b4c7f48981d0214d8c6b1905d2cc85b16203419


[ROCm/clr commit: 9f575721aa]
2017-03-07 11:24:32 -06:00
Ben Sander 115631e210 Modify memcpy and memset to follow C/C++ standard:
- memcpy src is const
    - memset val is int


[ROCm/clr commit: 8e50134d31]
2017-03-06 16:38:22 -06:00
Evgeny Mankov 460971e93c [HIP] [FIX] Memcpy Async functions on nvcc path.
+ in hipMemcpyDtoDAsync: cuMemcpyDtoD -> cuMemcpyDtoDAsync
+ in hipMemcpyDtoHAsync: cuMemcpyDtoH -> cuMemcpyDtoHAsync

P.S.
"The types CUstream and cudaStream_t are identical and may be used interchangeably", thus explicit c-like type cast is not needed, aka CUstream(stream).


[ROCm/clr commit: 430856ca35]
2017-03-01 23:04:34 +03:00
Aditya Atluri b430c3be71 changed __half enabling from 4 to >3
Change-Id: Id974c6d5326e87a4c5941f831c5bb2747cdebd2d


[ROCm/clr commit: 37bc29e44b]
2017-02-28 17:13:29 -06:00
pensun 077e789db5 Define __HIPCC__ flag at compile time when using HIPCC on HCC path
Change-Id: I5e967e0e2327264d5d3b0ca705c2504fcd33d75e


[ROCm/clr commit: be95cc914f]
2017-02-28 16:20:48 -06:00
Evgeny Mankov 8c237b0837 [HIP] Add missing Device attribute on nvcc path.
+ missing cudaDevAttrComputeCapabilityMinor case as added for hipDeviceGetAttribute query for hipDeviceAttributeComputeCapabilityMinor.


[ROCm/clr commit: 47a27e6b17]
2017-02-28 18:40:13 +03:00
pensun 72f8c29529 remove extra spaces for hip_common.h platform defines
Change-Id: Ie0e39256abba307429985371671cde01f5ea2cc9


[ROCm/clr commit: c5ae8c423a]
2017-02-27 12:55:22 -06:00
Maneesh Gupta 37ab88ae1e Fix nvcc path samples that include math_functions.h
Change-Id: I94bb577b93983535178d8f0dcae57aaa72871534


[ROCm/clr commit: 528736cf58]
2017-02-27 13:20:05 +05:30
Aditya Atluri 78f1d54ad6 Added initial support for hipMemcpyFromSymbol. But not working!
Change-Id: I48d8c7de4ec9f85c6c942be995fb488a3931f5d7


[ROCm/clr commit: 7ac5017cb9]
2017-02-23 11:29:06 -06:00
Aditya Atluri 945526cf77 added runtime api hipMemcpyFromSymbolAsync
Change-Id: Ibaf925faf0ba464dd0ed6c5ea74c224c2ce38889


[ROCm/clr commit: 3d348b2d81]
2017-02-22 19:16:35 -06:00
Aditya Atluri 8078d7d4cc added typedef for half and half2
Change-Id: Ic844fa31b64a0354484b418df71869c2807200cc


[ROCm/clr commit: 4ef664a633]
2017-02-21 14:44:37 -06:00
Evgeny Mankov 241bd38256 [HIP] annotation update.
cudaStreamAddCallback and cudaStreamWaitEvent were excluded from unsupported.


[ROCm/clr commit: 839927a94a]
2017-02-20 21:26:40 +03:00
Aditya Atluri 6c76483ac8 fixed hipFunction memory management
Change-Id: I7ebb323419bcd220ebd6466a8eb38e7bfdb1520a


[ROCm/clr commit: 6110fcdfb6]
2017-02-09 17:22:55 -06:00
Aditya Atluri 14dcdff8f4 Fixed Hawaii link issues
1. Split hip_ir.ll to hip_hc.ll and hip_hc_gfx803.ll
 a. hip_hc.ll contains arch generic ir implementations
 b. hip_hc_gfx803.ll contains gfx803 (fiji, polaris) specific ir
2. HIPCC can now parse --amdgpu-target=*.
 a. Usage: hipcc --amdgpu-target=gfx803 --amdgpu-target=gfx701
 b. TODO: Convert to --amdgpu-target=gfx803,gfx701
3. With LLC in HCC able to generate native f16 isa, removed inline half asm math ops
4. Fixed threadfence and threadfence_block to use functions in rocdl

Change-Id: Ic9a9e3e04139b0d75d2c2a263c030ca77adc1019


[ROCm/clr commit: 60ec83c683]
2017-02-08 12:04:05 -06:00
Aditya Atluri d191eac0e2 Fixed HIP for C runtime
1. fixed constant memory test
2. added runtime gcc/g++ test
3. added fix for runtime with gcc/g++

Change-Id: Ie14dad6633411b188bdeea044e140b6d5beabe16


[ROCm/clr commit: be6d01ebc3]
2017-02-07 13:15:36 -06:00
Aditya Atluri 110303c087 fixed vector types for c
Change-Id: I2330e976060f9a038929cd51be07ae2ee98e81ce


[ROCm/clr commit: 6d8007e28c]
2017-02-07 11:09:54 -06:00
Aditya Atluri 3937b398e9 changed __global__ attribute
1. Moved around tests and added them to HIT

Change-Id: I5d75280c42a5af852670ebabc7305ee56721ec7b


[ROCm/clr commit: f009f3533d]
2017-02-03 10:53:36 -06:00
Aditya Atluri 4085e01263 removed host math functions from math_functions.h
Change-Id: I90d8784e2d6b58c6fade9f0fa12c0db3ee417d3e


[ROCm/clr commit: a5d017e406]
2017-01-27 17:38:43 -06:00
Rahul Garg 24a50f7606 hipMallocArray fixes for NV path
Change-Id: I1ca43e6bc0cd405998888005c20dfb1ea57003d5


[ROCm/clr commit: 125983eed9]
2017-01-27 14:32:08 +05:30
pensun 41bb48dd49 more fix on hipmallocarray on NV path
Change-Id: I890a36cab10c101f4a112bc4567f765b318d486c


[ROCm/clr commit: f18efd5d15]
2017-01-26 12:30:52 -06:00
pensun 0ecc88bebd fix missing semicolon on NV path
Change-Id: I3cfecb7bd534578a1f5a07ca9397092dcf01db07


[ROCm/clr commit: 42f22162e0]
2017-01-26 11:28:15 -06:00
Aditya Atluri 38a90f6119 added device functions header to hip_runtime.h
Change-Id: I635931e1fbe4b7f0f64f3a126c0f1badcd6d234b


[ROCm/clr commit: 33a3ebad27]
2017-01-25 08:14:30 -06:00
Aditya Atluri 11cf5fc117 added driver_types.h and texture_types.h header files to hip
Change-Id: Ic3b2403f07d6767dadf83d6c278fd14e87f6acdb


[ROCm/clr commit: 97315e8748]
2017-01-20 17:09:52 -06:00
Aditya Atluri 0e061ea69a fixed hipArray issues
1. Fixed build issues produced from previous commit
2. Create new header files to manage data structures better

Change-Id: I704d82c196c1858ed7617d76e40612eb507d2aa0


[ROCm/clr commit: 5b2d4c0e60]
2017-01-20 16:54:48 -06:00
Aditya Atluri 100ef6d9b2 added nvcc backend for hipArrays
1. Added hip_texture.h to hip_runtime_api.h as cuda does declare array runtime apis inside cuda_runtime_api.h
2. Added nvcc backend for hipArray runtime apis
3. Didn't test on nvidia platform (should work)

Change-Id: I1a14aef41840e4f55e5535132e3443a918b55967


[ROCm/clr commit: a7fa600176]
2017-01-20 14:11:45 -06:00
Aditya Atluri b6f4fedaaf fixed compilation issues for vector types and math functions
1. Added math_functions.h to hip_runtime.h
2. Changed operator overloading classifier static to static inline
3. Added vector types test for gpu
4. Seperated __host__ and __device__ for math functions in headers

Change-Id: I499862fad5d7b10da686da9011d7ecefe523f8e2


[ROCm/clr commit: 02190736e3]
2017-01-20 09:49:11 -06:00
Aditya Atluri c50f5cbd2c added operator overloading for complex data types
Change-Id: Id96d5d000651914169f04497af6ff78ad96d846a


[ROCm/clr commit: fe5f45caaf]
2017-01-19 15:15:25 -06:00
Aditya Atluri d84be1d089 moved half device function declarations to top of the file
1. Moved half device functions around so that script can catch the signatures
2. Generated docs for half precision apis

Change-Id: Iee27658e3a639fdb02af135e71841dc6427f15e2


[ROCm/clr commit: 706a032a29]
2017-01-18 15:06:18 -06:00