Граф коммитов

94 Коммитов

Автор SHA1 Сообщение Дата
Aditya Atluri f6b38b18b6 Added feature for --default-streams not working tests and hipcc 2016-03-20 08:08:33 -05:00
Ben Sander 80d708846a Implement hipHostFree on HCC path 2016-03-19 23:25:11 -05:00
Ben Sander 03731020f1 Refactor copy - place common code in resolveMemoryKind. 2016-03-19 22:56:10 -05:00
Ben Sander a88c2b1ec9 Refactor waitALlDevices and async mem copy.
- move waitAllStreams to device member function.
- create separate stream member function for copyAsync, like copySync.
  hipMemcpyAsync now calls the copyAsync.
2016-03-19 05:42:19 -05:00
Ben Sander aaa2429feb Swap in corrected hipHostAlloc (bad merge) 2016-03-19 04:11:08 -05:00
Ben Sander 90ad8ddc5d Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	src/hip_hcc.cpp
2016-03-19 03:22:09 -05:00
Ben Sander 44522eb607 Fix copy and sync bugs. Remove extra sync in default stream.
- NULL stream was waiting for itself to be empty before each command.
- Force "blocking" streams to wait for NULL to empty.  This was missing
  before.
- async copy was disabling itself via trueAsync=false for common cases.

Refactor:
- rename _null_stream to _default_stream.
- move some null sync function to defaultSync, move to dev member func.
2016-03-19 02:44:26 -05:00
Ben Sander e64174f47a Refactor copy code.
-Move staging buffer locks inside the staging buffer code.
-Remove dedicated per-device completion_signal + per-device lock -
instead allocated signal from the per-stream pool.   This elimintes
the lock and allows more concurrency.
-remove switch HIP_DISABLE_BIDIR_MEMCPY
2016-03-18 03:02:00 -05:00
Ben Sander 3b45e064f9 Refactor staging buffer and sync copies.
- refactor staging buffer to operate on hsa* data structures not
  hc::accelerator.
- use hsa_memory_allocate to allocate staging buffers rather than
  am_alloc.
- Refactor device reset with single member function.  Don't reallocate
  staging buffers on reset.
- Properly track dependencies based on command type.  Add new deps for
  H2D and D2D rather than overloading H2D.
2016-03-17 20:09:10 -05:00
Ben Sander 1b7cc7d921 Refactor to isolate staging buffer code. 2016-03-17 00:20:56 -05:00
Ben Sander a1879ba59b Start separaration of staging_buffer.cpp code.
Still #include staging_buffer.cpp into hip_hcc.cpp.
Directed tests compile hip_hcc to static library and use the library.
2016-03-16 22:26:49 -05:00
Ben Sander 8acb53e160 Checkpoint code cleanup.
- Refactor ihipStream in prep for thread-safe implementation.
- Do some work on PinInPlace implementation.
2016-03-16 21:16:29 -05:00
Aditya Atluri 4b96e8c789 changed flag in hipHostRegister 2016-03-16 08:01:53 -05:00
Aditya Atluri 6beed19460 src/ fixed hipHostAllocDefault flags 2016-03-16 07:32:54 -05:00
Ben Sander 15a8e8f8a0 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	src/hip_hcc.cpp
	tests/src/CMakeLists.txt
2016-03-14 15:01:26 -05:00
Ben Sander 0d05517d0a enable DB, comments 2016-03-14 14:40:41 -05:00
Ben Sander 59f0ef2801 Remove ROCR_V2, assume=1 2016-03-12 04:08:13 -06:00
Ben Sander de4bb0ca0e Remove USE_AM_TRACKER (assume 1) 2016-03-12 04:04:57 -06:00
Ben Sander ac272932f6 Improve error reporting.
use throw with error class.
fix bug when memcpyDefault resolved to D2D copy.
2016-03-12 04:02:04 -06:00
Aditya Atluri 3127969d97 Added hipHostRegister for hip with tests and added copyright 2016-03-08 12:57:22 -06:00
Aditya Atluri dfa9051574 v2 added support for unpinned async memcpy 2016-03-08 03:19:50 -06:00
Aditya Atluri 1a61733699 Revert "Fixed passing unpinned memory to async memcpy"
This reverts commit bf53992605.
2016-03-08 03:17:27 -06:00
Aditya Atluri bf53992605 Fixed passing unpinned memory to async memcpy 2016-03-08 03:14:49 -06:00
Ben Sander 9b1b108ea8 Enhance HIP trace debug functions.
- Control with HIP_DB=mask (env var).  See src/hip_hcc.cpp for mask
  values:
    #define DB_API    0 /* 0x01 - shortcut to enable HIP_TRACE_API on single switch */
    #define DB_SYNC   1 /* 0x02 - trace synchronization pieces */
    #define DB_MEM    2 /* 0x04 - trace memory allocation / deallocation */
    #define DB_COPY1  3 /* 0x08 - trace memory copy commands. . */
    #define DB_SIGNAL 4 /* 0x10 - trace signal pool commands */
