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

328 Коммитов

Автор SHA1 Сообщение Дата
Ben Sander fff74eee21 hipStreamQuery uses av::is_empty. Add HIP_FORCE_NULL_STREAM. 2017-08-31 03:00:14 +00:00
Ben Sander ed8c3ba7e7 Refactor hipStreamWaitEvent
- Null streams use same flow as non-null.
- Add HIP_SYNC_STREAM_WAIT
- Resolve null stream.
2017-08-31 03:00:14 +00:00
Ben Sander bc9ba7cd81 Lock streams when waiting on event completion or querying event safety. 2017-08-28 18:40:16 -05:00
Maneesh Gupta 172a568aa6 [texture] guard new HCC APIs under workweek
Change-Id: I4f60a64fb0b0496ca1eb01ffe6ddda121c25d976
2017-08-15 15:51:38 +05:30
Weixing Zhang e4de2d1138 [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.
2017-08-08 11:18:00 -04:00
Maneesh Gupta 06b51109c6 Merge pull request #135 from bensander/fix_tracing
Some fixes to tracing.
2017-07-31 10:24:41 +05:30
Ben Sander 9e9f384899 Some fixes to tracing. 2017-07-28 22:13:43 -05:00
Maneesh Gupta 8330fb3fe0 Merge pull request #122 from bensander/enable_async_null_stream
Set HIP_SYNC_NULL_STREAM=0.
2017-07-28 09:15:56 +05:30
Ben Sander cd42711134 Set HIP_SYNC_NULL_STREAM=0.
Optimizes null stream synchronization so it uses GPU-side dependency
resolution. Requires HCC __hcc_workweek__ > 17300.
2017-07-27 11:11:54 -05:00
Ben Sander 6576201ec2 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.
2017-07-26 19:20:34 -05:00
Ben Sander cdc4291431 Enable HCC_OPT_FLUSH=1 (if HCC compiler new enough) 2017-07-24 18:57:19 -05:00
Wen-Heng (Jack) Chung 32909c4a92 Temporarily disables HCC_OPT_FLUSH
Change-Id: I290791e58dd52ab3823f6c3315e42b0d386e9d64
2017-07-12 16:08:36 +00:00
Ben Sander 61fafdceb1 Set default HIP_SYNC_NULL_STREAM=1. 2017-06-30 19:01:14 -05:00
Aditya Atluri 0fe0381608 automate gcnarch detection
Change-Id: Ibbad22db136f7f5e2be84c82e9169298a144cc77
2017-06-29 12:01:40 -05:00
Rahul Garg a7c727f352 Fixed hipDeviceGetPCIBusId for HIP/HCC
Change-Id: I3688fa2476e1baada2d3c5fc3735cec3f15a1e21
2017-06-28 23:48:27 +05:30
Ben Sander eb2c5e166c Set default HIP_HIDDEN_FREE_MEM 2017-06-27 12:17:12 -05:00
Sun, Peng e5ce585307 Add support of HIP_HIDDEN_FREE_MEM, to deduct the returned available
memory from hipMemGetInfo API, measured in MB.

Change-Id: I7a8260c12e032e04e26611db4c38c893a29f2653
2017-06-26 15:29:38 -05:00
Ben Sander 42882ddf9c Clean up old USE_* and RELEASE.md notes. 2017-06-23 18:05:30 -05:00
Ben Sander c2baa4f6e6 Enable HCC_OPT_FLUSH=1.
Requires appropriate HCC with this support   :
commit 38e392b517a46a09a3b1c8f388e6a0db3741c510
2017-06-07 00:15:05 -05:00
Ben Sander 344b6cb0c0 Enable HIP_SYNC_NULL_STREAM=0 optimization. 2017-06-05 08:50:41 -05:00
Ben Sander 823281dcba 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
2017-06-05 08:50:22 -05:00
Ben Sander 15f54fb943 Update tests, add p2p coherency test. 2017-06-03 17:11:34 -05:00
Ben Sander 942ec0eff8 Add event controls for release fences.
Env var : HIP_EVENT_SYS_RELEASE
Event allocation flags : hipEventReleaseToDevice, hipEventReleaseToSystem
   (remove hipEventDisableSystemRelease)

Update test for new functionality.
2017-05-27 16:02:34 -05:00
Ben Sander c8178c6838 Cleanup hipEvent. (Intermediate checkpoint)
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf
2017-05-27 16:02:34 -05:00
Ben Sander 35212632e7 Remove HIP_NUM_KERNELS_INFLIGHT. (redundant with HCC controls) 2017-05-24 01:03:28 -05:00
Ben Sander dda70ae514 Add hipHostMallocCoherent, hipHostMallocNonCoherent
Provide per-allocation control over coherent/non-coherent mem.
These overrid the default HIP_COHERENT_HOST_ALLOC setting.
2017-05-24 00:48:10 -05:00
Ben Sander d43d57d39c Remove HIP_MAX_QUEUES (replaced with HCC_MAX_QUEUES) 2017-05-23 23:48:01 -05:00
Ben Sander 2d5b3359c6 Use accelerator_scope for create_marker and create_blocking_marker.
As optimization when system-scope is not needed.
2017-05-23 23:15:45 -05:00
Ben Sander 8bc6ee5932 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.
2017-05-16 19:04:25 -05:00
Ben Sander 7e7ba5027f Add HIP_TRACE_API=4. Only display memory allocation/free apis. 2017-05-16 19:04:25 -05:00
Aditya Atluri a6dc00f167 added gfx900 to hipDeviceProp_t
Change-Id: I49e7a32f218926fd55f1c94c5dc2366d6c8ac4ca
2017-05-12 21:43:34 -05:00
Ben Sander c7c62dd022 Remove old USE_ switches no longer needed. 2017-05-12 16:06:03 -05:00
Ben Sander 2c2625cb9e Add hipEventDisableSystemRelease flag. 2017-05-12 16:06:03 -05:00
Ben Sander ff9bed6535 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.
2017-05-10 17:34:36 -05:00
Ben Sander 3da8e94cbf 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.
2017-04-24 22:30:54 -05:00
Ben Sander dfacfbb641 Fix hip debug for case where copyAgent is null (host-to-host) 2017-04-24 22:30:54 -05:00
sunway513 f442e975c6 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
2017-04-06 21:02:50 -05:00
Aditya Atluri 1cead6a4cd 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
2017-03-31 12:11:34 -05:00
Rahul Garg dfa516f804 Fix for hipMemcpyFromSymbolAsync
Change-Id: I449c669c8f0ef041deaf0a1bc812a71b2f0cc5a6
2017-03-24 10:30:33 +05:30
Rahul Garg e22044de36 Fix for hipMemcpyFromSymbol (sync)
Change-Id: I66afec5443ce904a63ced1fafece5144ca59393e
2017-03-21 23:48:04 +05:30
pensun ad882222b0 Initial integration with Alex' Generic Grid Launch
Change-Id: I559afb80e9e39ec0d119bb3bf3b85ef9e448caf6
2017-03-17 14:59:34 -05:00
Ben Sander e43592721e Update hipHostRegister debug and pointerTracker debug and notes 2017-03-11 09:18:27 -06:00
Aditya Atluri 9f575721aa 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
2017-03-07 11:24:32 -06:00
Rahul Garg 158cb58c36 Removed hsakmt headers
Change-Id: I4ffc95d5823489195ebc5638226b49ea2995f603
2017-03-06 22:37:05 +05:30
Rahul Garg c837b8d713 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
2017-02-27 15:24:17 +05:30
Aditya Atluri 7ac5017cb9 Added initial support for hipMemcpyFromSymbol. But not working!
Change-Id: I48d8c7de4ec9f85c6c942be995fb488a3931f5d7
2017-02-23 11:29:06 -06:00
Aditya Atluri 3d348b2d81 added runtime api hipMemcpyFromSymbolAsync
Change-Id: Ibaf925faf0ba464dd0ed6c5ea74c224c2ce38889
2017-02-22 19:16:35 -06:00
Aditya Atluri 0d4e6ae60a fixed symbol memcpy issue
Change-Id: I89d7401be51d194bcbf771020ba66e3d3b6a18f8
2017-02-01 17:54:59 -06:00
Ben Sander 1a24178c78 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.
2017-01-25 21:53:17 -06:00
Ben Sander 2f7a8ec39c Read HCC_OPT_FLUSH and optimize dispatch accordingly.
If HCC is in this mode, we can use less aggressive flushes in some
cases.
2017-01-25 21:50:52 -06:00