During the Windows Developer Day event earlier this month, Microsoft first revealed the Windows AI platform which will allow developers to build intelligent apps on Windows 10 platform. Using the WinML APIs, Windows 10 developers can use pre-trained machine learning models inside their apps for great performance and to save customer’s data and more. At GDC 2018, Microsoft today highlighted how WinML APIs can be used in games to improve the visual quality and performance of games. With this support, game developers can make use of their trained models and perform inference on the wide variety of hardware (CPU, GPU, VPU) found in gaming machines across all vendors. In order to support games that use Windows Machine Learning, Microsoft has built DirectML.
DirectML is built on top of Direct3D because D3D (and graphics processors) are very good for matrix math, which is used as the basis of all DNN models and evaluations. In the same way that High Level Shader Language (HLSL) is used to execute graphics rendering algorithms, HLSL can also be used to describe parallel algorithms of matrix math that represent the operators used during inference on a DNN. When executed, this HLSL code receives all the benefits of running in parallel on the GPU, making inference run extremely efficiently, just like a graphics application.
Microsoft is also working with Unity to provide support for Windows Machine Learning in Unity’s ML-Agents framework. Learn more about this announcement here.