{"id":498,"date":"2019-06-23T10:05:06","date_gmt":"2019-06-23T10:05:06","guid":{"rendered":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/?p=498"},"modified":"2022-11-02T10:31:53","modified_gmt":"2022-11-02T10:31:53","slug":"got-a-paper-accepted-in-vlsi-soc19","status":"publish","type":"post","link":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/","title":{"rendered":"Got a paper accepted in VLSI-SoC&#8217;19"},"content":{"rendered":"\n<p>My paper titled <em><a href=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/public\/docs\/papers\/a_product_engine_for_energy-efficient_execution_of_binary_neural_networks_using_resistive_memories.pdf\">&#8220;A Product Engine for Energy-Efficient Execution of Binary Neural Networks Using Resistive Memories&#8221;<\/a><\/em> was accepted in VLSI-SoC&#8217;19 to be held in Cusco, Peru, from October 6th to October 9th.<\/p>\n\n\n\n<p><strong>Abstract:<\/strong><\/p>\n\n\n\n<p>The need for executing complex Machine Learning (ML) algorithms, such as Convolutional Neural Networks (CNNs), in edge devices, which are highly constrained in terms of computing power and energy, makes it important to execute such applications efficiently. The situation has led to the popularization of Binary Neural Networks (BNNs), which significantly reduce execution time and memory requirements by representing the weights (and possibly the data being operated) using only one bit. Because approximately 90% of the operations executed by CNNs and BNNs are convolutions, a significant part of the memory transfers consists of fetching the convolutional kernels. Such kernels are usually small (e.g., 3\u00d73 operands), and particularly in BNNs redundancy is expected. Therefore, equal kernels can be mapped to the same memory addresses, requiring significantly less memory to store them. In this context, this paper presents a custom Binary Dot Product Engine (BDPE) for BNNs that exploits the features of Resistive Random Access Memory (ReRAM). This new engine allows accelerating the execution of the inference phase of BNNs. The novel BDPE locally stores the most used binary weights and performs binary convolution using computing capabilities enabled by the ReRAM. The system-level gem5 architectural simulator was used together with a C-based ML framework to evaluate the system&#8217;s performance and obtain power results. Results show that this novel BDPE improves performance by 11.3%, energy efficiency by 7.4% and reduces the number of memory accesses by 10.7% at a cost of less than 0.3% additional die area, when integrated with a 28 nm Fully Depleted Silicon On Insulator ARMv8 in-order core, in comparison to a fully-optimized baseline of YoloV3 XNOR-Net running in a unmodified CPU.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"538\" src=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu-1024x538.jpg\" alt=\"\" class=\"wp-image-499\" srcset=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu-1024x538.jpg 1024w, https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu-300x158.jpg 300w, https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu-768x403.jpg 768w, https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>My paper titled &#8220;A Product Engine for Energy-Efficient Execution of Binary Neural Networks Using Resistive Memories&#8221; was accepted in VLSI-SoC&#8217;19 to be held in Cusco, Peru, from October 6th to October 9th. Abstract: The need for executing complex Machine Learning (ML) algorithms, such as Convolutional Neural Networks (CNNs), in edge [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[151],"tags":[],"class_list":["post-498","post","type-post","status-publish","format-standard","hentry","category-research"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Got a paper accepted in VLSI-SoC&#039;19 - Jo\u00e3o Vieira<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Got a paper accepted in VLSI-SoC&#039;19 - Jo\u00e3o Vieira\" \/>\n<meta property=\"og:description\" content=\"My paper titled &#8220;A Product Engine for Energy-Efficient Execution of Binary Neural Networks Using Resistive Memories&#8221; was accepted in VLSI-SoC&#8217;19 to be held in Cusco, Peru, from October 6th to October 9th. Abstract: The need for executing complex Machine Learning (ML) algorithms, such as Convolutional Neural Networks (CNNs), in edge [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/\" \/>\n<meta property=\"og:site_name\" content=\"Jo\u00e3o Vieira\" \/>\n<meta property=\"article:published_time\" content=\"2019-06-23T10:05:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-02T10:31:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"joaovieira\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"joaovieira\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/\",\"url\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/\",\"name\":\"Got a paper accepted in VLSI-SoC'19 - Jo\u00e3o Vieira\",\"isPartOf\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu-1024x538.jpg\",\"datePublished\":\"2019-06-23T10:05:06+00:00\",\"dateModified\":\"2022-11-02T10:31:53+00:00\",\"author\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#\/schema\/person\/b43022dcf2dd3fcebc49bdba70b3c137\"},\"breadcrumb\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#primaryimage\",\"url\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu.jpg\",\"contentUrl\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu.jpg\",\"width\":1200,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Got a paper accepted in VLSI-SoC&#8217;19\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website\",\"url\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/\",\"name\":\"Jo\u00e3o Vieira\",\"description\":\"Personal website\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#\/schema\/person\/b43022dcf2dd3fcebc49bdba70b3c137\",\"name\":\"joaovieira\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e7a87195dd6f0d6d1dbd2a4b40edee6bec488a772ba7ecca37b63989a54b0903?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e7a87195dd6f0d6d1dbd2a4b40edee6bec488a772ba7ecca37b63989a54b0903?s=96&d=mm&r=g\",\"caption\":\"joaovieira\"},\"url\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/author\/joaovieira\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Got a paper accepted in VLSI-SoC'19 - Jo\u00e3o Vieira","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/","og_locale":"en_US","og_type":"article","og_title":"Got a paper accepted in VLSI-SoC'19 - Jo\u00e3o Vieira","og_description":"My paper titled &#8220;A Product Engine for Energy-Efficient Execution of Binary Neural Networks Using Resistive Memories&#8221; was accepted in VLSI-SoC&#8217;19 to be held in Cusco, Peru, from October 6th to October 9th. Abstract: The need for executing complex Machine Learning (ML) algorithms, such as Convolutional Neural Networks (CNNs), in edge [&hellip;]","og_url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/","og_site_name":"Jo\u00e3o Vieira","article_published_time":"2019-06-23T10:05:06+00:00","article_modified_time":"2022-11-02T10:31:53+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu.jpg","type":"image\/jpeg"}],"author":"joaovieira","twitter_card":"summary_large_image","twitter_misc":{"Written by":"joaovieira","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/","url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/","name":"Got a paper accepted in VLSI-SoC'19 - Jo\u00e3o Vieira","isPartOf":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website"},"primaryImageOfPage":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#primaryimage"},"image":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#primaryimage"},"thumbnailUrl":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu-1024x538.jpg","datePublished":"2019-06-23T10:05:06+00:00","dateModified":"2022-11-02T10:31:53+00:00","author":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#\/schema\/person\/b43022dcf2dd3fcebc49bdba70b3c137"},"breadcrumb":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#primaryimage","url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu.jpg","contentUrl":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/machu_picchu.jpg","width":1200,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/2019\/06\/23\/got-a-paper-accepted-in-vlsi-soc19\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/"},{"@type":"ListItem","position":2,"name":"Got a paper accepted in VLSI-SoC&#8217;19"}]},{"@type":"WebSite","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website","url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/","name":"Jo\u00e3o Vieira","description":"Personal website","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#\/schema\/person\/b43022dcf2dd3fcebc49bdba70b3c137","name":"joaovieira","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e7a87195dd6f0d6d1dbd2a4b40edee6bec488a772ba7ecca37b63989a54b0903?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e7a87195dd6f0d6d1dbd2a4b40edee6bec488a772ba7ecca37b63989a54b0903?s=96&d=mm&r=g","caption":"joaovieira"},"url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/author\/joaovieira\/"}]}},"_links":{"self":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/posts\/498","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/comments?post=498"}],"version-history":[{"count":3,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/posts\/498\/revisions"}],"predecessor-version":[{"id":744,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/posts\/498\/revisions\/744"}],"wp:attachment":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/media?parent=498"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/categories?post=498"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/tags?post=498"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}