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]
Esse commit está contido em:
Ben Sander committed 2017-05-27 16:02:34 -05:00
1 pai d6e8f5bbdc
commit 0ca3262f0a
5 files changed
+48 -20

No files matched your search

+9 -2
Ver Arquivo
@@ -95,8 +95,15 @@ hipError_t ihipEventCreate(hipEvent_t* event, unsigned flags)
unsigned supportedFlags = hipEventDefault
| hipEventBlockingSync
| hipEventDisableTiming
| hipEventDisableSystemRelease;
if ((flags & ~supportedFlags) == 0) {
| hipEventReleaseToDevice
| hipEventReleaseToSystem
;
const unsigned releaseFlags = (hipEventReleaseToDevice | hipEventReleaseToSystem);
const bool illegalFlags = (flags & ~supportedFlags) || // can't set any unsupported flags.
(flags & releaseFlags) == releaseFlags; // can't set both
if (!illegalFlags) {
ihipEvent_t *eh = new ihipEvent_t(flags);
*event = eh;