Grafico dei commit

123 Commit

Autore SHA1 Messaggio Data
Ben Sander e5ef8a2fd7 HIPCC adds paths to profiler include and libs by default.
Users who desire otherwise can set HIP_ATP_MARKER=0.
Also remove old unused hipcc_explicit_lib option.

Change-Id: I2bf07ba880329e7a3b1365dd33a3b2be6794370f
2016-10-27 23:09:31 -05:00
Ben Sander f95482c7c5 Add new hipdemangleatp and snapshot sample update for new functionality
Change-Id: Ie19c683b2b0bdfeb0c3fcf89444c2e21b7f606e7
2016-10-27 23:09:31 -05:00
Ben Sander bff88d0f63 Update docs and improve hipcc error message.
Change-Id: I25636d06959d02cc46c8c476d3948e91ff83ea47
2016-10-27 23:09:31 -05:00
Maneesh Gupta f1a4303b04 hipcc: Turn back linking hip_ir.ll by default
Change-Id: I9cec5a1a5a4791eddf6ef3e3332143ffc3ceadb6
2016-10-25 12:26:54 +05:30
Maneesh Gupta df1d6fcff2 bin/hipcc: Simplify HIP_HCC_SYS_INCLUDES_WA logic
Change-Id: I2d20d6edc1b5c0d065ba6ce6179441fa98712a87
2016-10-19 12:57:33 +05:30
Ben Sander baeb966cff Make HIP_HCC_SYS_INCLUDES_WA disable unless explicitly set =1
Change-Id: Ibfd1e049d51e420bd514b71e3652bc7029dfd4ba
2016-10-18 22:45:45 -05:00
Evgeny Mankov 2027fcd0a2 [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].
2016-10-18 22:38:04 +03:00
Maneesh Gupta 86c718a668 Disable linking hip_ir.ll by default
Change-Id: I4917f0d75c66eee347de41bc16d999fc563a5be2
2016-10-16 11:14:42 +05:30
Maneesh Gupta 933b8c1dc5 Bump HIP version to 1.0
Change-Id: Ie215a1ad4c1bf9b4a0ce94f750ddacce668bbc63
2016-10-15 22:42:45 +05:30
Ben Sander 165c58c3db Add LLVM/LC version info
Change-Id: I6d0f49c75777744dbbca255d45681ed663b401c0
2016-10-14 23:45:13 -05:00
Aditya Atluri 90a71c4be4 added compiler flag for polaris
Change-Id: Ib14c14c0618982ac7b48f5bc704c04b54ff40ed9
2016-10-13 14:16:48 -05:00
Maneesh Gupta 1329be958a .buildInfo -> .hipInfo & .version -> .hipVersion
Change-Id: I8023f4349621fd81c58615737b7e897649e0f7ca
2016-10-11 11:13:41 +05:30
Aditya Atluri dc1042ce6d 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
2016-10-10 15:29:50 -05:00
Maneesh Gupta f5d14382af Set _binary_kernel_* symbol value to 1
Change-Id: I92255a8238a8084010662a3ccf5d624dd2d352c0
2016-10-06 09:50:35 +05:30
Maneesh Gupta f74e54102f hipcc: Updated to use new include path
Change-Id: I4de6bb6978f2908dbb4d4cfd6e394d21fed90dd5
2016-10-05 10:54:42 +05:30
pensun 6a97ff68a4 update hipcc to search for lib using CUDA_PATH on NV path
Change-Id: I7e19d1f82237a8a13f3d8284b313ac049be3f920
2016-09-29 15:11:57 -05:00
Ben Sander 7bc1af2776 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
2016-09-26 16:36:01 -05:00
pensun b7fcdc6121 fix of HIPCC on libc++ option on HCC path
Change-Id: Ie0d3213a165fa13f033b777b490eb60b980d02da
2016-09-26 14:39:57 -05:00
Rahul Garg daef1d2906 Removed deprecated hipHostAlloc
Change-Id: Ia592a3545c5d72f37e049ce29f910e404323c01c
2016-09-26 10:58:46 +05:30
Maneesh Gupta ede43b3e6e hipcc: Don't try to linking unpinned_copy_engine
Change-Id: Iaa4d8b4f6dbb7940bba553f82c157a2ee9468c9e
2016-09-23 10:43:09 +05:30
Maneesh Gupta a5e951e3d9 Expose HIP_VERSION_* to HIP source and HIP applications
Change-Id: I6fb0d6711642c4fad2cd89b98707ee4b548b7243
2016-09-22 12:27:07 +05:30
Maneesh Gupta 27b5494537 Rename hipgenisa.sh -> hccgenco.sh
Change-Id: Icfdbb35acd7e84881bd1ab7ef3c85a3109902c6a
2016-09-07 10:23:02 +05:30
Maneesh Gupta 2c69d602c4 hipgenisa.sh: Refactor to handle multiple source files
Change-Id: Icc212c43b3bf8c33fb856cd6fc5be7bbebb38d42
2016-09-06 17:45:59 +05:30
Maneesh Gupta 380a6c412b hipcc: Pass ROCM_TARGET as env to hipgenisa.sh
Change-Id: Ib55b6366ae392ca10266ffae38722776ba91f274
2016-09-06 15:46:18 +05:30
Maneesh Gupta 2d9cf60127 hipgenisa.sh: Honors ROCM_TARGET env or uses default
Change-Id: Idabf77ff1610ba4adbc78cfa69eb6e87d7e94ee9
2016-09-06 15:45:11 +05:30
Maneesh Gupta 2bb7ad5eba hipgenisa.sh: exit if no command-line args specified
Change-Id: Ic1b532927fdbb5b9dfe6b2dd144ffad1ee2e6b16
2016-09-06 15:23:56 +05:30
Maneesh Gupta 23068b4ac5 hipcc: Pass ROCM_PATH via env to hipgenisa.sh
Change-Id: Ibc2dd8ce65645fd946f1a749effcd9ca0828c453
2016-09-06 15:11:17 +05:30
Maneesh Gupta 48e8b83e20 hipgenisa.sh: Look for ROCM_PATH in env or use default
Change-Id: I31733cb059c82d3315376f8f65a280c5737cd2a8
2016-09-06 15:10:07 +05:30
Evgeny Mankov 0e76fd82ac [HIPIFY][LEGACY] Do not warn on warp shuffle functions. 2016-09-05 11:18:48 +03:00
Maneesh Gupta fbc726d1b9 hipgenisa.sh improvements
- hipgenisa now unmangles kernel names
 - hipgenisa now uses a random temporary directory

