Graf commitů

6604 Commity

Autor SHA1 Zpráva Datum
zhaozhangjian 02ab8feabd fix a bug when initializing a vector of hipFunction_t (#1949)
[ROCm/clr commit: a2281268ba]
2020-03-17 14:05:07 +05:30
Sameer Sahasrabuddhe 4d9df4192e 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.

[ROCm/clr commit: 446a9e82e2]
2020-03-17 14:03:27 +05:30
Joseph Greathouse 7adeaffd61 Fix compiler warning on NVCC path (#1942)
GCC emits a warning about using static functions like
hipCUDAErrorTohipError inside this function, because it has an
inline directive, but it's not static. Adding static to this function
to silence warnings (and prevent potential problems in the future).

[ROCm/clr commit: dc9ecf03f8]
2020-03-17 14:02:59 +05:30
Joseph Greathouse 43c687a5e8 Fix occupancy calculations API on NVCC (#1941)
NVCC warned if you tried to use hipOccupancyMaxActiveBlocksPerMultiprocessor
because when passing in a device function pointer, "const void* func" was
insufficient to describe it accurately. Adding a C++ templated class type
definition for this function.

[ROCm/clr commit: 7f49e47217]
2020-03-17 14:02:48 +05:30
Reshabh Sharma 278168800f Output file name should not change flags picked for compiler (#1938)
Fixes SWDEV-207362,

The output file name should not contribute to picking up the right flags for the compiler. This fix solves issues when the output has conflicting extensions which confuses hipcc to treat them as the source files and add the required flags for them.

PS: Output file refers to the file followed by -o

Example: hipcc test.o -o test.hip will add the flags for .hip compilation ignoring the fact that it is an output file

[ROCm/clr commit: 59b8dabbd0]
2020-03-17 14:02:14 +05:30
Sarbojit2019 8e7109d9ee Fix __sad signature match with Cuda (#1936)
Fix for issue #1930

[ROCm/clr commit: 5ddb9e1eb7]
2020-03-17 14:02:00 +05:30
Joseph Greathouse 37e78fe08d Fix detection of support for cooperative groups (#1932)
Query ROCr to see if we have the proper lower-level support for
cooperative groups -- GWS support through the firmware, driver,
thunk, and ROCr. ROCr does these checks for us, and presents a
query that allows us to see if GWS entries are available for use.
If so, then we have all the lower-level technologies needed, and
we should enable cooperative groups support for HIP.

[ROCm/clr commit: 35a68596f9]
2020-03-17 14:01:44 +05:30
Reshabh Sharma 10b1f2badf Don't force compiler to treat libhip_hcc.so as a text file (#1931)
Fixes SWDEV-226025,

Right now -x c++ can come before libhip_hcc.so which forces the compiler to treat libhip_hcc.so as a text file and generates a lot of gibberish unicode. This PR changes the order of flags ensuring that -x c++ and similar flags come after libhip_hcc.so
Hopefully, this will not have any negative side effect.

[ROCm/clr commit: 4a9793e2e2]
2020-03-17 14:01:33 +05:30
Aryan Salmanpour 518130a0b7 [HIP] add cooperative kernel launch APIs on NVCC (#1929)
[ROCm/clr commit: e509a6d0b4]
2020-03-17 14:01:11 +05:30
Joseph Greathouse e1123ce997 Fix maxSharedMemoryPerMultiProcessor attribute (#1927)
The maxSharedMemoryPerMultiProcessor attribute is meant to describe
the number of bytes of shared memory (LDS space in AMD terminology)
in each SM (CU in AMD terminology). For instance, on AMD GPUs this
is often 64KB per CU, and some Nvidia GPUs it's 96KB per SM.

This shared memory is a different address space from the normal
global memory. However, the current HIP-HCC properties fill this
in with a size that matches the totalGlboalMem property. This gives
a drastically too-high calculation for the amount of LDS space that
each CU has -- tens of GBs vs. 10s of KBs.

This patch fixes this by pulling the maxSharedMemoryPerMultiProcessor
property from the HSA pool that describes how much workgroup-local
space is available on each CU. The HSA runtime eventually pulls
this from the topology information about LDSSizeInKB, defined as
"Size of Local Data Store in Kilobytes per SIMD".

Previously, this HSA query was used to fill in the value of the
sharedMemPerBlock property. On today's AMD GPUs, we know that
the amount of LDS avaialble to the workgroup is identical to the
amount of LDS space in the CU. However, in the future this may
differ. As such, this patch changes around the order and fills
in the "PerMultiProcessor" property from the HSA query (since
what's what the query is defined to return), and then separately
fills in the "PerBlock" property as we know it.

[ROCm/clr commit: 44b16df84f]
2020-03-17 14:00:51 +05:30
Joseph Greathouse 04ead59f0b Fix errors in occupancy calculation function (#1926)
Fix two errors in hipOccupancyMaxActiveBlocksPerMultiprocessor.
1) Fix a possible segfault if the user passed in a null pointer for
   the numBlocks value.
2) Handle the situation when the user is asking for a block size
   that is larger than what the target device can hold within a
   single block.

[ROCm/clr commit: 6ae1b1a321]
2020-03-17 14:00:38 +05:30
Yaxun (Sam) Liu 586dc598b6 Let hipcc not pass -mllvm option to HIP-Clang on Windows (#1924)
Currently there is a clang bug on Windows causing duplicate -mllvm options in clang -cc1.

Tempoarily disable -mllvm options for HIP-Clang on Windows until the bug is fixed.

Change-Id: I3a4393ba7745989398dc6c6001722837dad18704

[ROCm/clr commit: 6b1956d139]
2020-03-17 14:00:20 +05:30
Maneesh Gupta 91546b6c9f Annotate __constant__ (#1901)
[ROCm/clr commit: e8bd9768d1]
2020-03-17 13:59:44 +05:30
mhbliao b8f9f9598b [hip] Improve the portability of the header for vector type support. (#1873)
- Need to check the availability of `__has_attribute` builtin macro
  instead of compiler versions. That's more reliable and portable among
  various compilers.
- Provides a very basic support of vectors for unknown compilers.

[ROCm/clr commit: fc223dc584]
2020-03-17 13:59:24 +05:30
Jatin b6f99e9332 Enable saxpy Test
Change-Id: Iadb5f631e1cebaf016b1835510771b3b7fac0a55


[ROCm/clr commit: fa10ee3301]
2020-03-17 01:15:20 -04:00
Sameer Sahasrabuddhe f12c0f1dbb 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


[ROCm/clr commit: d48738856c]
2020-03-16 04:00:39 -04:00
Vladislav Sytchenko 303e04fa55 Enable simpleTexture3D test for VDI
Change-Id: Ida65de6e1cae64ac97b624eaab1340877a6fba73


[ROCm/clr commit: dafed1a009]
2020-03-13 18:34:39 -04:00
Saleel Kudchadker fc2aec1cf1 libhiprtc.so needs to be installed in DEST dir
Change-Id: I3ae8b4f18a05a707b87fa73873c1721928ebe904


[ROCm/clr commit: f663c93cd6]
2020-03-12 12:23:36 -07:00
Jiabao Xie 3b776dfe6a Cleaned include statements and deleted unnecessary operator overloads
Change-Id: I5eb322c05082e8f27584446af2f6a19243dc63c9


[ROCm/clr commit: f81175c3bc]
2020-03-12 14:13:01 -04:00
Evgeny Mankov 5e8ec423f2 Merge pull request #1916 from asalmanp/refactor_cooperative_APIs
[HIP] Refactor cooperative APIs

[ROCm/clr commit: bf385d8641]
2020-03-12 19:12:50 +03:00
Evgeny Mankov c50f579660 Merge pull request #1908 from asalmanp/prop_mulit_coop
[HIP] add hip specific properties for cooperative kernel multi device

[ROCm/clr commit: 21ccb0be01]
2020-03-12 19:12:11 +03:00
Alex Voicu 8acb4eaa33 Merge branch 'master' of https://github.com/ROCm-Developer-Tools/HIP into feature_robust_constant
[ROCm/clr commit: b9544eabe8]
2020-03-12 14:20:26 +00:00
Saleel Kudchadker 80c688d9f5 Merge "Fix P4 linux make builds" into amd-master-next
[ROCm/clr commit: 7d86f10c3c]
2020-03-11 16:17:18 -04:00
Maneesh Gupta 666f217a6a Expose support for non-returning atomic FADD (#1909)
Change-Id: If5359488324477315a9bd4f308a75f606c065b39

[ROCm/clr commit: af933d0900]
2020-03-11 14:33:15 +05:30
srinivamd 195abb8a18 return hipSuccess when count is zero (#1900)
[ROCm/clr commit: 32960ab8f9]
2020-03-11 14:32:54 +05:30
Evgeny Mankov db38be5a13 Merge pull request #1925 from arghdos/patch-3
Fix incorrect shfl_xor for Windows

[ROCm/clr commit: 925d76ddef]
2020-03-11 00:58:11 +03:00
Jiabao Xie 9bfc5ba7a9 Merge "Structs expanded to print struct information than address. Moved to hip_formatting.hpp. Reformatted to follow Google standards" into amd-master-next
[ROCm/clr commit: 214c07a5b8]
2020-03-10 15:56:49 -04:00
Aryan Salmanpour cb8cf51d3f [HIP] return an error if blockDim exceeds maxThreadsPerBlock
[ROCm/clr commit: 70ef268add]
2020-03-10 15:26:53 -04:00
Evgeny Mankov c20ccb8ba5 Merge pull request #1922 from emankov/HIP
[HIP][doc] Update README.md

[ROCm/clr commit: e605bce913]
2020-03-10 22:20:00 +03:00
Yaxun Liu 4042bf151b Merge "Let hipcc not pass -mllvm option to HIP-Clang on Windows" into amd-master-next
[ROCm/clr commit: 3fbd8e0dc2]
2020-03-10 14:12:06 -04:00
Vladislav Sytchenko 98761c5721 Fix typo in device __shfl_xor function
Change-Id: I8bcdd53ced00c596a0af013a0c34e37aa67c93ae


[ROCm/clr commit: caea3f9b32]
2020-03-10 13:23:08 -04:00
Jiabao Xie 3f843860d0 Structs expanded to print struct information than address. Moved to hip_formatting.hpp. Reformatted to follow Google standards
Change-Id: I08695058c11db51b9f3cbe1deb4af944ebf9e64d


[ROCm/clr commit: 10d90ab2ad]
2020-03-10 13:12:28 -04:00
Yaxun (Sam) Liu 23a8dfc8f3 Let hipcc not pass -mllvm option to HIP-Clang on Windows
Currently there is a clang bug on Windows causing duplicate -mllvm options in clang -cc1.

Tempoarily disable -mllvm options for HIP-Clang on Windows until the bug is fixed.

Change-Id: I3a4393ba7745989398dc6c6001722837dad18704


[ROCm/clr commit: e796a1ed78]
2020-03-10 13:07:26 -04:00
Nick Curtis cf2629a95c Fix incorrect shfl_xor for Windows
copy/paste error, need __shfl_xor w/ lane_mask

[ROCm/clr commit: a9af4755cb]
2020-03-10 12:04:05 -05:00
Evgeny Mankov 2b17cd5189 [HIP][doc] Update README.md
[ROCm/clr commit: 2bb166503f]
2020-03-10 18:04:01 +03:00
Evgeny Mankov ce6b791ddb Merge pull request #1919 from ssahasra/declare-printf
separate printf declaration for vdi/clang

[ROCm/clr commit: 31b1d5e4a4]
2020-03-10 12:26:54 +03:00
Saleel Kudchadker 049340f08e Fix P4 linux make builds
Change-Id: I6cc4e69a914389b53bc3b52535eb6faf24897a09


[ROCm/clr commit: 7bba326ed1]
2020-03-10 00:02:10 -07:00
Saleel Kudchadker 82a836eb22 Merge "Change HIPRTC Version to 9.0" into amd-master-next
[ROCm/clr commit: 8d05d06dce]
2020-03-09 22:55:27 -04:00
Vladislav Sytchenko 426e3ecb06 Merge "Add hipDrvMemcpy3D." into amd-master-next
[ROCm/clr commit: 305e4eedcf]
2020-03-09 18:13:16 -04:00
Julia Jiang cf35a2a1de Merge "SWDEV-225337-Fix test failure in hipNormalizedFloatValueTex kernel" into amd-master-next
[ROCm/clr commit: 9b436779e4]
2020-03-09 16:58:10 -04:00
Vladislav Sytchenko 952502e2ed Add hipDrvMemcpy3D.
This is the equivalent of cuMemcpy3D.

Change-Id: Ib2e06dbd6f5093c931cdfd36c87617f32acffc2d


[ROCm/clr commit: cd76eb7486]
2020-03-09 16:11:25 -04:00
Aryan Salmanpour d011efb792 [HIP] fix formatting/code clean up and fix a bug
[ROCm/clr commit: 7009901fe0]
2020-03-09 16:03:59 -04:00
jujiang 0279f1d89e SWDEV-225337-Fix test failure in hipNormalizedFloatValueTex kernel
Change-Id: I3a4c3b58578703993640a8d28242ec1a0ed5ff60


[ROCm/clr commit: 09d442d7c3]
2020-03-09 15:21:29 -04:00
Sameer Sahasrabuddhe 7973b6d45d enable hostcall tests
Change-Id: Ic6efe71c868defc53be214acd7e0907109ec1410


[ROCm/clr commit: 5fc32755b7]
2020-03-09 14:41:37 -04:00
Saleel Kudchadker 1834fb4c5e Change HIPRTC Version to 9.0
Change-Id: I7e88df61248f0fe6e33c2315805f9e49a493cf29


[ROCm/clr commit: f34d5bdfb1]
2020-03-09 11:28:55 -07:00
Saleel Kudchadker dde752bbd1 Fix HIPRTC headers to export C style symbols
Change-Id: I3e0d2b19ace4a9096e3e46bd22f420483da51a8a


[ROCm/clr commit: 514c7c8ef8]
2020-03-09 14:18:46 -04:00
Vladislav Sytchenko afe8d26dd1 Fix Windows build.
extern "C" on Windows implies nothrow. We shouldn't be throwing exceptions either way.

Change-Id: If0ed1f7ec194bf7f65b7cea1a5c250e768a8f190


[ROCm/clr commit: a15e895cfd]
2020-03-09 11:46:55 -04:00
Sameer Sahasrabuddhe 988b489efd 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.


[ROCm/clr commit: 2c3dfdda41]
2020-03-09 09:40:05 +05:30
Alex Voicu 1d009eaee4 Merge branch 'master' of https://github.com/ROCm-Developer-Tools/HIP into feature_robust_constant
[ROCm/clr commit: 31bdd6ef24]
2020-03-08 18:00:14 +00:00
Aryan Salmanpour 2ca751f70c [HIP] Refactor cooperative APIs
[ROCm/clr commit: 97b24eba45]
2020-03-06 18:30:12 -05:00