- Combine with HIP_TRACE to see debug with API trace.
- Use colors to distinguish different flows of debug.
- Add define COMPILE_DB_TRACE to allow removing all debug at compile-time
2016-03-06 23:50:52 -06:00
Aditya Atluri 45408db5dc added feature for hipHostGetFlags for CUDA and HIP 2016-03-06 12:17:30 -06:00
Aditya Atluri d5499594ce added flags support to be used later 2016-03-06 08:40:33 -06:00
Aditya Atluri 8a21b42943 corrected hipDeviceGetProperties to hipGetDeviceProperties - not docs 2016-03-06 08:31:04 -06:00
Aditya Atluri 411154f93f Added hipHostAlloc with hipHostAllocMapped flag 2016-03-05 15:57:56 -06:00
Ben Sander 5a3b3e1be4 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-03-04 08:22:56 -06:00
Ben Sander 4a1238cf64 Add FORCE_SAMEDIR_DEP for copies. 2016-03-04 08:21:15 -06:00
Aditya Atluri d145e9d83c v2: Fixed implementation of hipMemcpyDefault flag 2016-03-04 06:00:04 -06:00
Ben Sander b529941f70 Add define to disable STREAM thread-safety 2016-03-03 10:49:25 -06:00
Aditya Atluri 696476f3e0 Added support for hipMemcpyDefault 2016-03-03 10:30:06 -06:00
Aditya Avinash Atluri 6d9184b7a9 Update hip_hcc.cpp 2016-03-03 13:59:43 -06:00
Aditya Avinash Atluri 7b868eb274 Fix output of hipPointerGetAttributes
The output of hipPointerGetAttributes is fixed to match CUDA counterpart.
2016-03-03 13:58:18 -06:00
Aditya Atluri 5efc4ce08a Initialize hip when single kernel is called 2016-03-02 08:08:45 -06:00
Aditya Avinash Atluri a845dccfef H2H Async memcpy fix
In this change, the cpu memcpy will wait until all the commands in the current stream are done.
Note that, it only waits on current stream. But not on other streams.
2016-02-29 12:49:50 -06:00
Ben Sander 4909faf8e3 Copy dependency bug fixes and test modes.
Add dependency for host-to-host copy.

Add debug mode for HIP_DISABLE_HW_COPY_DEP and
HIP_DISABLE_HW_KERNEL_DEP - setting these to -1 now ignores
all dependencies.
2016-02-28 21:19:49 -06:00
Ben Sander be0d3510f5 touchup 2016-02-28 21:08:53 -06:00
pensun ee53ef507f Test cases for HIP_VISIBLE_DEVICES/CUDA_VISIBLE_DEVICES.
hipEnvVar is the base test case, to be called by hipEnvVarDriver
at the run time.
Test case includes tests for normal use case of the environment
variable, invalid value/sequence and use CUDA_VISIBLE_DEVICES as a
alternative.
2016-02-27 14:48:00 -06:00
pensun 17987b42c5 improve the HIP_VISIBLE_DEVICES implementation 2016-02-27 14:14:08 -06:00
pensun bcbc76470d Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-02-27 04:25:28 -06:00
Aditya Avinash Atluri 9c4819bc29 Merge pull request #4 from AMDComputeLibraries/memtracker
hipGetPointerAttrib behavioral changes
2016-02-27 10:51:23 -06:00
Ben Sander 3eb281aeff disable rocrv2, properly 2016-02-27 03:31:30 -06:00
Aditya Avinash Atluri 2ca6162593 Corrected hipPointerGetAttribute
Made hipPointerGetAttribute work same as cudaPointerGetAttribute for HCC
2016-02-26 18:50:40 -06:00
pensun e21841c152 relsove conflicts 2016-02-26 09:57:40 -06:00
pensun 980ec93f46 fix compiling error 2016-02-26 09:50:00 -06:00
Ben Sander 8105bd636f fixes for titan platform 2016-02-26 05:25:30 -06:00
Ben Sander 822c7292c9 Disable ROCR_V2 2016-02-26 23:34:45 -06:00
Ben Sander 7a1b4c3878 Merge branch 'memtracker' into privatestaging
Conflicts:
	include/nvcc_detail/hip_runtime_api.h
2016-02-26 06:17:05 -06:00