Commit Graph

375 Commits

Author SHA1 Message Date
Maneesh Gupta d74896f873 [texture] guard new HCC APIs under workweek
Change-Id: I4f60a64fb0b0496ca1eb01ffe6ddda121c25d976


[ROCm/clr commit: 172a568aa6]
2017-08-15 15:51:38 +05:30
Weixing Zhang a7f95bb8ee [HIP Texture] The GPU virtual address for texture memory needs to be
aligned.

In hcc_am, a bigger buffer will be allocated for alignment purpose
and _unalignedDevicePointer is added in struct AmPointerInfo for
original allocated address.


[ROCm/clr commit: e4de2d1138]
2017-08-08 11:18:00 -04:00
Maneesh Gupta 602c3466f9 Merge pull request #135 from bensander/fix_tracing
Some fixes to tracing.

[ROCm/clr commit: 06b51109c6]
2017-07-31 10:24:41 +05:30
Ben Sander 6079b4b4f6 Some fixes to tracing.
[ROCm/clr commit: 9e9f384899]
2017-07-28 22:13:43 -05:00
Maneesh Gupta 8b7ce77fc0 Merge pull request #122 from bensander/enable_async_null_stream
Set HIP_SYNC_NULL_STREAM=0.

[ROCm/clr commit: 8330fb3fe0]
2017-07-28 09:15:56 +05:30
Ben Sander 1aa0656d34 Set HIP_SYNC_NULL_STREAM=0.
Optimizes null stream synchronization so it uses GPU-side dependency
resolution. Requires HCC __hcc_workweek__ > 17300.


[ROCm/clr commit: cd42711134]
2017-07-27 11:11:54 -05:00
Ben Sander 235b60165f Make host memory allocations coherent by default.
Associated change is to optimize event recording so it uses
agent-scope releaes (since it was only using system-scope release
to support non-coherent host mem).

Flags and environment variables exist to obtain previous behavior
if desired.  Options are documented in new performance guide.


[ROCm/clr commit: 6576201ec2]
2017-07-26 19:20:34 -05:00
Ben Sander 0e9272cfd7 Enable HCC_OPT_FLUSH=1 (if HCC compiler new enough)
[ROCm/clr commit: cdc4291431]
2017-07-24 18:57:19 -05:00
Wen-Heng (Jack) Chung c824a3ea0c Temporarily disables HCC_OPT_FLUSH
Change-Id: I290791e58dd52ab3823f6c3315e42b0d386e9d64


[ROCm/clr commit: 32909c4a92]
2017-07-12 16:08:36 +00:00
Ben Sander f1f98a0d2f Set default HIP_SYNC_NULL_STREAM=1.
[ROCm/clr commit: 61fafdceb1]
2017-06-30 19:01:14 -05:00
Aditya Atluri bd427d5b47 automate gcnarch detection
Change-Id: Ibbad22db136f7f5e2be84c82e9169298a144cc77


[ROCm/clr commit: 0fe0381608]
2017-06-29 12:01:40 -05:00
Rahul Garg 1ff995a92a Fixed hipDeviceGetPCIBusId for HIP/HCC
Change-Id: I3688fa2476e1baada2d3c5fc3735cec3f15a1e21


[ROCm/clr commit: a7c727f352]
2017-06-28 23:48:27 +05:30
Ben Sander 639a6d5e46 Set default HIP_HIDDEN_FREE_MEM
[ROCm/clr commit: eb2c5e166c]
2017-06-27 12:17:12 -05:00
Sun, Peng 2582679911 Add support of HIP_HIDDEN_FREE_MEM, to deduct the returned available
memory from hipMemGetInfo API, measured in MB.

Change-Id: I7a8260c12e032e04e26611db4c38c893a29f2653


[ROCm/clr commit: e5ce585307]
2017-06-26 15:29:38 -05:00
Ben Sander f1bed37a34 Clean up old USE_* and RELEASE.md notes.
[ROCm/clr commit: 42882ddf9c]
2017-06-23 18:05:30 -05:00
Ben Sander daae691cdb Enable HCC_OPT_FLUSH=1.
Requires appropriate HCC with this support   :
commit 38e392b517a46a09a3b1c8f388e6a0db3741c510


