JaxDecompiler: Redefining Gradient-Informed Software Design

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autor principal: Pochelu, Pierrick
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866910368831373312
author Pochelu, Pierrick
author_facet Pochelu, Pierrick
contents Among numerical libraries capable of computing gradient descent optimization, JAX stands out by offering more features, accelerated by an intermediate representation known as Jaxpr language. However, editing the Jaxpr code is not directly possible. This article introduces JaxDecompiler, a tool that transforms any JAX function into an editable Python code, especially useful for editing the JAX function generated by the gradient function. JaxDecompiler simplifies the processes of reverse engineering, understanding, customizing, and interoperability of software developed by JAX. We highlight its capabilities, emphasize its practical applications especially in deep learning and more generally gradient-informed software, and demonstrate that the decompiled code speed performance is similar to the original.
format Preprint
id arxiv_https___arxiv_org_abs_2403_10571
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle JaxDecompiler: Redefining Gradient-Informed Software Design
Pochelu, Pierrick
Programming Languages
Machine Learning
Software Engineering
Among numerical libraries capable of computing gradient descent optimization, JAX stands out by offering more features, accelerated by an intermediate representation known as Jaxpr language. However, editing the Jaxpr code is not directly possible. This article introduces JaxDecompiler, a tool that transforms any JAX function into an editable Python code, especially useful for editing the JAX function generated by the gradient function. JaxDecompiler simplifies the processes of reverse engineering, understanding, customizing, and interoperability of software developed by JAX. We highlight its capabilities, emphasize its practical applications especially in deep learning and more generally gradient-informed software, and demonstrate that the decompiled code speed performance is similar to the original.
title JaxDecompiler: Redefining Gradient-Informed Software Design
topic Programming Languages
Machine Learning
Software Engineering
url https://arxiv.org/abs/2403.10571