Commit Graph

62 Commits

Author SHA1 Message Date
Aditya Atluri e0c6809779 moved variables to headers
[ROCm/hip commit: 7920fd9a47]
2016-03-23 12:59:52 -05:00
Aditya Atluri 6841aa084c reverted back to old infra with cmake added
[ROCm/hip commit: 5637bde4b3]
2016-03-23 11:13:02 -05:00
Aditya Atluri 4ca4cae3fa WIP added modular feature for device apis
[ROCm/hip commit: 89bfc0e375]
2016-03-23 07:54:01 -05:00
Siu Chi Chan e964f00377 Merge pull request #18 from AMDComputeLibraries/grid_launch_index
Grid launch index fix

[ROCm/hip commit: 1d3860a8eb]
2016-03-23 11:26:28 -05:00
Ben Sander 7632b769a0 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.


[ROCm/hip commit: eced013ae4]
2016-03-23 23:11:15 -05:00
scchan 22c79027a5 add compiler version guard to the grid launch fix
[ROCm/hip commit: 0eead76d4e]
2016-03-23 11:24:37 -05:00
scchan 2b25f5c1ff fix builtins mapping for IDs and Dims
[ROCm/hip commit: 56a1863c74]
2016-03-23 11:08:28 -05:00
Ben Sander a7ff86a141 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	src/hip_hcc.cpp


[ROCm/hip commit: d07b347cac]
2016-03-23 03:22:09 -05:00
Ben Sander 6d5968027c 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.


[ROCm/hip commit: 2569e15375]
2016-03-23 02:57:52 -05:00
Ben Sander f9b2f0c840 Describe how to file an issue
[ROCm/hip commit: 608bb21797]
2016-03-23 01:15:05 -05:00
Ben Sander b319209299 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.


[ROCm/hip commit: ab910efb96]
2016-03-22 02:30:10 -05:00
Aditya Atluri 9741873703 Revert "Revert "fixed memory free apis""
This reverts commit 9ba9f2a407.


[ROCm/hip commit: 52cf63472c]
2016-03-21 10:40:42 -05:00
Aditya Atluri 9ba9f2a407 Revert "fixed memory free apis"
This reverts commit 2a044e3823.


[ROCm/hip commit: 287ba34aca]
2016-03-21 10:36:11 -05:00
Aditya Atluri 2a044e3823 fixed memory free apis
[ROCm/hip commit: 96a1899df7]
2016-03-21 10:32:30 -05:00
Ben Sander 8c1e55c937 Implement hipHostFree on HCC path
[ROCm/hip commit: deb38625ca]
2016-03-19 23:25:11 -05:00
Ben Sander 4c77ecef9a 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)


[ROCm/hip commit: cea37c3e91]
2016-03-19 22:53:59 -05:00
Ben Sander 0134651419 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


[ROCm/hip commit: 0af4d3623f]
2016-03-18 03:02:00 -05:00
Ben Sander 3320975a80 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.


[ROCm/hip commit: 7d500599fa]
2016-03-17 20:09:10 -05:00
Ben Sander fc27c61c58 Refactor to isolate staging buffer code.
[ROCm/hip commit: e7586adb33]
2016-03-17 00:20:56 -05:00
Ben Sander 0ae7bc7e14 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.


[ROCm/hip commit: 28ee7aff71]
2016-03-16 22:26:49 -05:00
Ben Sander 0abf5db89e Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	src/hip_hcc.cpp
	tests/src/CMakeLists.txt


[ROCm/hip commit: e1617b9604]
2016-03-14 15:01:26 -05:00
Ben Sander 5951d581d9 enable DB, comments
[ROCm/hip commit: 1a27e5134e]
2016-03-14 14:40:41 -05:00
Ben Sander 4900ebb39f Improve error reporting.
use throw with error class.
fix bug when memcpyDefault resolved to D2D copy.


[ROCm/hip commit: 250739666d]
2016-03-12 04:02:04 -06:00
Aditya Atluri db1ce3ba84 Added hipHostRegister for hip with tests and added copyright
[ROCm/hip commit: 102f173396]
2016-03-08 12:57:22 -06:00
Ben Sander 82116d905d 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


