Commit Graph

121 Commits

Author SHA1 Message Date
Ben Sander 3b4fc56e30 Update docs and improve hipcc error message.
Change-Id: I25636d06959d02cc46c8c476d3948e91ff83ea47


[ROCm/clr commit: 03caa1de8a]
2016-10-27 23:09:31 -05:00
Maneesh Gupta 7baad0e7c1 hipcc: Turn back linking hip_ir.ll by default
Change-Id: I9cec5a1a5a4791eddf6ef3e3332143ffc3ceadb6


[ROCm/clr commit: 2d9ff6acd6]
2016-10-25 12:26:54 +05:30
Maneesh Gupta 6bd6575ce0 bin/hipcc: Simplify HIP_HCC_SYS_INCLUDES_WA logic
Change-Id: I2d20d6edc1b5c0d065ba6ce6179441fa98712a87


[ROCm/clr commit: 5f2bf5219a]
2016-10-19 12:57:33 +05:30
Ben Sander 42685bcd2a Make HIP_HCC_SYS_INCLUDES_WA disable unless explicitly set =1
Change-Id: Ibfd1e049d51e420bd514b71e3652bc7029dfd4ba


[ROCm/clr commit: 965e2e00a8]
2016-10-18 22:45:45 -05:00
Evgeny Mankov 9caa8a9351 [hipcc] A workaround for [SWDEV-105366] HCC's omitting of system includes while compiling kernel code leads to 'file not found' error.
Missing includes are set explicitly.
Workaround is switched on by default, to disable it set HCC_SYS_INCLUDES_WA=0.

WA will be removed after fixing [SWDEV-105366].


[ROCm/clr commit: 5c7146eb62]
2016-10-18 22:38:04 +03:00
Maneesh Gupta 4aa615be6a Disable linking hip_ir.ll by default
Change-Id: I4917f0d75c66eee347de41bc16d999fc563a5be2


[ROCm/clr commit: 3c0327451d]
2016-10-16 11:14:42 +05:30
Maneesh Gupta e5e1d0ec1d Bump HIP version to 1.0
Change-Id: Ie215a1ad4c1bf9b4a0ce94f750ddacce668bbc63


[ROCm/clr commit: 3b2dbd2a6d]
2016-10-15 22:42:45 +05:30
Ben Sander b375932a4b Add LLVM/LC version info
Change-Id: I6d0f49c75777744dbbca255d45681ed663b401c0


[ROCm/clr commit: e5da443535]
2016-10-14 23:45:13 -05:00
Aditya Atluri adca18892a added compiler flag for polaris
Change-Id: Ib14c14c0618982ac7b48f5bc704c04b54ff40ed9


[ROCm/clr commit: 1970ea07f1]
2016-10-13 14:16:48 -05:00
Maneesh Gupta 561719b913 .buildInfo -> .hipInfo & .version -> .hipVersion
Change-Id: I8023f4349621fd81c58615737b7e897649e0f7ca


[ROCm/clr commit: 7e277ef6e5]
2016-10-11 11:13:41 +05:30
Aditya Atluri df5370763a added threadfence feature for hcc
1. Added feature for __threadfence and __threadfence_block
2. Added feature for using LLVM IR files directly while compilation
3. Added test for threadfence and threadfence_block

Change-Id: Ib7e5d89b4cca1a135952b317e5809cd05b56a3c9


[ROCm/clr commit: 09c9953649]
2016-10-10 15:29:50 -05:00
Maneesh Gupta 7c9a869b4a Set _binary_kernel_* symbol value to 1
Change-Id: I92255a8238a8084010662a3ccf5d624dd2d352c0


[ROCm/clr commit: 747c63bee5]
2016-10-06 09:50:35 +05:30
Maneesh Gupta a61eb557ac hipcc: Updated to use new include path
Change-Id: I4de6bb6978f2908dbb4d4cfd6e394d21fed90dd5


[ROCm/clr commit: 948d94def8]
2016-10-05 10:54:42 +05:30
pensun ff4b8932c9 update hipcc to search for lib using CUDA_PATH on NV path
Change-Id: I7e19d1f82237a8a13f3d8284b313ac049be3f920


