Wykres commitów

112 Commity

Autor SHA1 Wiadomość Data
Ben Sander 03c0fcbfec Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-03-29 14:43:35 -05:00
Ben Sander ba114a238f 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
Aditya Atluri 73ecbf5c95 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-03-29 02:28:20 -05:00
Aditya Atluri 8e437d0565 Not using classes inside headers 2016-03-29 02:27:51 -05:00
Ben Sander 1b2ab173c1 Tweak thread-safe implementation.
introduce LockedAccessor option so destructor does not unlock.
Allows locks to exist across function boundaries, required
for hipLaunchKernel macro which has several unusual requirements.
(including C comppatibility, must use variadic macro, more).
2016-03-28 21:41:47 -05:00
scchan 3aa542e21b turn off ONE_OBJECT_FILE since we are building a static library 2016-03-28 12:56:15 -05:00
Ben Sander 6cab7862ae Stream thread-safe checkpoint.
Moving data structures to critical / protected section.
2016-03-28 09:46:40 -05:00
scchan 5afa5d23fc add inline keyword to all the template functions 2016-03-28 09:18:38 -05:00
Ben Sander 4f8786c66a fix ihipLogStatus so status arg only evaluated once 2016-03-28 05:23:53 -05:00
Ben Sander ecd56e1400 Stream thread-safe checkpoint. 2016-03-28 04:22:20 -05:00
Ben Sander 82f57ca610 Improve debug print messages.
- Remove "call-to-call" for hipStreamCreate and hipEventCreate.
  These now call an internal functions rather than calling through
  hipStreamCreateWithFalgs and hipEventCreateWithFlags.

- Add HIP_INIT_API for more functions so they trace correctly.

- Use stream#DEVICE.STREAMID in debug messages via new specialization in
  tace_helper.
2016-03-26 12:35:04 -05:00
Ben Sander c47b5b04ef Protect _stream_id as well.
- move lockedaccessor
- clean up device class.
- add simple ihipDevice constructor.
2016-03-26 11:45:25 -05:00
Ben Sander 4dd77c6612 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
pensun a8ae62d399 fix query of memoryClockRate and memoryBusWidth for both NV and HCC path 2016-03-25 09:24:08 -05:00
Maneesh Gupta ac57672eaa Fix release notes and minimum required hcc workweek check 2016-03-25 16:08:00 +05:30
Aditya Atluri 2dacc3e161 Added canMapMemory feature to device properties 2016-03-24 07:33:24 -05:00
Aditya Atluri eea49cb66b added CR and hipsetdeviceflags func 2016-03-24 07:04:01 -05:00
Aditya Atluri 1c55019322 Split files based on functionality and changed cmake file 2016-03-24 04:57:30 -05:00
Ben Sander 0e92a64b95 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 c1ad70ad4b moved variables to headers 2016-03-23 12:59:52 -05:00
Aditya Atluri 29119bd3d4 reverted back to old infra with cmake added 2016-03-23 11:13:02 -05:00
Aditya Atluri 64c4c70e4f WIP added modular feature for device apis 2016-03-23 07:54:01 -05:00
Siu Chi Chan 24496b1c38 Merge pull request #18 from AMDComputeLibraries/grid_launch_index
Grid launch index fix
2016-03-23 11:26:28 -05:00
Ben Sander 3ca91cf327 Update docs:
- Some comments in hip_hcc.cpp
 - document hipHostRegister* flags.
 - expand docs on hipHostRegister/Unregister. Use "register" rather than
   "pin" to describe action these take.
 - change required CUDA version to 6 (require unified memory)
 - remake doxygen.
2016-03-23 23:11:15 -05:00
scchan 1313f1fb77 add compiler version guard to the grid launch fix 2016-03-23 11:24:37 -05:00
scchan 671128abb0 fix builtins mapping for IDs and Dims 2016-03-23 11:08:28 -05:00
Ben Sander 8954e4fb26 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 fa8deac1ad Improve trace API
- Validate compile-time disables.
- Add README.md section explain how to install/use CodeXL tracing
- Add code docs on trace_helper.h
- fix color on hipLaunchKernel to green.
2016-03-23 02:57:52 -05:00
Ben Sander 723327cd0f Describe how to file an issue 2016-03-23 01:15:05 -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
Aditya Atluri 8af8ee2476 Revert "Revert "fixed memory free apis""
This reverts commit 1fa4d0d4b9.
2016-03-21 10:40:42 -05:00
Aditya Atluri bde1e6182d Revert "Revert "fix nvcc for hipHostMalloc* flags.""
This reverts commit 83fee90e83.
2016-03-21 10:39:49 -05:00
Aditya Atluri 83fee90e83 Revert "fix nvcc for hipHostMalloc* flags."
This reverts commit d495ffb1d3.
2016-03-21 10:36:14 -05:00
Aditya Atluri 1fa4d0d4b9 Revert "fixed memory free apis"
This reverts commit 71a6b5cb6c.
2016-03-21 10:36:11 -05:00
Aditya Atluri e99179edc8 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-03-21 10:34:08 -05:00
Aditya Atluri 71a6b5cb6c fixed memory free apis 2016-03-21 10:32:30 -05:00
Ben Sander d495ffb1d3 fix nvcc for hipHostMalloc* flags. 2016-03-21 09:33:46 -05:00
Ben Sander 80d708846a Implement hipHostFree on HCC path 2016-03-19 23:25:11 -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
Ben Sander 57365eb7a3 Deprecate hipMallocHost and hipFreeHost.
These will print compiler warnings if used, so we can weed them out
before removing.

Also add a default flags args for hipHostAlloc, in the C++ functioin
headers.  So you can replace hipMallocHost(&ptr, size( with hipHostAlloc(&ptr, size)
2016-03-19 22:53:59 -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 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 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 ffeba62a74 Added hipHostRegister flags 2016-03-07 10:52:40 -06:00
Aditya Atluri 496c549141 Added hipHostRegister feature for CUDA backend and its tests 2016-03-07 03:42:50 -06:00