English

TorchOpt: An Efficient Library for Differentiable Optimization

Mathematical Software 2022-11-15 v1 Artificial Intelligence Distributed, Parallel, and Cluster Computing Machine Learning Optimization and Control

Abstract

Recent years have witnessed the booming of various differentiable optimization algorithms. These algorithms exhibit different execution patterns, and their execution needs massive computational resources that go beyond a single CPU and GPU. Existing differentiable optimization libraries, however, cannot support efficient algorithm development and multi-CPU/GPU execution, making the development of differentiable optimization algorithms often cumbersome and expensive. This paper introduces TorchOpt, a PyTorch-based efficient library for differentiable optimization. TorchOpt provides a unified and expressive differentiable optimization programming abstraction. This abstraction allows users to efficiently declare and analyze various differentiable optimization programs with explicit gradients, implicit gradients, and zero-order gradients. TorchOpt further provides a high-performance distributed execution runtime. This runtime can fully parallelize computation-intensive differentiation operations (e.g. tensor tree flattening) on CPUs / GPUs and automatically distribute computation to distributed devices. Experimental results show that TorchOpt achieves 5.2×5.2\times training time speedup on an 8-GPU server. TorchOpt is available at: https://github.com/metaopt/torchopt/.

Keywords

Cite

@article{arxiv.2211.06934,
  title  = {TorchOpt: An Efficient Library for Differentiable Optimization},
  author = {Jie Ren and Xidong Feng and Bo Liu and Xuehai Pan and Yao Fu and Luo Mai and Yaodong Yang},
  journal= {arXiv preprint arXiv:2211.06934},
  year   = {2022}
}

Comments

NeurIPS 2022 OPT Workshop

R2 v1 2026-06-28T05:45:21.249Z