No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteurs principaux: da Rosa, Augusto Seben, Angeli, Marlon Daniel, Junior, Jorge Aikes, Ferreira, Alef Iury, Gris, Lucas Rafael, Soares, Anderson da Silva, Junior, Arnaldo Candido, de Oliveira, Frederico Santos, Damke, Gabriel Trevisan, Sousa, Rafael Teixeira
Format: Preprint
Publié: 2024
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866912037766955008
author da Rosa, Augusto Seben
Angeli, Marlon Daniel
Junior, Jorge Aikes
Ferreira, Alef Iury
Gris, Lucas Rafael
Soares, Anderson da Silva
Junior, Arnaldo Candido
de Oliveira, Frederico Santos
Damke, Gabriel Trevisan
Sousa, Rafael Teixeira
author_facet da Rosa, Augusto Seben
Angeli, Marlon Daniel
Junior, Jorge Aikes
Ferreira, Alef Iury
Gris, Lucas Rafael
Soares, Anderson da Silva
Junior, Arnaldo Candido
de Oliveira, Frederico Santos
Damke, Gabriel Trevisan
Sousa, Rafael Teixeira
contents We developed a jitted compiler for training Artificial Neural Networks using C++, LLVM and Cuda. It features object-oriented characteristics, strong typing, parallel workers for data pre-processing, pythonic syntax for expressions, PyTorch like model declaration and Automatic Differentiation. We implement the mechanisms of cache and pooling in order to manage VRAM, cuBLAS for high performance matrix multiplication and cuDNN for convolutional layers. Our experiments with Residual Convolutional Neural Networks on ImageNet, we reach similar speed but degraded performance. Also, the GRU network experiments show similar accuracy, but our compiler have degraded speed in that task. However, our compiler demonstrates promising results at the CIFAR-10 benchmark, in which we reach the same performance and about the same speed as PyTorch. We make the code publicly available at: https://github.com/NoSavedDATA/NoSavedKaleidoscope
format Preprint
id arxiv_https___arxiv_org_abs_2409_11600
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax
da Rosa, Augusto Seben
Angeli, Marlon Daniel
Junior, Jorge Aikes
Ferreira, Alef Iury
Gris, Lucas Rafael
Soares, Anderson da Silva
Junior, Arnaldo Candido
de Oliveira, Frederico Santos
Damke, Gabriel Trevisan
Sousa, Rafael Teixeira
Programming Languages
Artificial Intelligence
Machine Learning
68T07
D.3; I.2; I.4; I.7
We developed a jitted compiler for training Artificial Neural Networks using C++, LLVM and Cuda. It features object-oriented characteristics, strong typing, parallel workers for data pre-processing, pythonic syntax for expressions, PyTorch like model declaration and Automatic Differentiation. We implement the mechanisms of cache and pooling in order to manage VRAM, cuBLAS for high performance matrix multiplication and cuDNN for convolutional layers. Our experiments with Residual Convolutional Neural Networks on ImageNet, we reach similar speed but degraded performance. Also, the GRU network experiments show similar accuracy, but our compiler have degraded speed in that task. However, our compiler demonstrates promising results at the CIFAR-10 benchmark, in which we reach the same performance and about the same speed as PyTorch. We make the code publicly available at: https://github.com/NoSavedDATA/NoSavedKaleidoscope
title No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax
topic Programming Languages
Artificial Intelligence
Machine Learning
68T07
D.3; I.2; I.4; I.7
url https://arxiv.org/abs/2409.11600