depyf: Open the Opaque Box of PyTorch Compiler for Machine Learning Researchers

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: You, Kaichao, Bai, Runsheng, Cao, Meng, Wang, Jianmin, Stoica, Ion, Long, Mingsheng
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866909144473141248
author You, Kaichao
Bai, Runsheng
Cao, Meng
Wang, Jianmin
Stoica, Ion
Long, Mingsheng
author_facet You, Kaichao
Bai, Runsheng
Cao, Meng
Wang, Jianmin
Stoica, Ion
Long, Mingsheng
contents 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}.
format Preprint
id arxiv_https___arxiv_org_abs_2403_13839
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle depyf: Open the Opaque Box of PyTorch Compiler for Machine Learning Researchers
You, Kaichao
Bai, Runsheng
Cao, Meng
Wang, Jianmin
Stoica, Ion
Long, Mingsheng
Machine Learning
Artificial Intelligence
Programming Languages
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}.
title depyf: Open the Opaque Box of PyTorch Compiler for Machine Learning Researchers
topic Machine Learning
Artificial Intelligence
Programming Languages
url https://arxiv.org/abs/2403.13839