Change-Id: I1d0204336bd8042dcf3f39c8f905fcceebd6b785
2016-09-04 16:20:49 +05:30
Maneesh Gupta fcd401dfb7 hipgenisa.sh: handle extern C on HCC path
Change-Id: I2daf09d2cb323ab34653988b668e8bd89f6db94a
2016-09-04 13:48:44 +05:30
Aditya Atluri 4f8c45d05a 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
2016-09-02 13:17:17 -05:00
Maneesh Gupta b0621a4794 FindHIP: First version of re-implementation
Change-Id: I84332a0f7d89271bf9370dbcd19d893119e738f9
2016-09-02 15:07:33 +05:30
Aditya Atluri cc8ce4d58c 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
2016-09-01 10:39:14 -05:00
Maneesh Gupta 14b0fc80c7 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
2016-09-01 15:06:36 +05:30
Maneesh Gupta 5456668776 hipgenisa.sh looks for hipcc relative to itself
Change-Id: Iac63fb5a87db1d735dbfa9697ce1f769a36b4d4a
2016-09-01 12:13:11 +05:30
Maneesh Gupta 2d1d6b2973 Fix typo in hipcc
Change-Id: I35817c08b503f438f412d4bfe84afc11b671dc77
2016-09-01 12:11:11 +05:30
Aditya Atluri 6a6a0ae32f added device code offline compilation for nvcc
Change-Id: I1f77131778b4dcfcf720b4367dd9f18ffaf1cbb3
2016-08-31 20:36:36 -05:00
Aditya Atluri c0cfdf2ee9 corrected path to hipgenisa.sh and fixed its working
Change-Id: I140055d5e800cd4b23253171ba889db5e63b637b
2016-08-31 20:16:48 -05:00
Aditya Atluri d5a6e22c59 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
2016-08-31 13:56:07 -05:00
Aditya Atluri 4a0c6c2d53 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
2016-08-31 13:05:57 -05:00
Aditya Atluri 4b377f63d0 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
2016-08-29 15:05:12 -05:00
Maneesh Gupta 17289ca67d hipcc needs to link against supc++
Change-Id: Ica0949099a0bdfe2a493341dc1cd96ec93f34f11
2016-08-26 10:35:30 +05:30
Maneesh Gupta 1d12e8cb1c Make it easier to switch between HIP library formats
Change-Id: Id16406795a81f4bb64dbcb76b9b8763ffe59aac6
2016-08-19 13:07:22 +05:30
Aditya Atluri 3d27bbd3db 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
2016-08-16 14:36:25 -05:00
Maneesh Gupta cd8c8171b7 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
2016-08-14 16:22:25 +05:30
Maneesh Gupta 0827e44a90 Updates to HIP version string format
HIP patch version is now a monotonically increasing number

Change-Id: Ia6e35794b702bbd2018c502564d0a65997819687
2016-08-12 23:21:37 +05:30
Aditya Atluri 3be747c41e Added fix for using HCC_VERSION
1. The variable is brought outside the conditional so that its scope is increased

Change-Id: I2d2689553e67930050fe5b3648739f0f72c3bbc8
2016-08-11 16:13:44 -05:00
Aditya Atluri ef68f2f293 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
2016-08-11 15:31:24 -05:00
Maneesh Gupta 76eeaf4fbb Fix build issues due to refactoring changes
Change-Id: I0a709ff4864244ba1b49e1a25327e3901ed6e17f
2016-08-09 22:49:32 +05:30