[ROCm/clr commit: fea7dc684a]
2016-09-29 15:11:57 -05:00
Ben Sander d10d1425f3 Small tool, doc, sample enhancements.
- Expand message when HIP version mismatch detected.
- Doc touchup.
- change sorting of hipBusBandwidth so byte results shown at top.
-

Change-Id: Ifb4e44a5fdfb65d59c4994b11e5f13385705f7e0


[ROCm/clr commit: 061bcc6a5c]
2016-09-26 16:36:01 -05:00
pensun 62ecc57afd fix of HIPCC on libc++ option on HCC path
Change-Id: Ie0d3213a165fa13f033b777b490eb60b980d02da


[ROCm/clr commit: 5bdb9e349c]
2016-09-26 14:39:57 -05:00
Rahul Garg 0206224b5e Removed deprecated hipHostAlloc
Change-Id: Ia592a3545c5d72f37e049ce29f910e404323c01c


[ROCm/clr commit: c313836013]
2016-09-26 10:58:46 +05:30
Maneesh Gupta a95dd949e9 hipcc: Don't try to linking unpinned_copy_engine
Change-Id: Iaa4d8b4f6dbb7940bba553f82c157a2ee9468c9e


[ROCm/clr commit: b088ca2a53]
2016-09-23 10:43:09 +05:30
Maneesh Gupta d2cf70716b Expose HIP_VERSION_* to HIP source and HIP applications
Change-Id: I6fb0d6711642c4fad2cd89b98707ee4b548b7243


[ROCm/clr commit: ba9d9708f7]
2016-09-22 12:27:07 +05:30
Maneesh Gupta 433832adf1 Rename hipgenisa.sh -> hccgenco.sh
Change-Id: Icfdbb35acd7e84881bd1ab7ef3c85a3109902c6a


[ROCm/clr commit: 3cfeb3cc88]
2016-09-07 10:23:02 +05:30
Maneesh Gupta 1e18d3d53b hipgenisa.sh: Refactor to handle multiple source files
Change-Id: Icc212c43b3bf8c33fb856cd6fc5be7bbebb38d42


[ROCm/clr commit: 0636a6e209]
2016-09-06 17:45:59 +05:30
Maneesh Gupta 597f851ad0 hipcc: Pass ROCM_TARGET as env to hipgenisa.sh
Change-Id: Ib55b6366ae392ca10266ffae38722776ba91f274


[ROCm/clr commit: 3b9ec7f606]
2016-09-06 15:46:18 +05:30
Maneesh Gupta f8ae0cbc92 hipgenisa.sh: Honors ROCM_TARGET env or uses default
Change-Id: Idabf77ff1610ba4adbc78cfa69eb6e87d7e94ee9


[ROCm/clr commit: 5c320865d2]
2016-09-06 15:45:11 +05:30
Maneesh Gupta f29b8e4b2c hipgenisa.sh: exit if no command-line args specified
Change-Id: Ic1b532927fdbb5b9dfe6b2dd144ffad1ee2e6b16


[ROCm/clr commit: 074ecd6368]
2016-09-06 15:23:56 +05:30
Maneesh Gupta f7b72b1c63 hipcc: Pass ROCM_PATH via env to hipgenisa.sh
Change-Id: Ibc2dd8ce65645fd946f1a749effcd9ca0828c453


[ROCm/clr commit: ff2de7892c]
2016-09-06 15:11:17 +05:30
Maneesh Gupta 4101377371 hipgenisa.sh: Look for ROCM_PATH in env or use default
Change-Id: I31733cb059c82d3315376f8f65a280c5737cd2a8


[ROCm/clr commit: 5c15558be2]
2016-09-06 15:10:07 +05:30
Evgeny Mankov aae58634f5 [HIPIFY][LEGACY] Do not warn on warp shuffle functions.
[ROCm/clr commit: 0970b596e9]
2016-09-05 11:18:48 +03:00
Maneesh Gupta 9461fc1cec hipgenisa.sh improvements
- hipgenisa now unmangles kernel names
 - hipgenisa now uses a random temporary directory

Change-Id: I1d0204336bd8042dcf3f39c8f905fcceebd6b785


