Commit Graph

85 Commits

Author SHA1 Message Date
Ben Sander bcbeee6f2c Fix hierchical tests. Set compiler before project to avoid loop
Change-Id: Icede4e76cb47820b39403a7f1ba3f4bd3f47ed03
2016-06-17 15:18:57 -05:00
Ben Sander 1983af64ec Add first steps for CMake test hierarchy + initial launch_bounds. 2016-06-16 08:41:32 -05:00
Ben Sander 2ab19ca505 NVCC improvements.
- Complete translation tables for cudaError <-> hipError_t.
- Remove some odd errors that were not correctly translated or not used.
- Add HIPCHECK_API to test infrastructure.  Used for negative testing
  an API ; if a mismatch occurs it shows the expected return error
  code.  Can also print a warning rather than error.
- Enable hipMemoryAllocate on NV system, and review error coded.
- Add hipErrorName to nvcc.

Change-Id: I680427dcf32a5796d5913cf9e7f3b4c6f6b91599

Conflicts:
	tests/src/CMakeLists.txt

Bug fixes and improved docs for hipFree and hipHostFree.

    - Passing NULL pointer initialized runtime and return hipSuccess
      (not an error like before).
    - add negative test for this. (hipMemoryAllocate, improved)
    - Match NVCC errors for invalid pointers, add to test.
    - Update hipFree and hipHostFree docs.
    - hipGetDevicePointer always set *devicePointer=NULL, even for
      invalid flags.
    - Gate shared memory usage on specific HCC work-week.

Change-Id: I533b4fd3280a3d6cdbf05eb768976f0c7506c012
2016-06-16 06:13:51 +05:30
Aditya Atluri 25a273e4df Added more device functions
1. Added copyright for device float test
2. Added device double functions support
3. Added device double functions test
4. Corrected device function signatures in headers

Change-Id: I13c8829682c925992f5cad84062bc9f702fe4048
2016-06-10 09:46:31 -05:00
Aditya Atluri dcec58f899 added test for float device functions c6dfb0
Change-Id: I792a68610c6cfa54d6eee633c8605197bd4d2792
2016-06-10 09:03:43 -05:00
7SK 1463075608 fix_ldg
Change-Id: I53de5fa91b4f57d496ffe46787d197ae84dde4a4
2016-06-09 16:56:05 -04:00
Jack Chung bf4ba9e09e Squashed commit of the following:
commit 9548493fa754b3bf5c31cbdc2211db1e73e8c07c
Author: Jack Chung <whchung@gmail.com>
Date:   Mon May 23 11:57:23 2016 +0800

    Rename hipExternShared test to hipDynamicShared

    Change-Id: I180d9d539420fb69cfc121eceaa7db9da03483b2

commit 827081f8244a38f010789d556db0c4ff7b6422d8
Author: Jack Chung <whchung@gmail.com>
Date:   Mon May 23 11:56:27 2016 +0800

    Rename HIP_DECLARE_EXTERN_SHARED to HIP_DYNAMIC_SHARED

    Change-Id: I22362d179812ac547e0f11ba4e2bb999050e08ae

commit 4c277228ed41af187739610fa17eab1fb144c947
Author: Jack Chung <whchung@gmail.com>
Date:   Thu May 19 17:49:52 2016 +0800

    Adopt new interface to get dynamic LDS in hc.hpp

    Change-Id: I47b433b714633a4c97df87c40a0b1d3386429a00

commit 5a36117d777064113a528dc47b42e8c8413baa97
Author: Jack Chung <whchung@gmail.com>
Date:   Thu May 19 11:29:24 2016 +0800

    Add test patterns for regular expression to match "extern __shared__"

    These test patterns should better be saved as an individual test case, but I'm
    not familiar with HIP test structures so I leave them as comments in hipify as
    of now.

    Change-Id: I7fee89c89b9e73de2133357a226ec0c769733531

commit 1b26284168c7f5339f63338fd0149bed5d994656
Author: Jack Chung <whchung@gmail.com>
Date:   Thu May 19 11:25:23 2016 +0800

    Add one HIP unit test to use HIP_DECLARE_EXTERN_SHARED

    Change-Id: I4d9907815920693a74ea9d575fe26e7c67636109

commit 77b816ee5972b13d829d5bbcf06fbfd07acea2af
Author: Jack Chung <whchung@gmail.com>
Date:   Wed May 18 19:18:59 2016 +0800

    Adopt HIP_ prefix for DECLARE_EXTERN_SHARED macro

    Change-Id: I555ded16b449b67d2e20904013d86fe1ded6a2be

