hipstreamwaitvalue32 Interface Reference

hipstreamwaitvalue32 Interface Reference#

HIPFORT API Reference: hipfort::hipstreamwaitvalue32 Interface Reference
hipfort::hipstreamwaitvalue32 Interface Reference

Enqueues a wait command to the stream. More...

Public Member Functions

integer(kind(hipsuccess)) function hipstreamwaitvalue32_ (stream, ptr, myvalue, flags, mask)
 

Detailed Description

Enqueues a wait command to the stream.

[BETA]

Parameters
[in]stream- Stream identifier
[in]ptr- Pointer to memory object allocated using hipMallocSignalMemory flag
[in]value- Value to be used in compare operation
[in]flags- Defines the compare operation, supported values are hipStreamWaitValueGte hipStreamWaitValueEq, hipStreamWaitValueAnd and hipStreamWaitValueNor
[in]mask- Mask to be applied on value at memory before it is compared with value, default value is set to enable every bit
Returns
hipSuccess, hipErrorInvalidValue

Enqueues a wait command to the stream, all operations enqueued on this stream after this, will not execute until the defined wait condition is true.

hipStreamWaitValueGte: waits until *ptr&mask >= value

hipStreamWaitValueEq : waits until *ptr&mask == value

hipStreamWaitValueAnd: waits until ((*ptr&mask) & value) != 0

hipStreamWaitValueNor: waits until ~((*ptr&mask) | (value&mask)) != 0

Note
when using hipStreamWaitValueNor, mask is applied on both 'value' and '*ptr'.
Support for hipStreamWaitValue32 can be queried using 'hipDeviceGetAttribute()' and 'hipDeviceAttributeCanUseStreamWaitValue' flag.
Warning
This API is marked as Beta. While this feature is complete, it can change and might have outstanding issues.
See also
hipExtMallocWithFlags, hipFree, hipStreamWaitValue64, hipStreamWriteValue64, hipStreamWriteValue32, hipDeviceGetAttribute

Member Function/Subroutine Documentation

◆ hipstreamwaitvalue32_()

integer(kind(hipsuccess)) function hipfort::hipstreamwaitvalue32::hipstreamwaitvalue32_ ( type(c_ptr), value  stream,
type(c_ptr), value  ptr,
integer(c_int32_t), value  myvalue,
integer(c_int), value  flags,
integer(c_int32_t), value  mask 
)

The documentation for this interface was generated from the following file: