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


[ROCm/hip commit: 2ab19ca505]
This commit is contained in:
Ben Sander
2016-06-10 20:12:46 -05:00
committed by Maneesh Gupta
parent 8e5334a376
commit 0268c1e4e6
9 changed files with 120 additions and 53 deletions
+18
View File
@@ -57,6 +57,12 @@ THE SOFTWARE.
printf ("error: TEST FAILED\n%s", KNRM );\
abort();
#define warn(...) \
printf ("%swarn: ", KYEL);\
printf (__VA_ARGS__);\
printf ("\n");\
printf ("warn: TEST WARNING\n%s", KNRM );\
#define HIPCHECK(error) \
{\
@@ -76,6 +82,18 @@ THE SOFTWARE.
__FILE__, __LINE__,KNRM); \
}
#define HIPCHECK_API(API_CALL, EXPECTED_ERROR) \
{\
hipError_t _e = (API_CALL);\
if (_e != (EXPECTED_ERROR) ) { \
failed("%sAPI '%s' returned %d(%s) but test expected %d(%s) at %s:%d%s \n", \
KRED, #API_CALL, _e, hipGetErrorName(_e), \
EXPECTED_ERROR, hipGetErrorName(EXPECTED_ERROR), \
__FILE__, __LINE__,KNRM); \
}\
}
// standard command-line variables:
extern size_t N;
extern char memsetval;