depyf: Open the Opaque Box of PyTorch Compiler for Machine Learning Researchers
- URL: http://arxiv.org/abs/2403.13839v1
- Date: Thu, 14 Mar 2024 16:17:14 GMT
- Title: depyf: Open the Opaque Box of PyTorch Compiler for Machine Learning Researchers
- Authors: Kaichao You, Runsheng Bai, Meng Cao, Jianmin Wang, Ion Stoica, Mingsheng Long,
- Abstract summary: textttdepyf is a tool designed to demystify the inner workings of the PyTorch compiler.
textttdepyf decompiles bytecode generated by PyTorch back into equivalent source code.
- Score: 92.13613958373628
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: PyTorch \texttt{2.x} introduces a compiler designed to accelerate deep learning programs. However, for machine learning researchers, adapting to the PyTorch compiler to full potential can be challenging. The compiler operates at the Python bytecode level, making it appear as an opaque box. To address this, we introduce \texttt{depyf}, a tool designed to demystify the inner workings of the PyTorch compiler. \texttt{depyf} decompiles bytecode generated by PyTorch back into equivalent source code, and establishes connections between in-memory code objects and their on-disk source code counterparts. This feature enables users to step through the source code line by line using debuggers, thus enhancing their understanding of the underlying processes. Notably, \texttt{depyf} is non-intrusive and user-friendly, primarily relying on two convenient context managers for its core functionality. The project is \href{https://github.com/thuml/depyf}{ openly available} and is recognized as a \href{https://pytorch.org/ecosystem/}{PyTorch ecosystem project}.
Related papers
- PyMarian: Fast Neural Machine Translation and Evaluation in Python [11.291502854418098]
We describe a Python interface to Marian NMT, a C++-based training and inference toolkit for sequence-to-sequence models.
This interface enables models trained with Marian to be connected to the rich, wide range of tools available in Python.
arXiv Detail & Related papers (2024-08-15T01:41:21Z) - pyvene: A Library for Understanding and Improving PyTorch Models via
Interventions [79.72930339711478]
$textbfpyvene$ is an open-source library that supports customizable interventions on a range of different PyTorch modules.
We show how $textbfpyvene$ provides a unified framework for performing interventions on neural models and sharing the intervened upon models with others.
arXiv Detail & Related papers (2024-03-12T16:46:54Z) - TorchCP: A Library for Conformal Prediction based on PyTorch [9.295285907724672]
TorchCP is a Python toolbox for conformal prediction research on deep learning models.
It contains various implementations for posthoc and training methods for classification and regression tasks.
arXiv Detail & Related papers (2024-02-20T03:14:47Z) - TopoX: A Suite of Python Packages for Machine Learning on Topological
Domains [89.9320422266332]
TopoX is a Python software suite that provides reliable and user-friendly building blocks for computing and machine learning on topological domains.
TopoX consists of three packages: TopoNetX, TopoEmbedX and TopoModelx.
arXiv Detail & Related papers (2024-02-04T10:41:40Z) - TorchProbe: Fuzzing Dynamic Deep Learning Compilers [9.324205843411352]
PyTorch 2.0 supports compiling arbitrary deep learning programs in Python.
We propose code transformations to generate test cases involving dynamic features.
We have successfully identified twenty previously unknown bugs in the PyTorch compiler and its underlying tensor compiler Triton.
arXiv Detail & Related papers (2023-10-30T23:20:47Z) - PyGOD: A Python Library for Graph Outlier Detection [56.33769221859135]
PyGOD is an open-source library for detecting outliers in graph data.
It supports a wide array of leading graph-based methods for outlier detection.
PyGOD is released under a BSD 2-Clause license at https://pygod.org and at the Python Package Index (PyPI)
arXiv Detail & Related papers (2022-04-26T06:15:21Z) - PyHHMM: A Python Library for Heterogeneous Hidden Markov Models [63.01207205641885]
PyHHMM is an object-oriented Python implementation of Heterogeneous-Hidden Markov Models (HHMMs)
PyHHMM emphasizes features not supported in similar available frameworks: a heterogeneous observation model, missing data inference, different model order selection criterias, and semi-supervised training.
PyHHMM relies on the numpy, scipy, scikit-learn, and seaborn Python packages, and is distributed under the Apache-2.0 License.
arXiv Detail & Related papers (2022-01-12T07:32:36Z) - PyTorchVideo: A Deep Learning Library for Video Understanding [71.89124881732015]
PyTorchVideo is an open-source deep-learning library for video understanding tasks.
It covers a full stack of video understanding tools including multimodal data loading, transformations, and models.
The library is based on PyTorch and can be used by any training framework.
arXiv Detail & Related papers (2021-11-18T18:59:58Z) - Using Python for Model Inference in Deep Learning [0.6027358520885614]
We show how it is possible to meet performance and packaging constraints while performing inference in Python.
We present a way of using multiple Python interpreters within a single process to achieve scalable inference.
arXiv Detail & Related papers (2021-04-01T04:48:52Z) - Signatory: differentiable computations of the signature and logsignature
transforms, on both CPU and GPU [13.503274710499971]
Signatory is a library for calculating and performing functionality related to the signature and logsignature transforms.
It implements new features not available in previous libraries, such as efficient precomputation strategies.
The library operates as a Python wrapper around C++, and is compatible with the PyTorch ecosystem.
arXiv Detail & Related papers (2020-01-03T03:15:58Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.