Rate this Page

C++#

Created On: May 14, 2020 | Last Updated On: Jul 15, 2025

Note

If you are looking for the PyTorch C++ API docs, directly go here.

PyTorch provides several features for working with C++, and it’s best to choose from them based on your needs. At a high level, the following support is available:

Tensor and Autograd in C++#

Most of the tensor and autograd operations in PyTorch Python API are also available in the C++ API. These include:

Authoring Models in C++#

We provide the full capability of authoring and training a neural net model purely in C++, with familiar components such as torch::nn / torch::nn::functional / torch::optim that closely resemble the Python API.

Packaging for C++#

For guidance on how to install and link with libtorch (the library that contains all of the above C++ APIs), please see: https://pytorch.org/cppdocs/installing.html. Note that on Linux there are two types of libtorch binaries provided: one compiled with GCC pre-cxx11 ABI and the other with GCC cxx11 ABI, and you should make the selection based on the GCC ABI your system is using.