ML Emulation Layer for Vulkan®
Arm® has approached the Khronos® group with a set of Machine Learning extensions for the Vulkan® and SPIR-V™ APIs. On devices where these extensions have not been implemented by the Vulkan® Installable Device Drivers (ICD), the ML Emulation Layer is required.
The ML Emulation Layer for Vulkan® provides an implementation of the ML APIs enabling ML workloads to be executed on any Vulkan® Compute capable device. The ML Emulation Layer for Vulkan® is split into separate graph and tensor layers that are inserted by the Vulkan® Loader.
The graph layer exposes:
VK_ARM_data_graphVK_ARM_data_graph_instruction_set_tosaVK_ARM_data_graph_optical_flow
The tensor layer exposes:
VK_ARM_tensors
The corresponding SPIR-V™ extensions and extended instruction sets currently used by the ML Emulation Layer for Vulkan® are:
SPV_ARM_graphSPV_ARM_tensorsTOSA.001000.1Arm.MotionEngine.100