[ROCm/hip commit: aa03e1264c]
2016-03-06 23:50:52 -06:00
Aditya Atluri 91dbc3114d added feature for hipHostGetFlags for CUDA and HIP
[ROCm/hip commit: 75952029d6]
2016-03-06 12:17:30 -06:00
Aditya Atluri f1b8758919 corrected hipDeviceGetProperties to hipGetDeviceProperties - not docs
[ROCm/hip commit: d3ba2b9782]
2016-03-06 08:31:04 -06:00
Aditya Atluri 3c91a6d0a7 Added hipHostAlloc with hipHostAllocMapped flag
[ROCm/hip commit: 3aa764d5eb]
2016-03-05 15:57:56 -06:00
pensun cb19da0aa7 resolve conflicts of doc_update
[ROCm/hip commit: 11ca71bd76]
2016-02-27 15:08:45 -06:00
Ben Sander 5ca4914e0e Merge branch 'memtracker' into privatestaging
Conflicts:
	src/hip_hcc.cpp


[ROCm/hip commit: 4adab7b7ef]
2016-02-25 19:38:46 -06:00
gargrahul ccd1ed0a97 Update for shared atomics support
[ROCm/hip commit: a2fbf06129]
2016-02-22 16:21:52 +05:30
Ben Sander ebf2700936 Track last command to a stream.
Passing simple tests.


[ROCm/hip commit: d33d806a5b]
2016-02-20 11:02:07 -06:00
Ben Sander a2d8f9d98e Remove HIP-local AM tracker (now in HCC)
[ROCm/hip commit: d653782d9d]
2016-02-17 21:33:32 -06:00
Ben Sander 512163b889 Add per-stream pool for hsa_signals.
[ROCm/hip commit: caef9b5ced]
2016-02-16 01:59:13 -06:00
Ben Sander 9ab5b92173 Update before checkin to HCC.
Add support for USE_AM_TRACKER=2 (HCC version).
Add AM_ALLOC, AM_FREE indirection to ease swapping AM implementations.


[ROCm/hip commit: 38c735fd1d]
2016-02-15 21:16:00 -06:00
Ben Sander d58eab1706 Move warpSize to header, have shuffles use default warpsize.
[ROCm/hip commit: db3a63360b]
2016-02-15 05:41:09 -06:00
Ben Sander b97e430921 Update docs, cleanup
[ROCm/hip commit: 4637e19da4]
2016-02-15 05:40:12 -06:00
Ben Sander c441d5ec29 Step1 in staging buffer copy.
- use StagingBuffer class for copies.
- refactor g_device to use array rather than vector.
   (keeps pointers from moving).


[ROCm/hip commit: 24c1fdb864]
2016-02-12 18:24:08 -06:00
Ben Sander b9dc0e9497 Query tracked memory sizes.
Support more accurate hipMemGetInfo.  Add test to hipPointerAttrib.


[ROCm/hip commit: d7396b5af3]
2016-02-12 18:24:08 -06:00
Ben Sander 680b600b4a Tracker improvements
- add API to add / remove user-pointers from the tracker.
- test for thread-safety with MultiThreadtest_2 - rapid
  insertions/removal.
- add mutex to provide thread-safety.
- rename tracker interface to "memtracker_..." for consistency.
- add am_memtracker_reset, connect to hipDeviceReset.
-


[ROCm/hip commit: de45e2291e]
2016-02-12 18:24:08 -06:00
Ben Sander d4a90f8afd 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.


[ROCm/hip commit: 4ee2a5229b]
2016-02-12 18:24:08 -06:00
gargrahul 1ab2294657 Removed atomicInc and atomicDec support from HIP
[ROCm/hip commit: 8c40a4ace4]
2016-02-10 04:29:55 +05:30
Peng Sun 691aa5cda6 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into doc_update
[ROCm/hip commit: 1fb48b0714]
2016-02-09 15:08:39 -06:00
Peng Sun 00ef2c28a2 Fix TODO-Doc in hip_texture.h
[ROCm/hip commit: 28025f6a74]
2016-02-09 10:58:23 -06:00
Maneesh Gupta 77f61d1a46 Move HIP_DEVICE_COMPILE defines to hip_common.h
[ROCm/hip commit: 3291e0ec96]
2016-02-09 10:57:20 +05:30
Ben Sander a2dac9e12c minor doc touchup
[ROCm/hip commit: 9e2c3c8df3]
2016-02-08 22:11:11 -06:00
Peng Sun f28e3eedc5 fix merging conflicts
[ROCm/hip commit: fb3b11774b]
2016-02-08 15:35:49 -06:00
Sam Kolton 2306293526 Implementation of hipDeviceGetAttribute()
[ROCm/hip commit: 0a27507208]
2016-02-04 17:39:27 +03:00
Peng Sun 8347c2163d Additional typo and extra space fix
[ROCm/hip commit: 3d5608ea84]
2016-02-03 09:42:16 -06:00
Peng Sun 503ec9ad24 Fix all TODO-doc
[ROCm/hip commit: c73996d041]
2016-02-02 21:29:09 -06:00