Automatic memory partitioning: Increasing memory parallelism via data structure partitioning

Yosi Ben Asher, Nadav Rotem

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

In high-level synthesis, pipelined designs are often restricted by the number of memory banks available to the synthesis system. Using multiple memory banks can improve the performance of accelerated applications. Currently, programmers must manually assign data structures to specific memory banks on the accelerator. This paper presents Automatic Memory Partitioning, a method for automatically partitioning data structures into multiple memory banks for increased parallelism and performance. We use source code instrumentation to collect memory traces in order to detect linear memory access patterns. The memory traces are used to split data structures into disjoint memory regions and determine which segments may benefit from parallel memory access. Experiments show significant improvements in performance while using a minimal number of memory banks.

Original languageEnglish
Title of host publicationEmbedded Systems Week 2010 - Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems, CODES+ISSS'10
Pages155-161
Number of pages7
DOIs
StatePublished - 2010
Event6th Embedded Systems Week, ESWEEK 2010 - 8th IEEE/ACM International Conference on Hardware/Software-Co-Design and System Synthesis, CODES+ISSS'10 - Scottsdale, AZ, United States
Duration: 24 Oct 201029 Oct 2010

Publication series

NameEmbedded Systems Week 2010 - Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems, CODES+ISSS'2010

Conference

Conference6th Embedded Systems Week, ESWEEK 2010 - 8th IEEE/ACM International Conference on Hardware/Software-Co-Design and System Synthesis, CODES+ISSS'10
Country/TerritoryUnited States
CityScottsdale, AZ
Period24/10/1029/10/10

Keywords

  • FPGA
  • Memory
  • Parallelism

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Hardware and Architecture
  • Software
  • Electrical and Electronic Engineering

Fingerprint

Dive into the research topics of 'Automatic memory partitioning: Increasing memory parallelism via data structure partitioning'. Together they form a unique fingerprint.

Cite this