Commit Graph

5275 Commits

Author SHA1 Message Date
kpyzhov 728ce926d9 Added gfx906 kernel binary to the HIPFB file for hipModule test. (#1215) 2019-07-12 03:13:45 +00:00
Yaxun (Sam) Liu 4b5061e13f Add amdgpu targets gfx1010 and gfx1012 (#1211) 2019-07-12 03:13:35 +00:00
foreman a888b06ede P4 to Git Change 1966049 by cpaquot@cpaquot-ocl-lc-lnx on 2019/07/11 19:05:18
SWDEV-189500 - [HIP] Have to force async=false for host to device case as well

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#61 edit
2019-07-11 19:13:06 -04:00
Jenkins f1858aefb0 Merge 'master' into 'amd-master'
Change-Id: I3d27dfbda4db54c862dd2f243145ffdffc170179
2019-07-11 11:35:38 -04:00
Evgeny Mankov f0832fd968 [HIP][HIPIFY] Split HIP_ARRAY_DESCRIPTOR struct to HIP_ARRAY_DESCRIPTOR and HIP_ARRAY3D_DESCRIPTOR
[Reason] To be compatible with CUDA [#1133]

Update HIP code, hipify-clang, tests and docs

[TODO] Add support of the corresponding functions on nvcc fallback path
2019-07-11 14:58:16 +03:00
mhbliao e701e337f9 Add missing compound assignment operators. (#1216) 2019-07-11 09:16:15 +00:00
Jatin Chaudhary 46553d719a Adding fix to initialize a dim3 variable from blockIdx. (#1212)
Adding gitignore for ctags
2019-07-11 09:16:03 +00:00
Maneesh Gupta e3b1dabdc5 Revert "[ci] Disable hipLaunchParm.tst for now" (#1087) 2019-07-11 00:24:23 +00:00
Jenkins e6fa9a95ff Merge 'master' into 'amd-master'
Change-Id: I9e1db1ea296de411edef79d9ffd0c050247feb02
2019-07-10 05:36:59 -04:00
Aryan Salmanpour b1d8736f4a [hip][samples] fix a typo in module_api/defaultDriver sample (#1210) 2019-07-10 03:05:19 +00:00
Aryan Salmanpour 034e5c0311 Fix a compilation error when templated operator<< fails if 'U' type is std::ostream. (#1209) 2019-07-10 03:05:04 +00:00
Maneesh Gupta bb72dd047c [ci] Enable tests on ROCm 2.6 (#1208) 2019-07-10 03:04:52 +00:00
foreman 3439e27f6d P4 to Git Change 1960615 by gandryey@gera-win10 on 2019/07/08 18:05:10
SWDEV-79445 - HIP generic changes and code clean-up
	- Correct elapsed time calculation. Use event start and end.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_event.cpp#13 edit
2019-07-08 18:14:01 -04:00
darkbuck d0afaff280 Fix even more typo. (#1204) 2019-07-08 11:00:51 +00:00
Jatin Chaudhary fcb0a3d4e2 Adding bounds check before hipMemset (#1190)
* Adding bounds check in ihipMemset

* Adding ihipMemPtrGetInfo to hipMemPtrGetInfo
2019-07-08 11:00:38 +00:00
Jenkins dd5d28f66d Merge 'master' into 'amd-master'
Change-Id: Ibf8b204bd411b938bfc5bbaf7c26823a028e81ad
2019-07-08 05:10:35 -04:00
Evgeny Mankov ac2357aa0a Merge pull request #1206 from emankov/master
[HIPIFY] Statistics to CSV file dumping revise
2019-07-07 20:58:16 +03:00
Evgeny Mankov 60a9143d6d [HIPIFY] Statistics to CSV file dumping revise
+ Add option -print-stats-csv to dump statistics to CSV file
+ If -o-dir is specified, CSV file will be dumped there
+ Generate 1 summary file sum_stat.csv in case of multiple sources
2019-07-07 20:55:17 +03:00
Jenkins 90ff0a2e5a Merge 'master' into 'amd-master'
Change-Id: Ie33c9467b47fc5d42da71b9bfc2932c26493f9f2
2019-07-04 10:56:44 -04:00
searlmc1 f3bbad0716 Fix typo ( T in Vec3_cmp = needs to be int ). (#1203)
Typo introduced here:
commit 87eac86298
Author: Alex Voicu <alexandru.voicu@amd.com>
Date:   Mon Jun 24 20:02:09 2019 -0500

    Put 3-wide vector types on a ketogenic diet. (#1180)
2019-07-04 00:44:26 +00:00
kpyzhov 43ffe25979 Change the type of hipTextureObject_t to pointer to a struct. (#1199)
This is necessary to allow Runtime to perform required texture buffer handling.
2019-07-04 00:44:06 +00:00
Jannik a401997b8e Fix call to cuda library (#1197)
* Remove flags parameter from hipOccupancyMaxPotentialBlockSize

This commit makes the hipOccupancyMaxPotentialBlockSize method consistent with hcc path and the CUDA API.
2019-07-04 00:43:22 +00:00
Aryan Salmanpour 7e48231252 [hip] Move _criticalData of ihipStream_t class to private section and use criticalData() to access it (#1177) 2019-07-04 00:42:19 +00:00
Jenkins 1c9776d712 Merge 'master' into 'amd-master'
Change-Id: I0230d43dca968ed6a8f7695064b98a3de703143d
2019-07-03 19:12:35 -04:00
foreman 270c652d0f P4 to Git Change 1940447 by cpaquot@cpaquot-ocl-lc-lnx on 2019/07/03 14:44:49
SWDEV-194872 - [HIP] CUDA and HCC sync after a DeviceToHost async copy.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#60 edit
2019-07-03 14:51:15 -04:00
Maneesh Gupta 3541d18528 Fix sample module_api_global for hip-clang (#1201)
module_api_global relies on a HCC only feature which allows host code
to write to device variables. This feature does not exist in CUDA
or hip-clang, which causes the sample not working in CUDA or hip-clang.

This patch fixes the sample by using standard features of CUDA and
hip-clang. The fixed sample works in HCC, CUDA and hip-clang.
2019-07-03 08:52:19 +00:00
Yaxun (Sam) Liu 3169f3a881 Add __hip_pinned_shadow__ for hip-clang and fix texture reference tests (#1200) 2019-07-03 08:51:59 +00:00
Maneesh Gupta a220a8e8e9 Added missing NULL checks and corrected API return values (#1188)
* Added missing NULL checks and corrected API return values as per validation

* Added missing NULL checks
2019-07-03 08:51:39 +00:00
Jatin Chaudhary 3cb87cdc46 Adding new unroll example (#1187) 2019-07-03 08:51:19 +00:00
Yaxun Sam Liu 98648828c0 Fix sample module_api_global for hip-clang
module_api_global relies on a HCC only feature which allows host code
to write to device variables. This feature does not exist in CUDA
or hip-clang, which causes the sample not working in CUDA or hip-clang.

This patch fixes the sample by using standard features of CUDA and
hip-clang. The fixed sample works in HCC, CUDA and hip-clang.
2019-07-02 16:36:53 -04:00
Jenkins 54f0e508f9 Merge 'master' into 'amd-master'
Change-Id: I87a09730ec605e2bf13cde52ab5afb79eaeaaf64
2019-07-01 02:12:30 -07:00
Jenkins 04cbe15857 Merge 'master' into 'amd-master'
Change-Id: Ied8c47046b006252096e0381960b62f5aa95d6d3
2019-06-29 21:09:16 -07:00
eshcherb 0218f95c32 hip_api_name fixed to be inline to suppress not used warning (#1194) 2019-06-30 03:38:43 +00:00
Evgeny Mankov 54dab53c04 Merge pull request #1195 from emankov/master
[HIPIFY] Clang 7.1.0 support
2019-06-29 17:25:07 +03:00
Evgeny Mankov b1bc9caef9 [HIPIFY] Clang 7.1.0 support
+ Provide patch for clang's bug 38811
+ Update Readme.md accordingly
2019-06-29 17:23:18 +03:00
foreman ccd7799ada P4 to Git Change 1917740 by cpaquot@cpaquot-ocl-lc-lnx on 2019/06/28 12:03:07
SWDEV-193938 - [HIP] RCCL test fails
	Set default stream to null-stream
	In hipStreamWaitEvent if event_ is null, get the last queued command instead.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_event.cpp#12 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_event.hpp#4 edit
2019-06-28 12:09:09 -04:00
foreman 6768664780 P4 to Git Change 1917620 by yaxunl@yaxunl-lc10 on 2019/06/28 07:57:46
SWDEV-145570 - Fix device name mismatch.

	Not only gfx906 can have device name with +xnack etc.
	Other devices e.g. gfx900 could have that too.
	Make the previous fix more generic.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#33 edit
2019-06-28 08:06:23 -04:00
Anusha Godavarthy Surya 1a7c7e3b06 Added missing NULL checks 2019-06-27 20:19:30 +05:30
Anusha Godavarthy Surya 4989452413 Added missing NULL checks and corrected API return values as per validation 2019-06-27 00:19:05 +05:30
Maneesh Gupta a90871aefe Add dependency on amd_comgr in hip-config-*.cmake.in (#1179)
Change-Id: Ia12a40cd5c89920a50ec714ceae99f60259a6f66
2019-06-26 15:18:11 +05:30
wkwchau 3742f24477 Fixed bug in hipOccupancyMaxPotentialBlockSize for the SGPRs limitation of gfx8 devices (#1176) 2019-06-26 15:18:00 +05:30
Maneesh Gupta e0b86d890c [packaging] Add dependency on comgr to hip_hcc package (#1182) 2019-06-25 06:32:46 +05:30
Aaron Enye Shi f87b900f96 Fix dlpi_name info empty when using GCC on ub18 (#1181)
This fixes a bug where GCC++ on Ubuntu 18.04 creates failing executables compared to GCC++ on 16.04 and clang++. While creating function names on Ubuntu 18.04, dl_phdr_info seems to provide a non-zero value for dlpi_addr on initial iteration, and an empty string in dlpi_name. This is causing failure when linking with g++, since the empty string prevents the kernel function from being loaded. Clang++ and GCC on UB16 provide a zero value for dlpi_addr. To fix this, we need to verify both addr and name exists, so that /proc/self/exe can be properly loaded.
2019-06-25 06:32:29 +05:30
Alex Voicu 87eac86298 Put 3-wide vector types on a ketogenic diet. (#1180)
* Put 3-wide vector types on a ketogenic diet.

* Remove needless include.

* Do not be narrow-minded.

* Do not be narrow-minded.

* Put the C people on a diet too.
2019-06-25 06:32:09 +05:30
Jenkins 178f06d22f Merge 'master' into 'amd-master'
Change-Id: I81a373b1a9c149e96ede6c72a6c24d99171f8821
2019-06-23 11:47:24 -04:00
foreman bca0438b69 P4 to Git Change 1879857 by gandryey@gera-win10 on 2019/06/20 18:06:07
SWDEV-184710 - Support hipLaunchCooperativeKernelMultiDevice()
	- Clean-up the loop for the launch on each device
	- Add hipExtLaunchMultiKernelMultiDevice()

	 http://ocltc.amd.com/reviews/r/17573/

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_module.cpp#29 edit
2019-06-20 18:13:20 -04:00
Evgeny Mankov 65e012e5b1 Merge pull request #1175 from emankov/LLVM
[HIPIFY] Fix multiple input files support
2019-06-20 18:08:46 +03:00
Evgeny Mankov 266cf3cf96 [HIPIFY] Fix multiple input files support
Reported in #1168
2019-06-20 18:05:57 +03:00
Aryan Salmanpour d6ad690cb6 [hip] implement the hipExtLaunchMultiKernelMultiDevice API (#1165)
* [hip] implement the hipExtLaunchMultiKernelMultiDevice API

* add a guard to check the HCC version for acquire_locked_hsa_queue() API which was introdued in HCC for ROCm 2.5

* modified code based on the requested changes

* changes to lock all streams before launching kernels for each device and unlock them after the dispatches

* check each stream to be valid before starting to lock all the streams
2019-06-20 05:59:05 +05:30
wkwchau 28c34ead70 Implement the hipOccupancyMaxPotentialBlockSize function (#1162)
* Implement the hipOccupancyMaxPotentialBlockSize function

* Replaced hipGetDeviceProperties() call by ihipGetDeviceProperties() in ihipOccupancyMaxPotentialBlockSize()

* Add test for hipOccupancyMaxPotentialBlockSize in Module API

* Added extern declaration for ihipGetDeviceProperties() to be accessed inside ihipOccupancyMaxPotentialBlockSize()

* fixed hipOccupancyMaxPotentialBlockSize test build issue

* Fix hipOccupancyMaxPotentialBlockSize dtest

* Add BUILD_CMD in hipOccupancyMaxPotentialBlockSize dtest

* Revert "Add BUILD_CMD in hipOccupancyMaxPotentialBlockSize dtest"

This reverts commit 0480ff56f1441fc515d2c26ce33783e303423938.

* Disable hipOccupancyMaxPotentialBlockSize dtest on NVCC

* move extern declaration of ihipGetDeviceProperties to hip_module.cpp

* Update the limiation of 32 wavefronts per CU and 800/512 SGPRs for VI/pre-VI chips to calculate the occupancy
2019-06-20 05:58:29 +05:30