[ROCm/clr commit: 2c11ce3515]
2016-09-04 16:20:49 +05:30
Maneesh Gupta c32eca602d hipgenisa.sh: handle extern C on HCC path
Change-Id: I2daf09d2cb323ab34653988b668e8bd89f6db94a


[ROCm/clr commit: 16c61fd6e2]
2016-09-04 13:48:44 +05:30
Aditya Atluri d864a28183 corrected offline kernel compilation on hipcc path
1. hipgenisa.sh now adds int main(){} during kernel compilation. User does not have to put it there
2. Renamed vcpy_isa.cpp to vcpy_kernel.cpp
3. Removed vcpy_isa.cu as the kernel code should be common for both paths
4. Changed Makefile and runkernel.cpp to work with above changes

Change-Id: I9f8c84706b44bb500bc493a68e959762b55a0142


[ROCm/clr commit: 8f536d8580]
2016-09-02 13:17:17 -05:00
Maneesh Gupta 58a2e6086b FindHIP: First version of re-implementation
Change-Id: I84332a0f7d89271bf9370dbcd19d893119e738f9


[ROCm/clr commit: de24b6d228]
2016-09-02 15:07:33 +05:30
Aditya Atluri 8bbd449f9f Fixed offline kernel compilation
1. Removed vcpy_isa.ptx as it should be generated during make
2. Made argument padding specific to hcc path
3. Renamed --gencodeobject to --genco
4. Changed Makefile to work on both nvcc and hcc path

Change-Id: Ifd053d541085d9ce4fd37bc21b07674786c7163e


[ROCm/clr commit: f22fda1291]
2016-09-01 10:39:14 -05:00
Maneesh Gupta 30c04a4f28 Updates to gencodeobject generation logic
- hipcc honors HIPCC_VERBOSE for gencodeobject too
    - fixed gencodeobject generation logic for nvcc path
    - hipgenisa.sh is no longer passed the --gencodeobject flag

Change-Id: Iab83c18a6decef445fda8468ba5de10cd7935046


[ROCm/clr commit: 1446ad3b92]
2016-09-01 15:06:36 +05:30
Maneesh Gupta cc302c9729 hipgenisa.sh looks for hipcc relative to itself
Change-Id: Iac63fb5a87db1d735dbfa9697ce1f769a36b4d4a


[ROCm/clr commit: adcc0e32d2]
2016-09-01 12:13:11 +05:30
Maneesh Gupta 0b63bdc501 Fix typo in hipcc
Change-Id: I35817c08b503f438f412d4bfe84afc11b671dc77


[ROCm/clr commit: 9eeb6c31ae]
2016-09-01 12:11:11 +05:30
Aditya Atluri 606a27d2d7 added device code offline compilation for nvcc
Change-Id: I1f77131778b4dcfcf720b4367dd9f18ffaf1cbb3


[ROCm/clr commit: 6cd10125e9]
2016-08-31 20:36:36 -05:00
Aditya Atluri 207f9f7434 corrected path to hipgenisa.sh and fixed its working
Change-Id: I140055d5e800cd4b23253171ba889db5e63b637b


[ROCm/clr commit: bcbf2973a3]
2016-08-31 20:16:48 -05:00
Aditya Atluri 3011696544 added sample for how-to-use pre-compiled kernels1. Corrected the exit output of kernel compilation by hipcc
2. Added sample which loads/run kernel binary during runtime?

Change-Id: I26ccaca1f844fee317592e26c9e654ce548b96a8


[ROCm/clr commit: 667ec7cbe2]
2016-08-31 13:56:07 -05:00
Aditya Atluri f97eec0d3b added kernel only compilation feature for hipcc
1. Added hipgenisa.sh file to compile kernel code to hsa code object
2. Changed hipcc to call hipgenisa.sh, making hipcc compiling the kernels

Change-Id: I976459c1ebb24343e1b1fe38b4c3a203f1adffa9


[ROCm/clr commit: 2f8b2fca6b]
2016-08-31 13:05:57 -05:00
Aditya Atluri 41a363a6b7 Changed module api to work with nvcc and hipcc path
- Added cuda and cudart linking for nvcc path in hipcc
- Added hipMemcpyHtoD and hipMemcpyDtoH for nvcc path
- Changed hipDeviceptr to hipDeviceptr_t
- Fixed hipMemcpy*to* API signatues

