Wykres commitów

45 Commity

Autor SHA1 Wiadomość Data
Ben Sander 2ab19ca505 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
Maneesh Gupta ffdf6ab23b Merge branch 'release_0.84.00' into privatestaging
Conflicts:
	include/hcc_detail/hip_runtime.h
	src/hip_hcc.cpp
2016-04-22 10:55:58 +05:30
Maneesh Gupta bc4f388b69 Prefix HIP includes with hip/ 2016-04-19 15:02:12 +05:30
Ben Sander 30233cd2e0 Add experimental notes around p2p 2016-04-18 23:52:42 -05:00
Ben Sander dcabc9dbf7 P2P Update.
- add P2P staging buffer copy.
- If copy device does not have sufficient access permissions, fall back
  to staging buffer.
- improve docs for which copy device is used.
2016-04-16 10:18:56 -05:00
Maneesh Gupta dc4c174a54 Bump min required hcc to workweek 16155 2016-04-16 14:49:10 +05:30
Aditya Atluri 4dfe27e8b5 Removed pragma once 2016-04-12 09:22:03 -05:00
Ben Sander 83f0de7806 P2p checkpoint.
- set USE_PEER_TO_PEER=3 (requires HCC "am_memtracker_update_peers")
- when enabling peer, turn it on for previously allocated memory.
- hipDeviceCanAccessPeer is no longer self-ware (self does not qualify
  as a peer)
- device peerlist always includes self, so when we call allow_access
  we never remove self access.
- hipDeviceReset() removes old peer mappings.
2016-04-11 07:58:59 -05:00
Ben Sander 813b063888 For P2P, use the peer list when allocating Device memory or pinned host.
Each new allocation is automatically mapped into the address space of
all enabled peers.
2016-04-11 07:58:58 -05:00
Ben Sander f2aa470f7f P2P checkpoint.
Maintain enabled peer tables for each device.
2016-04-11 07:58:58 -05:00
Ben Sander 69f2469cbb Checkpoint initial peer2peer implementation. 2016-04-11 07:58:58 -05:00
Aditya Atluri 1dcdfc93f1 Added feature for cross-compilation and seperated hcc api from hip api 2016-04-06 14:18:51 -05:00
Aditya Atluri 72c72d8748 moved cpp specific device code from headers to source 2016-03-31 04:45:00 -05:00
Aditya Atluri 496da0aabd C guarding the apis 2016-03-30 06:08:50 -05:00
Ben Sander fb7862dba3 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging 2016-03-29 14:43:35 -05:00
Aditya Atluri f01810183b Not using classes inside headers 2016-03-29 02:27:51 -05:00
Ben Sander 7934cf620d 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
Maneesh Gupta a094cdba64 Fix release notes and minimum required hcc workweek check 2016-03-25 16:08:00 +05:30
Aditya Atluri 95c96638aa Added canMapMemory feature to device properties 2016-03-24 07:33:24 -05:00
Aditya Atluri c5ec73736d added CR and hipsetdeviceflags func 2016-03-24 07:04:01 -05:00
Aditya Atluri 794007c3e8 Split files based on functionality and changed cmake file 2016-03-24 04:57:30 -05:00
Aditya Atluri 7920fd9a47 moved variables to headers 2016-03-23 12:59:52 -05:00
Ben Sander eced013ae4 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
Aditya Atluri 52cf63472c Revert "Revert "fixed memory free apis""
This reverts commit 287ba34aca.
2016-03-21 10:40:42 -05:00
Aditya Atluri 287ba34aca Revert "fixed memory free apis"
This reverts commit 96a1899df7.
2016-03-21 10:36:11 -05:00
Aditya Atluri 96a1899df7 fixed memory free apis 2016-03-21 10:32:30 -05:00
Ben Sander ab910efb96 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 deb38625ca Implement hipHostFree on HCC path 2016-03-19 23:25:11 -05:00
Ben Sander cea37c3e91 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 e1617b9604 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 1a27e5134e enable DB, comments 2016-03-14 14:40:41 -05:00
Ben Sander 250739666d 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 102f173396 Added hipHostRegister for hip with tests and added copyright 2016-03-08 12:57:22 -06:00
Aditya Atluri 75952029d6 added feature for hipHostGetFlags for CUDA and HIP 2016-03-06 12:17:30 -06:00
Aditya Atluri d3ba2b9782 corrected hipDeviceGetProperties to hipGetDeviceProperties - not docs 2016-03-06 08:31:04 -06:00
Aditya Atluri 3aa764d5eb Added hipHostAlloc with hipHostAllocMapped flag 2016-03-05 15:57:56 -06:00
Ben Sander caef9b5ced Add per-stream pool for hsa_signals. 2016-02-16 01:59:13 -06:00
Ben Sander 4ee2a5229b 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 9e2c3c8df3 minor doc touchup 2016-02-08 22:11:11 -06:00
Sam Kolton 0a27507208 Implementation of hipDeviceGetAttribute() 2016-02-04 17:39:27 +03:00
Peng Sun c73996d041 Fix all TODO-doc 2016-02-02 21:29:09 -06:00
Peng Sun 8b74333204 Finish all TODO for error code 2016-02-02 17:39:46 -06:00
sunway513 02fa107967 Fix some typos and incorrect namings in comments 2016-01-28 13:17:44 -06:00
sunway513 71a841d764 Fix @file and @brief tag on header files 2016-01-28 10:59:21 -06:00
Ben Sander f38e63ff18 Initial commit for GPUOpen Launch 2016-01-26 20:14:33 -06:00