[ROCm/clr commit: c2baa4f6e6]
2017-06-07 00:15:05 -05:00
Ben Sander d1fe7f1683 Enable HIP_SYNC_NULL_STREAM=0 optimization.
[ROCm/clr commit: 344b6cb0c0]
2017-06-05 08:50:41 -05:00
Ben Sander 7237ed04f3 Fix HIP_SYNC_NULL_STREAM=0 mode.
- Fix null-stream sync
- hipStreamDestroy of null stream returns hipErrorInvalidResourceHandle
- Update documentation.
- Add tests for null stream sync, hipEventElapsedTime.
- Rename internal enum hipEventStatusRecorded to hipEventStatusComplete
- refactor hipStreamWaitEvent to streamline control-flow


[ROCm/clr commit: 823281dcba]
2017-06-05 08:50:22 -05:00
Ben Sander 6aaeed821d Update tests, add p2p coherency test.
[ROCm/clr commit: 15f54fb943]
2017-06-03 17:11:34 -05:00
Ben Sander 0ca3262f0a Add event controls for release fences.
Env var : HIP_EVENT_SYS_RELEASE
Event allocation flags : hipEventReleaseToDevice, hipEventReleaseToSystem
   (remove hipEventDisableSystemRelease)

Update test for new functionality.


[ROCm/clr commit: 942ec0eff8]
2017-05-27 16:02:34 -05:00
Ben Sander d6e8f5bbdc Cleanup hipEvent. (Intermediate checkpoint)
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf


[ROCm/clr commit: c8178c6838]
2017-05-27 16:02:34 -05:00
Ben Sander b4363ffcba Remove HIP_NUM_KERNELS_INFLIGHT. (redundant with HCC controls)
[ROCm/clr commit: 35212632e7]
2017-05-24 01:03:28 -05:00
Ben Sander d302498787 Add hipHostMallocCoherent, hipHostMallocNonCoherent
Provide per-allocation control over coherent/non-coherent mem.
These overrid the default HIP_COHERENT_HOST_ALLOC setting.


[ROCm/clr commit: dda70ae514]
2017-05-24 00:48:10 -05:00
Ben Sander ae983e1b09 Remove HIP_MAX_QUEUES (replaced with HCC_MAX_QUEUES)
[ROCm/clr commit: d43d57d39c]
2017-05-23 23:48:01 -05:00
Ben Sander 2e8625a208 Use accelerator_scope for create_marker and create_blocking_marker.
As optimization when system-scope is not needed.


[ROCm/clr commit: 2d5b3359c6]
2017-05-23 23:15:45 -05:00
Ben Sander 4ac6ac9d1d 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.


[ROCm/clr commit: 8bc6ee5932]
2017-05-16 19:04:25 -05:00
Ben Sander ee05975efa Add HIP_TRACE_API=4. Only display memory allocation/free apis.
[ROCm/clr commit: 7e7ba5027f]
2017-05-16 19:04:25 -05:00
Aditya Atluri feca2ed0dc added gfx900 to hipDeviceProp_t
Change-Id: I49e7a32f218926fd55f1c94c5dc2366d6c8ac4ca


[ROCm/clr commit: a6dc00f167]
2017-05-12 21:43:34 -05:00
Ben Sander 0d3c99eb6e Remove old USE_ switches no longer needed.
[ROCm/clr commit: c7c62dd022]
2017-05-12 16:06:03 -05:00
Ben Sander 9b222c0ae4 Add hipEventDisableSystemRelease flag.
[ROCm/clr commit: 2c2625cb9e]
2017-05-12 16:06:03 -05:00
Ben Sander 90e5930923 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.


[ROCm/clr commit: ff9bed6535]
2017-05-10 17:34:36 -05:00
Ben Sander 0e042a1529 Tailor pointer info for src/dst before calling HCC copy routines.
HCC sometimes uses the srcPtrInfo or dstPtrInfo to determine the
pointer.  Make sure these use the actual pointer and not the base
of the allocation.


[ROCm/clr commit: 3da8e94cbf]
2017-04-24 22:30:54 -05:00
Ben Sander eef8282c96 Fix hip debug for case where copyAgent is null (host-to-host)
[ROCm/clr commit: dfacfbb641]
2017-04-24 22:30:54 -05:00
sunway513 1897ca4a20 Refactor events and add initial event option for hipHccModuleLaunchKernel
- Change hipEvent_t to a class.
- Move event logic inside the class.
- Add _type to support Independent, StartCommand, StopCommand events.
  StartCommand returns start timestamp from events.

Change-Id: I4ddd694f2645a3ff7170c9111dc1d3e39931ca21


