← Open Source
microsoft

DirectML

⚠️DirectML is in maintenance mode ⚠️ DirectML is a high-performance, hardware-accelerated DirectX 12 library for machine learning. DirectML provides GPU acceleration for common machine learning tasks across a broad range of supported hardware and drivers, including all DirectX 12-capable GPUs from vendors such as AMD, Intel, NVIDIA, and Qualcomm.

InfrastructureKernelsC++
Open on GitHub
Momentum
+0stars in 24 hours0.0%
2.59k
Stars
338
Forks
+1
This week
43
Contributors
Created 2019-03-12 · Updated 2026-10-13 · #8493 today
Top developers

microsoft/DirectML is ranked 8,493 with 2,593 stars.

Same-category comparison

microsoft/DirectML is ranked 8,493 among these 8 peers; google-coral/coralnpu is ranked 8,487.

Same-category comparison
NameRankMetrics
felinics/Memoh8,421
Language:
Go
Stars:
2,700
Forks:
255
Description:
✨ The open-source multi-agent platform. Every agent gets its own computer, desktop, network, and long-term memory. You can bring your own key, or host your coding agent like Claude Code, Codex and so on.
MetapriseAI/OrgKernel8,432
Language:
Python
Stars:
2,686
Forks:
248
georgia-tech-db/evadb8,443
Language:
Python
Stars:
2,674
Forks:
258
Description:
Database system for AI-powered apps.
google-coral/coralnpu8,487
Language:
Emacs Lisp
Stars:
2,601
Forks:
349
Description:
A machine learning accelerator core designed for energy-efficient AI at the edge.
KomputeProject/kompute8,503
Language:
C++
Stars:
2,577
Forks:
202
Description:
General purpose GPU compute framework built on Vulkan to support 1000s of cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends). Blazing fast, mobile-enabled, asynchronous and optimized for advanced GPU data processing usecases. Backed by the Linux Foundation.
onnx/tensorflow-onnx8,513
Language:
Jupyter Notebook
Stars:
2,557
Forks:
474
Description:
Convert TensorFlow, Keras, Tensorflow.js and Tflite models to ONNX.
SafeAILab/EAGLE8,517
Language:
Python
Stars:
2,552
Forks:
297
Description:
Official Implementation of EAGLE-1 (ICML'24), EAGLE-2 (EMNLP'24), and EAGLE-3 (NeurIPS'25).
jolibrain/deepdetect8,518
Language:
C++
Stars:
2,551
Forks:
544
Description:
Deep Learning Server and CLI for Torch and TensorRT.
Key parameters and specifications
Key parameters and specifications
ParameterValue
LanguageC++
CategoryInfrastructure
SubcategoryKernels
Stars2,593
Forks338
Contributors43
Created date2019-03-12
Updated date2026-10-13
Stars in 1 day0
Stars in 7 days1
Rank8,493
Previous rank8,554
Rank change61
7-day stars rank9,334
Previous 7-day stars rank9,387
7-day stars rank change53
Total stars rank5,128
Previous total stars rank5,121
Total stars rank change-7
CountryUSA
README summary

DirectML will remain supported on previous Windows releases (see releases) and will continue to ship with future versions of Windows. However, no new functionality or feature updates are planned. DirectML will continue to receive security and compliance-related fixes. The issues and samples in this repository will not be updated. DirectML provides GPU acceleration for common machine learning tasks across a broad range of supported hardware and drivers, including all DirectX 12-capable GPUs from vendors such as AMD, Intel

, NVIDIA, and Qualcomm. When used standalone, the DirectML API is a low-level DirectX 12 library and is suitable for high-performance, low-latency applications such as frameworks, games, and other real-time applications. The seamless interoperability of DirectML with Direct3D 12 as well as its low overhead and conformance across hardware makes DirectML ideal for accelerating machine learning when both high performance is desired, and the reliability and predictability of results across hardware is critical. More information about DirectML

can be found in Introduction to DirectML. Getting Started with DirectML Hardware requirements For application developers For users, data scientists, and researchers DirectML Samples DxDispatch Tool Windows ML on DirectML ONNX Runtime on DirectML PyTorch with DirectML TensorFlow with DirectML Feedback External Links Documentation More information Contributing Visit the DirectX Landing Page for more resources for DirectX developers. Getting Started with DirectML DirectML is distributed as a system component of Windows 10, and is available as part of the Windows

10 operating system (OS) in Windows 10, version 1903 (10. 0, DirectML is also available as a standalone redistributable package (see Microsoft. DirectML), which is useful for applications that wish to use a fixed version of DirectML, or when running on older versions of Windows 10. Hardware requirements DirectML requires a DirectX 12 capable device. Almost all commercially-available graphics cards released in the last several years support DirectX 12. Examples of compatible hardware include: AMD GCN 1st Gen (Radeon

HD 7000 series) and above Intel Haswell (4th-gen core) HD Integrated Graphics and above NVIDIA Kepler (GTX 600 series) and above Qualcomm Adreno 600 and above For application developers DirectML exposes a native C++ DirectX 12 API. lib) are available as part of the redistributable NuGet package, and are also included in the Windows 10 SDK version 10. The Windows 10 SDK can be downloaded from the Windows Dev Center Microsoft. DirectML on the NuGet Gallery DirectML programming guide

DirectML API reference For users, data scientists, and researchers DirectML is built-in as a backend to several frameworks such as Windows ML, ONNX Runtime, and TensorFlow. See the following sections for more information: Windows ML on DirectML ONNX Runtime on DirectML TensorFlow with DirectML PyTorch with DirectML DirectML Samples DirectML C++ sample code is available under Samples. HelloDirectML: A minimal "hello world" application that executes a single DirectML operator. DirectMLNpuInference: A sample that showcases how to utilize NPU hardware

with DirectML. DirectMLSuperResolution: A sample that uses DirectML to execute a basic super-resolution model to upscale video from 540p

Frequently asked questions

How many stars and forks are recorded?

microsoft/DirectML has 2,593 stars and 338 forks.

What is the repository rank?

microsoft/DirectML is ranked 8,493.

What language and category are recorded?

microsoft/DirectML has 2,593 stars, uses C++ and belongs to Infrastructure.

Which repository is closest in rank?

microsoft/DirectML is compared with google-coral/coralnpu, ranked 8,487 with 2,601 stars.

README

DirectML


⚠️ DirectML is in maintenance mode ⚠️

  • If your PC runs Windows 11, version 24H2 (build 26100) or later, consider using Windows ML for accelerated machine learning model execution.
  • DirectML will remain supported on previous Windows releases (see releases) and will continue to ship with future versions of Windows. However, no new functionality or feature updates are planned.
  • DirectML will continue to receive security and compliance-related fixes. Refer to SECURITY.md for reporting security issues.
  • The issues and samples in this repository will not be updated.

DirectML is a high-performance, hardware-accelerated DirectX 12 library for machine learning. DirectML provides GPU acceleration for common machine learning tasks across a broad range of supported hardware and drivers, including all DirectX 12-capable GPUs from vendors such as AMD, Intel, NVIDIA, and Qualcomm.

When used standalone, the DirectML API is a low-level DirectX 12 library and is suitable for high-performance, low-latency applications such as frameworks, games, and other real-time applications. The seamless interoperability of DirectML with Direct3D 12 as well as its low overhead and conformance across hardware makes DirectML ideal for accelerating machine learning when both high performance is desired, and the reliability and predictability of results across hardware is critical.

More information about DirectML can be found in Introduction to DirectML.

Visit the DirectX Landing Page for more resources for DirectX developers.

Getting Started with DirectML

DirectML is distributed as a system component of Windows 10, and is available as part of the Windows 10 operating system (OS) in Windows 10, version 1903 (10.0; Build 18362), and newer.

Starting with DirectML version 1.4.0, DirectML is also available as a standalone redistributable package (see Microsoft.AI.DirectML), which is useful for applications that wish to use a fixed version of DirectML, or when running on older versions of Windows 10.

Hardware requirements

DirectML requires a DirectX 12 capable device. Almost all commercially-available graphics cards released in the last several years support DirectX 12. Examples of compatible hardware include:

  • AMD GCN 1st Gen (Radeon HD 7000 series) and above
  • Intel Haswell (4th-gen core) HD Integrated Graphics and above
  • NVIDIA Kepler (GTX 600 series) and above
  • Qualcomm Adreno 600 and above

For application developers

DirectML exposes a native C++ DirectX 12 API. The header and library (DirectML.h/DirectML.lib) are available as part of the redistributable NuGet package, and are also included in the Windows 10 SDK version 10.0.18362 or newer.

For users, data scientists, and researchers

DirectML is built-in as a backend to several frameworks such as Windows ML, ONNX Runtime, and TensorFlow.

See the following sections for more information:

DirectML Samples

DirectML C++ sample code is available under Samples.

  • HelloDirectML: A minimal "hello world" application that executes a single DirectML operator.
  • DirectMLNpuInference: A sample that showcases how to utilize NPU hardware with DirectML.
  • DirectMLSuperResolution: A sample that uses DirectML to execute a basic super-resolution model to upscale video from 540p to 1080p in real time.
  • yolov4: YOLOv4 is an object detection model capable of recognizing up to 80 different classes of objects in an image. This sample contains a complete end-to-end implementation of the model using DirectML, and is able to run in real time on a user-provided video stream.

DirectML Python sample code is available under Python/samples. The samples require PyDirectML, an open source Python projection library for DirectML, which can be built and installed to a Python executing environment from Python/src. Refer to the Python/README.md file for more details.

DxDispatch Tool

DxDispatch is simple command-line executable for launching DirectX 12 compute programs (including DirectML operators) without writing all the C++ boilerplate.

Windows ML on DirectML

Windows ML (WinML) is a high-performance, reliable API for deploying hardware-accelerated ML inferences on Windows devices. DirectML provides the GPU backend for Windows ML.

DirectML acceleration can be enabled in Windows ML using the LearningModelDevice with any one of the DirectX DeviceKinds.

For more information, see Get Started with Windows ML.

ONNX Runtime on DirectML

ONNX Runtime is a cross-platform inferencing and training accelerator compatible with many popular ML/DNN frameworks, including PyTorch, TensorFlow/Keras, scikit-learn, and more.

DirectML is available as an optional execution provider for ONNX Runtime that provides hardware acceleration when running on Windows 10.

For more information about getting started, see Using the DirectML execution provider.

PyTorch with DirectML

PyTorch with DirectML enables training and inference of complex machine learning models on a wide range of DirectX 12-compatible hardware. This is done through torch-directml, a plugin for PyTorch.

PyTorch with DirectML is supported on both the latest versions of Windows and the Windows Subsystem for Linux, and is available for download as a PyPI package. For more information about getting started with torch-directml, see our Windows or WSL 2 guidance on Microsoft Learn.

TensorFlow with DirectML

TensorFlow is a popular open source platform for machine learning and is a leading framework for training of machine learning models.

DirectML acceleration for TensorFlow 1.15 is currently available for Public Preview. TensorFlow on DirectML enables training and inference of complex machine learning models on a wide range of DirectX 12-compatible hardware.

TensorFlow on DirectML is supported on both the latest versions of Windows 10 and the Windows Subsystem for Linux, and is available for download as a PyPI package. For more information about getting started, see GPU accelerated ML training (docs.microsoft.com)

Feedback

We look forward to hearing from you!

External Links

Documentation

DirectML programming guide
DirectML API reference

More information

Introducing DirectML (Game Developers Conference '19)
Accelerating GPU Inferencing with DirectML and DirectX 12 (SIGGRAPH '18)
Windows AI: hardware-accelerated ML on Windows devices (Microsoft Build '20)
Gaming with Windows ML (DirectX Developer Blog)
DirectML at GDC 2019 (DirectX Developer Blog)
DirectX ❤ Linux (DirectX Developer Blog)

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Nearby in the ranking
Similar items