Commit Graph

45 Commitit

Tekijä SHA1 Viesti Päivämäärä
Maneesh Gupta f2e1118d7a Merge in the rocclr based hip runtime (#2032)
* Merge master-next changes in master (include vdi development in master branch)
2020-04-23 09:12:06 -07:00
jiabaxie e747efe2b4 Cleaned up error messages for HipEnvVarDriver test (#1825)
There were several error messages that appeared even if the hipEnvVarDriver.exe test passes and executes successfully. Now it is cleaned up. The following are those instances:

* When popen searches for directed_test directory but does not find it, it outputs an error, then finds the hipEnvVar at the same level. Currently the fix will prompt the test to only output an error if both searches for hipEnvVar fails.
* When assertion is used towards the later half of the test, conditions were set to specifically hide the devices, resulting in No Hip Device detected in the latter half of the test. The fix will make these errors not appear as they are intended to not find any devices. Assertions themselves are untouched.

HipEnvVarDriver.cpp has also been refactored. Reading HipEnvVar will now happen in a helper function for getDeviceNumber and getDevicePCIBusNumRemote, as the code to read HipEnvVar were really similar in them.
2020-02-28 16:46:12 +05:30
jiabaxie 7bbd420068 Updated hipEnvVarDriver to work with Windows (#1614)
* Updated hipEnvVarDriver to work with Windows

* Cleaned up a bit of code

* Fixed a part where putenv was used for both win and linux

* Defines moved to test_common.h and cleaned up code

* Cleaned up some macro defines and used const char instead

* Got rid of some excess commenting

* directory paths are unconditional

* Cleaned some duplicate code, and variables are now declared and defined together
2019-11-18 12:18:29 +05:30
ansurya dc8f556460 Fixed texture 2D mapping for pitched arrays & 3D Texture read (#1415)
Texture 2D image mapping for pitched arrays:
github issue: Texture Object's Buffer seems to be Misaligned #886
JIRA ticket: SWDEV-199313

SWDEV-151670 : Fixed issue with 3D texture with 4 components
SWDEV-151671 : Issue with 2D layered texture with 4 components
2019-11-07 13:17:46 +05:30
Vladislav Sytchenko 432380aa5d Remove extra #endif. 2019-10-18 16:40:29 -04:00
Vladislav Sytchenko f4440817cb _aligned_malloc() on Windows first takes size, then alignment, which is the opposite of how the similar function behaves on Linux. Memory allocated by it also has to be freed using _aligned_free(), unlike Linux where we can use regular free().
Edit aligned_alloc() macro and add a aligned_free() one to align with the above behaviour.
2019-10-17 18:58:32 -04:00
ansurya 96890792b0 Added new Memory API's (#1399)
Added new memory API's hipMemAllocPitch, hipMemAllocHost, hipMemsetD16, hipMemsetD16Async, hipMemsetD8Async
Modified to support all scenarios hipMemcpyParam2DAsync, hipMemcpyParam2D.
2019-10-04 13:36:31 +05:30
Sarbojit2019 6c06fb5f0a [dtests] Separated C macros from CPP header file (#1429)
* Separated C macros from CPP header file

* Updated review comment
2019-10-01 12:38:32 +05:30
Rahul Garg c741ad3c80 [dtests] refactor windows specific changes (#1313)
* [dtests] refactor windows specific changes

* Refactor hipMemoryAllocateCoherentDriver - PR- 1309

* Fix missing z in _putenv_s

* Revert "Fix missing z in _putenv_s"

This reverts commit 099a1b20a5c75c5f122d57c0ad2bca01745cdc9c.

* Refactor changes from PR 1299

* Update hipEnvVarDriver.cpp
2019-08-16 02:13:00 +00:00
Wen-Heng (Jack) Chung 365d08535b Add direct test for hipMemsetD32 and hipMemsetD32Async 2019-03-04 17:20:32 +00:00
Yaxun Sam Liu f49aed237b Fix get_time in tests for nvcc 2019-01-21 14:07:50 -05:00
Yaxun Sam Liu 75a67c216f Use chrono instead of sys/time.h in test
sys/time.h is not available on Windows. Use C++11 <chrono> instead so that the tests
compile on Windows.
2019-01-20 00:05:27 -05:00
Maneesh Gupta e1fe095471 Replace hipLaunchKernel -> hipLaunchKernelGGL
Change-Id: I4d99009e1199811d417becf1e1b934ec4d4e30be
2018-10-17 14:32:25 +05:30
Maneesh Gupta 9e47fccc89 Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344
2018-03-12 11:29:03 +05:30
Rahul Garg 2de0f1cafd Fixed hipPeerToPeer_simple test
- Moved test inside p2p dir
- Updated HIPCHECK to ignore hipErrorPeerAccessAlreadyEnabled
- Added check for mGPUs
2017-12-11 15:23:18 +05:30
Alex Voicu 0cc921f103 This implements the trivial change needed to move back from the hip{Something}_{x, y, z} macros to the natural CUDA syntax of Something.{x, y, z}. This is contained in lines 384-404 in hip_runtime.h. All of the other changes have to do with changing unit tests to use this syntax. The macros are retained for backwards compatibility. 2017-11-19 01:54:12 +00:00
Ben Sander c4612f3dc9 Test cleanup. 2017-10-07 07:54:10 -07:00
Maneesh Gupta 2448b6ee90 [dt] hip_texture.h -> hip_texture_types.h
Change-Id: If106efa0a2e52105d4025706fdbc291c27352a74
2017-07-19 12:46:18 +05:30
Ben Sander 863b7c3f56 Update tests.
Fix some NVCC issues.
Add hipStreamSync2, record_event tests.
2017-06-04 20:18:37 -05:00
Ben Sander 8dc968f036 Updates so hip compiles on CUDA. 2017-05-27 15:55:07 -05:00
Ben Sander 848d77ebb5 Make hipMultiThreadStreams1 test a little harsher.
Fail faster if synchronization rules are violated.
Run vectorAddRevers to read last elements of array first - if the
vector add kernel starts before preceding copy finishes we
will read stale data and flag the error.

Increase default array sizes, so synchronization errors more easily
exposed.
2017-05-16 19:04:25 -05:00
Ben Sander fad9104b5f Fix HIP_TRACE_API so kernel launch only printed when requested. 2017-05-16 19:04:25 -05:00
Ben Sander 8bc6ee5932 Add initial HIP_SYNC_NULL_STREAM=0 mode.
This eliminates host-synchronization for null stream.  Instead, the
null-stream uses GPU-side events to wait for other streams.
Default is OFF pending additional testing.

Add enhanced null-stream test.

Also refine HIP_TRACE_API.
2017-05-16 19:04:25 -05:00
Ben Sander ff9bed6535 hipHostMalloc allocation are mapped to all devices by default.
Support hipHostMallocPortable flag.
Default flags are hipHostMallocPortable | hipHostMallocMapped.

Also:
-refactor tests to move addCount and addCountReverse into HipTest
namespace.
-test multi-GPU host memory.
2017-05-10 17:34:36 -05:00
Aditya Atluri 2611de2477 fixed compilation bugs
1. Texture functions are now compiling fine
2. Fixed hipFuncCache to hipFuncCache_t

Change-Id: I8f815887e4de43ee115bbaff249905b236541c39
2016-11-21 08:56:30 -06:00
Aditya Atluri b3c16ea7b5 Fixed hipDeviceGetCacheConfig on nvcc path
1. Changed test macro to emit line numbers
2. Added getcacheconfig api test for nvcc path
3. Fixed hipFuncCache_t data type

TODO: With this commit, right now there are 2 func cache datatypes
a. hipFuncCache_t for runtime API
b. hipFuncCache for driver API

Map these to a single data type

Change-Id: Ia47c9f5d7c2633638051bf17b1103048a1ede973
2016-11-20 12:18:08 -06:00
Aditya Atluri 6692ee09d7 added tests to check nvcc runtime api output
Change-Id: Ifdd39b5d0a6a58d20a8e9745e59dd82d50a90e2f
2016-11-19 21:36:28 -06:00
Maneesh Gupta 1a67766dc5 Fix broken tests due to 9498447
Change-Id: I847c80f8462e1c955bdef957e6de2841a3a6ab29
2016-11-18 12:20:47 +05:30
Maneesh Gupta 5947878247 directed tests: Updated to use new hip include path
Change-Id: Iab1aee638b7158eb9674a19625dedf6471947e51
2016-10-04 22:20:50 +05:30
Ben Sander d882f4fb74 Doc and test updates.
Change-Id: I44cbd2c0de7cb692d0194d1bb8b8ae25c58d4e00
2016-09-02 09:46:59 -05:00
Maneesh Gupta 7d5cffdc17 Merge branch 'hiparray' into amd-develop
Change-Id: I63ca7b1db7b593ac5cfb3fd7cd5d08d6e4075a4c
2016-07-21 12:29:56 +05:30
Ben Sander 6a2a140f34 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
Ben Sander 98a766ba75 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 2d0fade1f7 hipHostRegister and hipHostMalloc refactor.
Note hipHostMalloc (not hipHostAlloc or hipMallocHost).
 -  the hipHost* is used for all HIP APIs dealing with Host memory.
    (including hipHostMalloc, hipHostFree, hipHostRegister,
hipHostUnregister, hipHostGetFlags, hipHostGetDevicePointer).
  - hipMallocHost is consistent with "hipMalloc" for allocating device
    memory.  Enumerations hipHostMalloc* also used as optional
    flags parm to hipHostMalloc.
2016-03-22 02:30:10 -05:00
Ben Sander 6984f24d3d fix nvcc compiler
- MallocHost and FreeHost deprecation.
- Change tests to call new hipHost* equivs.
- Add missing StreamSynchronize.
2016-03-19 04:20:15 -05:00
Aditya Atluri 4d4d592e0c Deprecating hipMallocHost to hipHostAlloc 2016-03-15 06:30:16 -05:00
Aditya Atluri 3127969d97 Added hipHostRegister for hip with tests and added copyright 2016-03-08 12:57:22 -06:00
Ben Sander 382638df1e Add abstraction for pinned/unpinned, and sync/async mem copies selection in tests 2016-02-25 04:21:24 -06:00
Ben Sander 28990567fb Improve async copy implementation.
- Add device-side signal waits when transitioning between command classes
(Kernel, H2D copy, D2H copy).
- Support waiting in staged memory copies as well.
- Add several chicken bits to control implementation:
    - HIP_DISABLE_ENQ_BARRIER
    - HIP_DISABLE_BIDIR_MEMCPY
    - HIP_ONESHOT_COPY_DEP
- Refactor signal pool to support efficient deallocation based on
signsequnm.
- Deallocate copy signals on eventSynchronize.
- Improve copy tests, add pingpong.
2016-02-22 23:15:24 -06:00
Ben Sander d5c777268a Track last command to a stream.
Passing simple tests.
2016-02-20 11:02:07 -06:00
Ben Sander 1128610801 Improve copy testing implementation.
- add tests for (unpinned/pinned) x H2H x D2D.
- Free memory at end of test.
2016-02-12 18:24:08 -06:00
Ben Sander 721508cc2f Create address tracker for am_alloc.
Tracks device where memory is allocated, pinned-host or device, and
more.

Uses memory-range-based lookups - so pointers that exist anywhere in

the range of hostPtr + size will find the associated AmPointerInfo.

The insertions and lookups use a self-balancing binary tree and
should support O(logN) lookup speed.
2016-02-12 18:24:08 -06:00
Ben Sander ce2fc0f7fe Test fixes:
- Remove reference to missing test.
- Add hipMemset back.
- Parse --gpu option to specify default starting GPU.
2016-02-08 22:55:23 -06:00
Ben Sander c482a3f456 in HIPCHECK, only run command once even if error occurs 2016-02-08 21:45:49 -06:00
Ben Sander 304171c1a2 Initial commit for GPUOpen Launch 2016-01-26 20:14:33 -06:00