Skip to main content

A DirectML backend for hardware acceleration in PyTorch.

Project description

PyTorch with DirectML

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

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.

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

PyTorch 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 (


Refer to the Pytorch with DirectML Samples Repo for samples.


torch-directml is actively under development and we're always adding more operators. For a list of all the operators we support and their data type coverage, refer to the PyTorch DirectML Operator Roadmap in the DirectML repository wiki. If you require support for an operator that isn't in this list, see the Feedback section below on how to file an issue.


We look forward to hearing from you!


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

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 with any additional questions or comments.

Data Collection Notice

The software may collect information about you and your use of the software and send it to Microsoft. Microsoft may use this information to provide services and improve our products and services. There are also some features in the software that may enable you and Microsoft to collect data from users of your applications. If you use these features, you must comply with applicable law, including providing appropriate notices to users of your applications together with a copy of Microsoft's privacy statement. Our privacy statement is located at You can learn more about data collection and use in the help documentation and our privacy statement. Your use of the software operates as your consent to these practices.

Specifically, in torch-directml, we are collecting the GPU device info and operators that fall back to CPU for improving operator coverage.

External Links

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

torch_directml-0.2.1.dev240521-cp312-cp312-win_amd64.whl (8.8 MB view hashes)

Uploaded CPython 3.12 Windows x86-64

torch_directml-0.2.1.dev240521-cp312-cp312-manylinux2010_x86_64.whl (24.9 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.12+ x86-64

torch_directml-0.2.1.dev240521-cp311-cp311-win_amd64.whl (8.8 MB view hashes)

Uploaded CPython 3.11 Windows x86-64

torch_directml-0.2.1.dev240521-cp311-cp311-manylinux2010_x86_64.whl (24.9 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.12+ x86-64

torch_directml-0.2.1.dev240521-cp310-cp310-win_amd64.whl (8.8 MB view hashes)

Uploaded CPython 3.10 Windows x86-64

torch_directml-0.2.1.dev240521-cp310-cp310-manylinux2010_x86_64.whl (24.9 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.12+ x86-64

torch_directml-0.2.1.dev240521-cp39-cp39-win_amd64.whl (8.8 MB view hashes)

Uploaded CPython 3.9 Windows x86-64

torch_directml-0.2.1.dev240521-cp39-cp39-manylinux2010_x86_64.whl (24.9 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

torch_directml-0.2.1.dev240521-cp38-cp38-win_amd64.whl (8.8 MB view hashes)

Uploaded CPython 3.8 Windows x86-64

torch_directml-0.2.1.dev240521-cp38-cp38-manylinux2010_x86_64.whl (63.7 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page