commit ef0997939c3578a9ae11621bf21c0416f04d2622
Author: Jack Chung <whchung@gmail.com>
Date:   Wed May 18 17:42:04 2016 +0800

    Modify hipify to support converting extern __shared__ to DECLARE_EXTERN_SHARED macro

    Added regular expression to search & replace extern __shared__ declarations to
    DECLARE_EXTERN_SHARED macro.

    Limitation:
    - Won't work if "extern __shared__" is declared at global scope

    Sample Usages:
    extern __shared__ double foo[];
    extern __shared__ unsigned int foo[];
    extern volatile __shared__ double foo[];
    extern volatile __shared__ unsigned int sdata[];
    extern __shared__ volatile unsigned int sdata[];
    extern __shared__ T s[];
    extern __shared__ T::type s[];
    extern __shared__ blah<T>::type s[];
    extern __shared__ typename mapper<Float>::type s_data[];
    extern __attribute__((used)) __shared__ typename mapper<Float>::type s_data[];

    Change-Id: I2be0b7039adeddb789f5a2b067d403a43fdc3e26

commit 93ff268724493aedfacdcd5a5aa9a100f4ebaed0
Author: Jack Chung <whchung@gmail.com>
Date:   Wed May 18 15:13:09 2016 +0800

    Introduce DECLARE_EXTERN_SHARED macro to encapsulate "extern __shared__" decls

    Change-Id: I93b2d37c763195b0ca9fd0afee78605a1e3272db

commit cff9c95412de343cc6405158b5acc4f1029267ff
Author: Jack Chung <whchung@gmail.com>
Date:   Wed May 18 12:53:54 2016 +0800

    Add __get_dynamic_groupbaseptr() to point to dynamic LDS

    Change-Id: I97b548d8a691488057617c551a8f331cad7afc77

Change-Id: I84e7875b76fa1f59e860e19c93bd4209cdd1fd2c
2016-06-05 06:20:44 -04:00
Maneesh Gupta 842bf45008 Disable failing/unsupported test cases on nvcc platform
Change-Id: Iad00db3dd1663303c43eed81d26be76b3fb1ba85
2016-05-20 12:30:37 +05:30
Maneesh Gupta 87f402327e Link against libc++ only on hcc platform
Change-Id: I93569a5b8a9910dca0c88408cbe54fbb32384fcf
2016-05-20 12:24:54 +05:30
Ben Sander 993ca9cee3 Link test with libc++ 2016-05-02 23:38:43 -05:00
Ben Sander 6e332a9c9c add make_hip_executable_libcpp 2016-05-02 23:32:52 -05:00
Ben Sander 4b1d3d2cba enable hipHostRegister 2016-04-28 17:54:03 -05:00
Maneesh Gupta ffdf6ab23b Merge branch 'release_0.84.00' into privatestaging
Conflicts:
	include/hcc_detail/hip_runtime.h
	src/hip_hcc.cpp
2016-04-22 10:55:58 +05:30
Aditya Atluri f74b7a3636 added support pinned dma memcpy between host and device 2016-04-20 14:21:22 -05:00
Ben Sander 148799a371 build hipHostRegister but dont run it 2016-04-19 11:56:12 -05:00
Aditya Atluri 50d6cc6b11 added memcpy and p2p test 2016-04-16 17:38:06 -05:00
streamhsa 76f2670cef Add __ldg 2016-04-16 21:12:09 +08:00
Aditya Atluri 2e80de6dcb improved error returns for hipHostRegister/UnRegister functions 2016-04-15 10:42:31 -05:00
Maneesh Gupta 5a31bad821 Replace /opt/hcc -> /opt/rocm/hcc and /opt/hsa -> /opt/rocm/hsa 2016-04-15 12:56:31 +05:30
Ben Sander b0529e04f1 Clean up disable.
Add USE_HCC_LOCK (disabled)
Disable USE_PEER_TO_PEER.
2016-04-11 09:09:36 -05:00
Ben Sander 4a0c0479d4 add simple negative P2P tests 2016-04-11 07:58:59 -05:00
Ben Sander 83f0de7806 P2p checkpoint.
- set USE_PEER_TO_PEER=3 (requires HCC "am_memtracker_update_peers")
- when enabling peer, turn it on for previously allocated memory.
- hipDeviceCanAccessPeer is no longer self-ware (self does not qualify
  as a peer)
- device peerlist always includes self, so when we call allow_access
  we never remove self access.
