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

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 imp...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:arXiv.org 2024-09
Hauptverfasser: Augusto Seben da Rosa, Angeli, Marlon Daniel, Jorge Aikes Junior, Alef Iury Ferreira, Lucas Rafael Gris, Anderson da Silva Soares, Arnaldo Candido Junior, Santos de Oliveira, Frederico, Gabriel Trevisan Damke, Rafael Teixeira Sousa
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title arXiv.org
container_volume
creator Augusto Seben da Rosa
Angeli, Marlon Daniel
Jorge Aikes Junior
Alef Iury Ferreira
Lucas Rafael Gris
Anderson da Silva Soares
Arnaldo Candido Junior
Santos de Oliveira, Frederico
Gabriel Trevisan Damke
Rafael Teixeira Sousa
description 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 Article
fullrecord <record><control><sourceid>proquest</sourceid><recordid>TN_cdi_proquest_journals_3106851811</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>3106851811</sourcerecordid><originalsourceid>FETCH-proquest_journals_31068518113</originalsourceid><addsrcrecordid>eNqNyk0LgjAcgPERBEn5Hf4QHYW9pElXKaJCAjt0k5FLZ7LZNjO_fR76AJ2ew--ZII8yRoJ4TekM-dbWGGMabWgYMg_dUg0Zf4sCTrwRstBWt2ILXAHBeAVH6dxoqegMb8a4XpsnJLqQqoQzV2XHSwG9dBVcBldpJe-QDcrxzwJNH7yxwv91jpb73TU5BK3Rr05Yl9e6M2qknBEcxSGJCWH_XV-SC0A-</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>3106851811</pqid></control><display><type>article</type><title>No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax</title><source>Free E- Journals</source><creator>Augusto Seben da Rosa ; Angeli, Marlon Daniel ; Jorge Aikes Junior ; Alef Iury Ferreira ; Lucas Rafael Gris ; Anderson da Silva Soares ; Arnaldo Candido Junior ; Santos de Oliveira, Frederico ; Gabriel Trevisan Damke ; Rafael Teixeira Sousa</creator><creatorcontrib>Augusto Seben da Rosa ; Angeli, Marlon Daniel ; Jorge Aikes Junior ; Alef Iury Ferreira ; Lucas Rafael Gris ; Anderson da Silva Soares ; Arnaldo Candido Junior ; Santos de Oliveira, Frederico ; Gabriel Trevisan Damke ; Rafael Teixeira Sousa</creatorcontrib><description>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</description><identifier>EISSN: 2331-8422</identifier><language>eng</language><publisher>Ithaca: Cornell University Library, arXiv.org</publisher><subject>Artificial neural networks ; Compilers ; Object-oriented languages ; Performance degradation ; Syntax</subject><ispartof>arXiv.org, 2024-09</ispartof><rights>2024. This work is published under http://creativecommons.org/licenses/by/4.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>776,780</link.rule.ids></links><search><creatorcontrib>Augusto Seben da Rosa</creatorcontrib><creatorcontrib>Angeli, Marlon Daniel</creatorcontrib><creatorcontrib>Jorge Aikes Junior</creatorcontrib><creatorcontrib>Alef Iury Ferreira</creatorcontrib><creatorcontrib>Lucas Rafael Gris</creatorcontrib><creatorcontrib>Anderson da Silva Soares</creatorcontrib><creatorcontrib>Arnaldo Candido Junior</creatorcontrib><creatorcontrib>Santos de Oliveira, Frederico</creatorcontrib><creatorcontrib>Gabriel Trevisan Damke</creatorcontrib><creatorcontrib>Rafael Teixeira Sousa</creatorcontrib><title>No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax</title><title>arXiv.org</title><description>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</description><subject>Artificial neural networks</subject><subject>Compilers</subject><subject>Object-oriented languages</subject><subject>Performance degradation</subject><subject>Syntax</subject><issn>2331-8422</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2024</creationdate><recordtype>article</recordtype><sourceid>BENPR</sourceid><recordid>eNqNyk0LgjAcgPERBEn5Hf4QHYW9pElXKaJCAjt0k5FLZ7LZNjO_fR76AJ2ew--ZII8yRoJ4TekM-dbWGGMabWgYMg_dUg0Zf4sCTrwRstBWt2ILXAHBeAVH6dxoqegMb8a4XpsnJLqQqoQzV2XHSwG9dBVcBldpJe-QDcrxzwJNH7yxwv91jpb73TU5BK3Rr05Yl9e6M2qknBEcxSGJCWH_XV-SC0A-</recordid><startdate>20240917</startdate><enddate>20240917</enddate><creator>Augusto Seben da Rosa</creator><creator>Angeli, Marlon Daniel</creator><creator>Jorge Aikes Junior</creator><creator>Alef Iury Ferreira</creator><creator>Lucas Rafael Gris</creator><creator>Anderson da Silva Soares</creator><creator>Arnaldo Candido Junior</creator><creator>Santos de Oliveira, Frederico</creator><creator>Gabriel Trevisan Damke</creator><creator>Rafael Teixeira Sousa</creator><general>Cornell University Library, arXiv.org</general><scope>8FE</scope><scope>8FG</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>HCIFZ</scope><scope>L6V</scope><scope>M7S</scope><scope>PIMPY</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope></search><sort><creationdate>20240917</creationdate><title>No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax</title><author>Augusto Seben da Rosa ; Angeli, Marlon Daniel ; Jorge Aikes Junior ; Alef Iury Ferreira ; Lucas Rafael Gris ; Anderson da Silva Soares ; Arnaldo Candido Junior ; Santos de Oliveira, Frederico ; Gabriel Trevisan Damke ; Rafael Teixeira Sousa</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-proquest_journals_31068518113</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2024</creationdate><topic>Artificial neural networks</topic><topic>Compilers</topic><topic>Object-oriented languages</topic><topic>Performance degradation</topic><topic>Syntax</topic><toplevel>online_resources</toplevel><creatorcontrib>Augusto Seben da Rosa</creatorcontrib><creatorcontrib>Angeli, Marlon Daniel</creatorcontrib><creatorcontrib>Jorge Aikes Junior</creatorcontrib><creatorcontrib>Alef Iury Ferreira</creatorcontrib><creatorcontrib>Lucas Rafael Gris</creatorcontrib><creatorcontrib>Anderson da Silva Soares</creatorcontrib><creatorcontrib>Arnaldo Candido Junior</creatorcontrib><creatorcontrib>Santos de Oliveira, Frederico</creatorcontrib><creatorcontrib>Gabriel Trevisan Damke</creatorcontrib><creatorcontrib>Rafael Teixeira Sousa</creatorcontrib><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Materials Science &amp; Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Engineering Collection</collection><collection>Engineering Database</collection><collection>Publicly Available Content Database</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>Engineering Collection</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Augusto Seben da Rosa</au><au>Angeli, Marlon Daniel</au><au>Jorge Aikes Junior</au><au>Alef Iury Ferreira</au><au>Lucas Rafael Gris</au><au>Anderson da Silva Soares</au><au>Arnaldo Candido Junior</au><au>Santos de Oliveira, Frederico</au><au>Gabriel Trevisan Damke</au><au>Rafael Teixeira Sousa</au><format>book</format><genre>document</genre><ristype>GEN</ristype><atitle>No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax</atitle><jtitle>arXiv.org</jtitle><date>2024-09-17</date><risdate>2024</risdate><eissn>2331-8422</eissn><abstract>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</abstract><cop>Ithaca</cop><pub>Cornell University Library, arXiv.org</pub><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier EISSN: 2331-8422
ispartof arXiv.org, 2024-09
issn 2331-8422
language eng
recordid cdi_proquest_journals_3106851811
source Free E- Journals
subjects Artificial neural networks
Compilers
Object-oriented languages
Performance degradation
Syntax
title No Saved Kaleidosope: an 100% Jitted Neural Network Coding Language with Pythonic Syntax
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-01T23%3A12%3A54IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=document&rft.atitle=No%20Saved%20Kaleidosope:%20an%20100%25%20Jitted%20Neural%20Network%20Coding%20Language%20with%20Pythonic%20Syntax&rft.jtitle=arXiv.org&rft.au=Augusto%20Seben%20da%20Rosa&rft.date=2024-09-17&rft.eissn=2331-8422&rft_id=info:doi/&rft_dat=%3Cproquest%3E3106851811%3C/proquest%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=3106851811&rft_id=info:pmid/&rfr_iscdi=true