aclrtMemManagedGetAttrs
Note: This API is reserved and is not supported currently.
Function
Queries policy attribute values of the UVM of a specified size.
The memory operated by this API must be allocated using aclrtMemAllocManaged. If the queried memory range contains inconsistent policy attribute values, the result will be invalid.
Unlike the aclrtMemManagedGetAttr API, this API can query the values of multiple memory policy attributes at a time.
Prototype
1 | aclError aclrtMemManagedGetAttrs(aclrtMemManagedRangeAttribute *attributes, size_t numAttributes, const void *ptr, size_t size, void **data, size_t *dataSizes) |
Parameters
Parameter |
Input/Output |
Description |
|---|---|---|
attributes |
Input |
Array of attributes to be queried. For details about the type definition, see aclrtMemManagedRangeAttribute. |
numAttributes |
Input |
Size of the attribute array to be queried. |
ptr |
Input |
Start address of the memory whose attributes are to be queried. The address range must be within the UVM memory range, that is, [0x90000000000ULL, 0x90000000000ULL + 3 TB). |
size |
Input |
Size of the memory whose attributes are to be queried, in bytes. The value range is (0, 3 TB]. |
data |
Output |
Returned result array. |
dataSizes |
Input |
Size of the memory for storing the returned result array, in bytes. |
Returns
0 on success; otherwise, failure. For details, see aclError.