Class ARMImportMemory


  • public class ARMImportMemory
    extends java.lang.Object
    Native bindings to the arm_import_memory extension.

    This extension adds a new function that allows for direct memory import into OpenCL via the ImportMemoryARM function.

    Memory imported through this interface will be mapped into the device's page tables directly, providing zero copy access. It will never fall back to copy operations and aliased buffers, instead producing an error when mapping is not possible.

    Types of memory supported for import are specified as additional extension strings.

    • Field Detail

      • CL_IMPORT_TYPE_ARM

        public static final int CL_IMPORT_TYPE_ARM
        Default and valid properties name for cl_arm_import_memory.
        See Also:
        Constant Field Values
      • CL_IMPORT_TYPE_PROTECTED_ARM

        public static final int CL_IMPORT_TYPE_PROTECTED_ARM
        Protected memory property.
        See Also:
        Constant Field Values
      • CL_IMPORT_TYPE_ANDROID_HARDWARE_BUFFER_ARM

        public static final int CL_IMPORT_TYPE_ANDROID_HARDWARE_BUFFER_ARM
        Android hardware buffer type value for IMPORT_TYPE_ARM property.
        See Also:
        Constant Field Values
      • CL_IMPORT_DMA_BUF_DATA_CONSISTENCY_WITH_HOST_ARM

        public static final int CL_IMPORT_DMA_BUF_DATA_CONSISTENCY_WITH_HOST_ARM
        Data consistency with host property.
        See Also:
        Constant Field Values
      • CL_IMPORT_ANDROID_HARDWARE_BUFFER_PLANE_INDEX_ARM

        public static final int CL_IMPORT_ANDROID_HARDWARE_BUFFER_PLANE_INDEX_ARM
        Index of plane in a multiplanar hardware buffer.
        See Also:
        Constant Field Values
      • CL_IMPORT_ANDROID_HARDWARE_BUFFER_LAYER_INDEX_ARM

        public static final int CL_IMPORT_ANDROID_HARDWARE_BUFFER_LAYER_INDEX_ARM
        Index of layer in a multilayer hardware buffer.
        See Also:
        Constant Field Values
      • CL_IMPORT_MEMORY_WHOLE_ALLOCATION_ARM

        public static final long CL_IMPORT_MEMORY_WHOLE_ALLOCATION_ARM
        Import memory size value to indicate a size for the whole buffer.
        See Also:
        Constant Field Values
    • Method Detail

      • nclImportMemoryARM

        public static long nclImportMemoryARM​(long context,
                                              long flags,
                                              long properties,
                                              long memory,
                                              long size,
                                              long errcode_ret)
        Unsafe version of: ImportMemoryARM
      • clImportMemoryARM

        public static long clImportMemoryARM​(long context,
                                             long flags,
                                             @Nullable
                                             org.lwjgl.PointerBuffer properties,
                                             java.nio.ByteBuffer memory,
                                             @Nullable
                                             java.nio.IntBuffer errcode_ret)
        Parameters:
        errcode_ret - will return an appropriate error code. If errcode_ret is NULL, no error code is returned.
      • clImportMemoryARM

        public static long clImportMemoryARM​(long context,
                                             long flags,
                                             @Nullable
                                             org.lwjgl.PointerBuffer properties,
                                             java.nio.ByteBuffer memory,
                                             @Nullable
                                             int[] errcode_ret)
        Array version of: ImportMemoryARM