- hipDeviceReset() removes old peer mappings.
2016-04-11 07:58:59 -05:00
Ben Sander 71dac8e37c Add simple P2P test 2016-04-11 07:58:58 -05:00
Maneesh Gupta 34ee916681 Directed tests: make HIP_BUILD_LOCAL as default 2016-04-09 22:05:45 +05:30
Maneesh Gupta 033269c513 Enable directed tests to build HIP locally via cmake option 2016-04-04 13:53:24 +05:30
Maneesh Gupta 9fd0a182f6 Revert "Initial (non-default) support for shared library HIP"
This reverts commit 9de57129b4.
2016-04-01 16:07:07 +05:30
Maneesh Gupta 9de57129b4 Initial (non-default) support for shared library HIP 2016-04-01 15:45:32 +05:30
Aditya Atluri 72c72d8748 moved cpp specific device code from headers to source 2016-03-31 04:45:00 -05:00
Ben Sander a37a019b01 rename to hipMultiThreadDevice for consistency 2016-03-29 17:33:29 -05:00
Ben Sander 23e5eb8912 Test improvements
- partition hipThreadSafeDevice into smaller pieces.
- Add debug to hipMultiThreadStream.
- print more precision when mismatch detected.
- enable more tests in CMakeFiles.txt.
2016-03-29 17:29:31 -05:00
Ben Sander 756c0edf9b Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	include/hcc_detail/trace_helper.h
2016-03-29 05:56:03 -05:00
scchan 2ddb8fface remove the --hipcc_explicit_lib 2016-03-28 13:56:23 -05:00
Ben Sander 530ab9434a Make ihipDevice_t thread-safe.
Move critical data into separate class and protect with LockAccessor
wrapper class.

For device, the streams list is the critical data since it is modified when
streams are created or destroyed.   The streams list is accessed in
several places including when synchronizing across all streams on the
device (ie from the default stream).
Other device data is set once by the device cosntructor and is not critical
so

All functions which acquire the LockAccessor now named with "locked_" prefix.
2016-03-26 10:46:20 -05:00
Aditya Atluri b371dd58ea updated hipdevicesync test 2016-03-25 06:41:49 -05:00
Aditya Atluri 7a0066eb6f added functional tests for hip device apis 2016-03-25 05:49:33 -05:00
Aditya Atluri ae46b221df corrected cmake 2016-03-24 11:17:57 -05:00
Ben Sander 0845164012 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-03-24 14:05:58 -05:00
Ben Sander 5e3428acc1 revert CMakelists 2016-03-24 13:20:25 -05:00
Ben Sander c567189cb8 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-03-24 13:10:33 -05:00
Ben Sander eb33395045 Add --hipcc_explicit_lib option
Tells hipcc not to add /opt/hip or -lhip_hcc to command-line
(since it has already been done).
2016-03-24 11:53:33 -05:00
Ben Sander c4e1aba862 CMake improvements.
- Directed tests build hip_hcc as subdir.
- Support HCC_HOME env var to control which HCC to use for build
  hip_hcc.
2016-03-24 10:16:35 -05:00
Aditya Atluri c5ec73736d added CR and hipsetdeviceflags func 2016-03-24 07:04:01 -05:00
Aditya Atluri 794007c3e8 Split files based on functionality and changed cmake file 2016-03-24 04:57:30 -05:00
Aditya Atluri 7920fd9a47 moved variables to headers 2016-03-23 12:59:52 -05:00
Aditya Atluri 89bfc0e375 WIP added modular feature for device apis 2016-03-23 07:54:01 -05:00
Ben Sander 0f81c5bcf2 use the CPU_Agent for memory copies to indicate direction. 2016-03-23 10:29:44 -05:00
Ben Sander d07b347cac Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	src/hip_hcc.cpp
2016-03-23 03:22:09 -05:00
Ben Sander b6b3fea05b use codexl marker interface to mark HIP function/begin end.
- Creates markers in HIP group and they show up in CodeXL trace
- Marker text includes HIP functioin arguments
- (Add trace_helper to convert arguments to strings)
- Still need to add HIP_INIT_API for ~30 HIP functions.
2016-03-23 01:17:53 -05:00
Aditya Atluri 52cf63472c Revert "Revert "fixed memory free apis""
This reverts commit 287ba34aca.
2016-03-21 10:40:42 -05:00
Aditya Atluri 287ba34aca Revert "fixed memory free apis"
This reverts commit 96a1899df7.
2016-03-21 10:36:11 -05:00