Evaluation of Convolution Primitives for Embedded Neural Networks on 32-bit Microcontrollers

Deploying neural networks on constrained hardware platforms such as 32-bit microcontrollers is a challenging task because of the large memory, computing and energy requirements of their inference process. To tackle these issues, several convolution primitives have been proposed to make the standard...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Nguyen, Baptiste, Moellic, Pierre-Alain, Blayac, Sylvain
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title
container_volume
creator Nguyen, Baptiste
Moellic, Pierre-Alain
Blayac, Sylvain
description Deploying neural networks on constrained hardware platforms such as 32-bit microcontrollers is a challenging task because of the large memory, computing and energy requirements of their inference process. To tackle these issues, several convolution primitives have been proposed to make the standard convolution more computationally efficient. However, few of these primitives are really implemented for 32-bit microcontrollers. In this work, we collect different state-of-the-art convolutional primitives and propose an implementation for ARM Cortex-M processor family with an open source deployment platform (NNoM). Then, we carry out experimental characterization tests on these implementations. Our benchmark reveals a linear relationship between theoretical MACs and energy consumption. Thus showing the advantages of using computationally efficient primitives like shift convolution. We discuss about the significant reduction in latency and energy consumption due to the use of SIMD instructions and highlight the importance of data reuse in those performance gains. For reproducibility purpose and further experiments, codes and experiments are publicly available.
doi_str_mv 10.48550/arxiv.2303.10702
format Article
fullrecord <record><control><sourceid>arxiv_GOX</sourceid><recordid>TN_cdi_arxiv_primary_2303_10702</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2303_10702</sourcerecordid><originalsourceid>FETCH-LOGICAL-a672-3f9b9a16c6ebf32d8b01ef0d9b3588ad17e778534e6136a9756257a7d692eaa73</originalsourceid><addsrcrecordid>eNotj8tKxDAYhbNxIaMP4Mq8QGsuk6RdSqkXGC-LWQrlT_MHgplG0ov69tbq6uPA4XA-Qq44K_eVUuwG8ldYSiGZLDkzTJyTt3aBOMMU0kCTp00alhTnLb7mcApTWHCkPmXaniw6h44-45whrpg-U34f6VqVorBhok-hz6lPw5RTjJjHC3LmIY54-c8dOd61x-ahOLzcPza3hwK0EYX0ta2B616j9VK4yjKOnrnaSlVV4LhBYyol96i51FAbpYUyYJyuBQIYuSPXf7ObXvex_ob83f1qdpum_AGzDk4f</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Evaluation of Convolution Primitives for Embedded Neural Networks on 32-bit Microcontrollers</title><source>arXiv.org</source><creator>Nguyen, Baptiste ; Moellic, Pierre-Alain ; Blayac, Sylvain</creator><creatorcontrib>Nguyen, Baptiste ; Moellic, Pierre-Alain ; Blayac, Sylvain</creatorcontrib><description>Deploying neural networks on constrained hardware platforms such as 32-bit microcontrollers is a challenging task because of the large memory, computing and energy requirements of their inference process. To tackle these issues, several convolution primitives have been proposed to make the standard convolution more computationally efficient. However, few of these primitives are really implemented for 32-bit microcontrollers. In this work, we collect different state-of-the-art convolutional primitives and propose an implementation for ARM Cortex-M processor family with an open source deployment platform (NNoM). Then, we carry out experimental characterization tests on these implementations. Our benchmark reveals a linear relationship between theoretical MACs and energy consumption. Thus showing the advantages of using computationally efficient primitives like shift convolution. We discuss about the significant reduction in latency and energy consumption due to the use of SIMD instructions and highlight the importance of data reuse in those performance gains. For reproducibility purpose and further experiments, codes and experiments are publicly available.</description><identifier>DOI: 10.48550/arxiv.2303.10702</identifier><language>eng</language><subject>Computer Science - Hardware Architecture ; Computer Science - Learning</subject><creationdate>2023-03</creationdate><rights>http://creativecommons.org/licenses/by-nc-nd/4.0</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>228,230,776,881</link.rule.ids><linktorsrc>$$Uhttps://arxiv.org/abs/2303.10702$$EView_record_in_Cornell_University$$FView_record_in_$$GCornell_University$$Hfree_for_read</linktorsrc><backlink>$$Uhttps://doi.org/10.48550/arXiv.2303.10702$$DView paper in arXiv$$Hfree_for_read</backlink></links><search><creatorcontrib>Nguyen, Baptiste</creatorcontrib><creatorcontrib>Moellic, Pierre-Alain</creatorcontrib><creatorcontrib>Blayac, Sylvain</creatorcontrib><title>Evaluation of Convolution Primitives for Embedded Neural Networks on 32-bit Microcontrollers</title><description>Deploying neural networks on constrained hardware platforms such as 32-bit microcontrollers is a challenging task because of the large memory, computing and energy requirements of their inference process. To tackle these issues, several convolution primitives have been proposed to make the standard convolution more computationally efficient. However, few of these primitives are really implemented for 32-bit microcontrollers. In this work, we collect different state-of-the-art convolutional primitives and propose an implementation for ARM Cortex-M processor family with an open source deployment platform (NNoM). Then, we carry out experimental characterization tests on these implementations. Our benchmark reveals a linear relationship between theoretical MACs and energy consumption. Thus showing the advantages of using computationally efficient primitives like shift convolution. We discuss about the significant reduction in latency and energy consumption due to the use of SIMD instructions and highlight the importance of data reuse in those performance gains. For reproducibility purpose and further experiments, codes and experiments are publicly available.</description><subject>Computer Science - Hardware Architecture</subject><subject>Computer Science - Learning</subject><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2023</creationdate><recordtype>article</recordtype><sourceid>GOX</sourceid><recordid>eNotj8tKxDAYhbNxIaMP4Mq8QGsuk6RdSqkXGC-LWQrlT_MHgplG0ov69tbq6uPA4XA-Qq44K_eVUuwG8ldYSiGZLDkzTJyTt3aBOMMU0kCTp00alhTnLb7mcApTWHCkPmXaniw6h44-45whrpg-U34f6VqVorBhok-hz6lPw5RTjJjHC3LmIY54-c8dOd61x-ahOLzcPza3hwK0EYX0ta2B616j9VK4yjKOnrnaSlVV4LhBYyol96i51FAbpYUyYJyuBQIYuSPXf7ObXvex_ob83f1qdpum_AGzDk4f</recordid><startdate>20230319</startdate><enddate>20230319</enddate><creator>Nguyen, Baptiste</creator><creator>Moellic, Pierre-Alain</creator><creator>Blayac, Sylvain</creator><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20230319</creationdate><title>Evaluation of Convolution Primitives for Embedded Neural Networks on 32-bit Microcontrollers</title><author>Nguyen, Baptiste ; Moellic, Pierre-Alain ; Blayac, Sylvain</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a672-3f9b9a16c6ebf32d8b01ef0d9b3588ad17e778534e6136a9756257a7d692eaa73</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2023</creationdate><topic>Computer Science - Hardware Architecture</topic><topic>Computer Science - Learning</topic><toplevel>online_resources</toplevel><creatorcontrib>Nguyen, Baptiste</creatorcontrib><creatorcontrib>Moellic, Pierre-Alain</creatorcontrib><creatorcontrib>Blayac, Sylvain</creatorcontrib><collection>arXiv Computer Science</collection><collection>arXiv.org</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Nguyen, Baptiste</au><au>Moellic, Pierre-Alain</au><au>Blayac, Sylvain</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Evaluation of Convolution Primitives for Embedded Neural Networks on 32-bit Microcontrollers</atitle><date>2023-03-19</date><risdate>2023</risdate><abstract>Deploying neural networks on constrained hardware platforms such as 32-bit microcontrollers is a challenging task because of the large memory, computing and energy requirements of their inference process. To tackle these issues, several convolution primitives have been proposed to make the standard convolution more computationally efficient. However, few of these primitives are really implemented for 32-bit microcontrollers. In this work, we collect different state-of-the-art convolutional primitives and propose an implementation for ARM Cortex-M processor family with an open source deployment platform (NNoM). Then, we carry out experimental characterization tests on these implementations. Our benchmark reveals a linear relationship between theoretical MACs and energy consumption. Thus showing the advantages of using computationally efficient primitives like shift convolution. We discuss about the significant reduction in latency and energy consumption due to the use of SIMD instructions and highlight the importance of data reuse in those performance gains. For reproducibility purpose and further experiments, codes and experiments are publicly available.</abstract><doi>10.48550/arxiv.2303.10702</doi><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier DOI: 10.48550/arxiv.2303.10702
ispartof
issn
language eng
recordid cdi_arxiv_primary_2303_10702
source arXiv.org
subjects Computer Science - Hardware Architecture
Computer Science - Learning
title Evaluation of Convolution Primitives for Embedded Neural Networks on 32-bit Microcontrollers
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-02T19%3A35%3A45IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-arxiv_GOX&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Evaluation%20of%20Convolution%20Primitives%20for%20Embedded%20Neural%20Networks%20on%2032-bit%20Microcontrollers&rft.au=Nguyen,%20Baptiste&rft.date=2023-03-19&rft_id=info:doi/10.48550/arxiv.2303.10702&rft_dat=%3Carxiv_GOX%3E2303_10702%3C/arxiv_GOX%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true