[ROCm/clr commit: f442e975c6]
2017-04-06 21:02:50 -05:00
Aditya Atluri 3651cb672a added new api hipHccModuleLaunchKernel
1. hipHccModuleLaunchKernel is same as hipModuleLaunchKernel with OpenCL workitem model
2. Added copy right
3. Fixed header naming

Change-Id: I6a7c35a3566e2f8d3f5056613e34193775d4b236


[ROCm/clr commit: 1cead6a4cd]
2017-03-31 12:11:34 -05:00
Rahul Garg 62c3bd7141 Fix for hipMemcpyFromSymbolAsync
Change-Id: I449c669c8f0ef041deaf0a1bc812a71b2f0cc5a6


[ROCm/clr commit: dfa516f804]
2017-03-24 10:30:33 +05:30
Rahul Garg 130545d322 Fix for hipMemcpyFromSymbol (sync)
Change-Id: I66afec5443ce904a63ced1fafece5144ca59393e


[ROCm/clr commit: e22044de36]
2017-03-21 23:48:04 +05:30
pensun 9c9a9bb330 Initial integration with Alex' Generic Grid Launch
Change-Id: I559afb80e9e39ec0d119bb3bf3b85ef9e448caf6


[ROCm/clr commit: ad882222b0]
2017-03-17 14:59:34 -05:00
Ben Sander a0932fbcc3 Update hipHostRegister debug and pointerTracker debug and notes
[ROCm/clr commit: e43592721e]
2017-03-11 09:18:27 -06:00
Aditya Atluri 106030f2c6 added new field to hipDeviceProp_t structure gcnArch.
1. It is an integer containing gfx values 701, 801, 802, 803
2. On NV path, it is zero

Change-Id: I2b4c7f48981d0214d8c6b1905d2cc85b16203419


[ROCm/clr commit: 9f575721aa]
2017-03-07 11:24:32 -06:00
Rahul Garg d410e0f9ca Removed hsakmt headers
Change-Id: I4ffc95d5823489195ebc5638226b49ea2995f603


[ROCm/clr commit: 158cb58c36]
2017-03-06 22:37:05 +05:30
Rahul Garg b4d190a445 Context management related changes in HIP.
-
-Contexts across threads are listed under device
-Device reset cleans up all contexts and re-initializes _primaryCtx

Change-Id: Ie1cfbb26d43a8dc6869be3e6ebaf7344ce374643


[ROCm/clr commit: c837b8d713]
2017-02-27 15:24:17 +05:30
Aditya Atluri 78f1d54ad6 Added initial support for hipMemcpyFromSymbol. But not working!
Change-Id: I48d8c7de4ec9f85c6c942be995fb488a3931f5d7


[ROCm/clr commit: 7ac5017cb9]
2017-02-23 11:29:06 -06:00
Aditya Atluri 945526cf77 added runtime api hipMemcpyFromSymbolAsync
Change-Id: Ibaf925faf0ba464dd0ed6c5ea74c224c2ce38889


[ROCm/clr commit: 3d348b2d81]
2017-02-22 19:16:35 -06:00
Aditya Atluri f36992067b fixed symbol memcpy issue
Change-Id: I89d7401be51d194bcbf771020ba66e3d3b6a18f8


[ROCm/clr commit: 0d4e6ae60a]
2017-02-01 17:54:59 -06:00
Ben Sander b46ee1d193 Add HIP_FAIL_SOC.
Fail sub-optimal-copies rather than perform them slowly.
SOC occur on async copy of unpinned memory, or P2P copy between GPUs
that are not peers.


[ROCm/clr commit: 1a24178c78]
2017-01-25 21:53:17 -06:00
Ben Sander ad2ba66ce6 Read HCC_OPT_FLUSH and optimize dispatch accordingly.
If HCC is in this mode, we can use less aggressive flushes in some
cases.


[ROCm/clr commit: 2f7a8ec39c]
2017-01-25 21:50:52 -06:00
Ben Sander a55362f753 Move core env var processing to env.cpp
[ROCm/clr commit: bc809460f5]
2017-01-23 22:34:41 -06:00
Ben Sander 57e1efebab Add debug tips to docs
[ROCm/clr commit: 4de3df746c]
2017-01-23 22:34:41 -06:00
Ben Sander 81488d5d00 Add HIP_SYNC_HOST_ALLOC, HipReadEnv
[ROCm/clr commit: db3f4889ca]
2017-01-19 23:55:24 -06:00