Change-Id: I6ef076b507f92502efda475c83dcdcdd462afc37


[ROCm/clr commit: fb0c432095]
2016-08-29 15:05:12 -05:00
Maneesh Gupta 7064683540 hipcc needs to link against supc++
Change-Id: Ica0949099a0bdfe2a493341dc1cd96ec93f34f11


[ROCm/clr commit: 0c051fede1]
2016-08-26 10:35:30 +05:30
Maneesh Gupta 9fedb8dc6d Make it easier to switch between HIP library formats
Change-Id: Id16406795a81f4bb64dbcb76b9b8763ffe59aac6


[ROCm/clr commit: 8f19a51521]
2016-08-19 13:07:22 +05:30
Aditya Atluri 5513a08601 Added kernel compilation driver apis
1. Added 2 new driver apis, hipModuleLoad, hipModuleGetFunction

Change-Id: If464a7fad178121e3da791c7ac9e17ebc01a9cd0
Issues: When a sample written with them shows Aborted (core dumped) when exiting


[ROCm/clr commit: b8597512ca]
2016-08-16 14:36:25 -05:00
Maneesh Gupta 2d8b482864 Several improvements to hipcc, hipconfig and CMakeLists.txt
- moved hip base version information back to hipconfig
 - fixed bug in hip patch version generation
 - renamed .hipconfig to .buildInfo
 - HCC_HOME is logged to .buildInfo only when HIP_DEVELOPER environment
 - variable is defined
 - hipcc and hipconfig require perl 5.10.1 or above
 - replaced unless defined with logic-defined or
 - added ROCM_TARGET for carrizo
 - moved config parsing to a subroutine
 - config parsing does not set VALID key anymore
 - hipcc honors HCC_HOME environment variable above buildInfo
 - hip_base package now bundles .version in bin directory

Change-Id: Iaeea6d7529671220b02e07337946aaee0af90310


[ROCm/clr commit: 85784149fa]
2016-08-14 16:22:25 +05:30
Maneesh Gupta dbf39d1c5b Updates to HIP version string format
HIP patch version is now a monotonically increasing number

Change-Id: Ia6e35794b702bbd2018c502564d0a65997819687


[ROCm/clr commit: 346ae7bc42]
2016-08-12 23:21:37 +05:30
Aditya Atluri 570e6242a3 Added fix for using HCC_VERSION
1. The variable is brought outside the conditional so that its scope is increased

Change-Id: I2d2689553e67930050fe5b3648739f0f72c3bbc8


[ROCm/clr commit: 5a47758033]
2016-08-11 16:13:44 -05:00
Aditya Atluri a178c9b9e2 Change hipcc to take HCC_HOME from hipconfig by default
1. Current implementation checks both env var and value in hipconfig and reports error
2. New implementation gives value in hipconfig with highest priority
3. If hipconfig is not present, fall back to env variables.

To Devs: No need to switch between environment variables for different HCC + different HIP.

Change-Id: I6cdf37e1429d7f07be3a68c7e5ba1533d832962b


[ROCm/clr commit: df1dd53453]
2016-08-11 15:31:24 -05:00
Maneesh Gupta 0dd56073db Fix build issues due to refactoring changes
Change-Id: I0a709ff4864244ba1b49e1a25327e3901ed6e17f


[ROCm/clr commit: fcafb975a6]
2016-08-09 22:49:32 +05:30
Maneesh Gupta f468d7b0b8 .hipconfig now lives in lib
Also moved reading .hipconfig to begining of hipcc

Change-Id: Ibb9d32bef64a79f189aa037c36814759c8cc8052


[ROCm/clr commit: 6a2e92f7c8]
2016-08-03 12:01:48 +05:30
Maneesh Gupta 9739e7b9c6 hipcc reads .hipconfig
hipcc dies if HCC_VERSION is not same as the one used to build HIP

Change-Id: I180c0108812fe5cb6c5304477557c524a4a61f75


[ROCm/clr commit: 1381681335]
2016-08-03 11:32:08 +05:30