hipmemdiscardandprefetchbatchasync Interface Reference#
hipfort::hipmemdiscardandprefetchbatchasync Interface Reference
Discards and prefetches a batch of memory ranges asynchronously. More...
Public Member Functions | |
| integer(kind(hipsuccess)) function | hipmemdiscardandprefetchbatchasync_ (dptrs, sizes, count, prefetchlocs, prefetchlocidxs, numprefetchlocs, flags, stream) |
Detailed Description
Discards and prefetches a batch of memory ranges asynchronously.
- Parameters
-
[in] dptrs pointers to the memory ranges [in] sizes sizes in bytes of the memory ranges [in] count number of memory ranges [in] prefetchLocs array of target locations for prefetching [in] prefetchLocIdxs indices mapping each range to a prefetch location [in] numPrefetchLocs number of unique prefetch locations [in] flags flags for future use, must be zero now. [in] stream stream to enqueue the operation
- Returns
hipSuccess,hipErrorInvalidValue,hipErrorNotSupported
Semantically equivalent to calling hipMemDiscardBatchAsync followed by hipMemPrefetchBatchAsync, but combines both operations into a single command submission for reduced overhead.
- Warning
- Reading from a discarded range without first writing or prefetching to it will return an indeterminate value.
- Note
- All memory ranges must be managed memory allocated via hipMallocManaged or system-allocated memory (if device supports pageable memory access).
- This API is implemented on Linux and requires XNACK to be enabled.
- This API is marked as beta, meaning, while this is feature complete, it is still open to changes and may have outstanding issues.
- See also
- hipMemDiscardBatchAsync, hipMemPrefetchBatchAsync, hipMallocManaged
Member Function/Subroutine Documentation
◆ hipmemdiscardandprefetchbatchasync_()
| integer(kind(hipsuccess)) function hipfort::hipmemdiscardandprefetchbatchasync::hipmemdiscardandprefetchbatchasync_ | ( | type(c_ptr) | dptrs, |
| type(c_ptr), value | sizes, | ||
| integer(c_size_t), value | count, | ||
| type(hipmemlocation) | prefetchlocs, | ||
| type(c_ptr), value | prefetchlocidxs, | ||
| integer(c_size_t), value | numprefetchlocs, | ||
| integer(c_int64_t), value | flags, | ||
| type(c_ptr), value | stream | ||
| ) |
The documentation for this interface was generated from the following file: