Skeleton-based synthesis flow for computation-in-memory architectures

Jintao Yu, Razvan Nane, Imran Ashraf, Mottaqiallah Taouil, Said Hamdioui, Henk Corporaal, Koen Bertels

Research output: Contribution to journalArticleAcademicpeer-review

1 Citation (Scopus)

Abstract

Memristor-based Computation-in-Memory (CIM) is one of the emerging architectures for next-generation Big Data problems. Its design requires a radically new synthesis flow because the memristor is a passive device that uses resistance to encode its logic value. This article proposes a synthesis flow for mapping parallel applications on memristor-based CIM architecture. It employs solution templates that contain scheduling, placement, and routing information to map multiple algorithms with similar data flow graphs to memristor crossbar; this template is named skeleton. Complex algorithms that do not fit any skeleton can be solved by nested skeletons. Therefore, this approach can be applied to a wide range of applications with a limited number of skeletons. It further improves the design when spatial and temporal patterns exist in input data. To accelerate simulation of generated SystemC models, we integrate MPI in skeletons. The synthesis flow and its additional features are verified with multiple applications, and the results are compared against a multicore platform. These experiments demonstrate the feasibility and the potential of this approach.

Original languageEnglish
JournalIEEE Transactions on Emerging Topics in Computing
DOIs
Publication statusE-pub ahead of print - 2020

Fingerprint

Memristors
Memory architecture
Data flow graphs
Scheduling
Data storage equipment
Experiments

Keywords

  • Adders
  • Algorithm design and analysis
  • algorithmic skeleton
  • Common Information Model (computing)
  • Hardware
  • Memristor
  • Memristors
  • Routing
  • Skeleton
  • SystemC

Cite this

Yu, Jintao ; Nane, Razvan ; Ashraf, Imran ; Taouil, Mottaqiallah ; Hamdioui, Said ; Corporaal, Henk ; Bertels, Koen. / Skeleton-based synthesis flow for computation-in-memory architectures. In: IEEE Transactions on Emerging Topics in Computing. 2020.
@article{e142b6de740141e0a0a524dbdb9c8384,
title = "Skeleton-based synthesis flow for computation-in-memory architectures",
abstract = "Memristor-based Computation-in-Memory (CIM) is one of the emerging architectures for next-generation Big Data problems. Its design requires a radically new synthesis flow because the memristor is a passive device that uses resistance to encode its logic value. This article proposes a synthesis flow for mapping parallel applications on memristor-based CIM architecture. It employs solution templates that contain scheduling, placement, and routing information to map multiple algorithms with similar data flow graphs to memristor crossbar; this template is named skeleton. Complex algorithms that do not fit any skeleton can be solved by nested skeletons. Therefore, this approach can be applied to a wide range of applications with a limited number of skeletons. It further improves the design when spatial and temporal patterns exist in input data. To accelerate simulation of generated SystemC models, we integrate MPI in skeletons. The synthesis flow and its additional features are verified with multiple applications, and the results are compared against a multicore platform. These experiments demonstrate the feasibility and the potential of this approach.",
keywords = "Adders, Algorithm design and analysis, algorithmic skeleton, Common Information Model (computing), Hardware, Memristor, Memristors, Routing, Skeleton, SystemC",
author = "Jintao Yu and Razvan Nane and Imran Ashraf and Mottaqiallah Taouil and Said Hamdioui and Henk Corporaal and Koen Bertels",
year = "2020",
doi = "10.1109/TETC.2017.2760927",
language = "English",
journal = "IEEE Transactions on Emerging Topics in Computing",
issn = "2168-6750",
publisher = "Institute of Electrical and Electronics Engineers",

}

Skeleton-based synthesis flow for computation-in-memory architectures. / Yu, Jintao; Nane, Razvan; Ashraf, Imran; Taouil, Mottaqiallah; Hamdioui, Said; Corporaal, Henk; Bertels, Koen.

In: IEEE Transactions on Emerging Topics in Computing, 2020.

Research output: Contribution to journalArticleAcademicpeer-review

TY - JOUR

T1 - Skeleton-based synthesis flow for computation-in-memory architectures

AU - Yu, Jintao

AU - Nane, Razvan

AU - Ashraf, Imran

AU - Taouil, Mottaqiallah

AU - Hamdioui, Said

AU - Corporaal, Henk

AU - Bertels, Koen

PY - 2020

Y1 - 2020

N2 - Memristor-based Computation-in-Memory (CIM) is one of the emerging architectures for next-generation Big Data problems. Its design requires a radically new synthesis flow because the memristor is a passive device that uses resistance to encode its logic value. This article proposes a synthesis flow for mapping parallel applications on memristor-based CIM architecture. It employs solution templates that contain scheduling, placement, and routing information to map multiple algorithms with similar data flow graphs to memristor crossbar; this template is named skeleton. Complex algorithms that do not fit any skeleton can be solved by nested skeletons. Therefore, this approach can be applied to a wide range of applications with a limited number of skeletons. It further improves the design when spatial and temporal patterns exist in input data. To accelerate simulation of generated SystemC models, we integrate MPI in skeletons. The synthesis flow and its additional features are verified with multiple applications, and the results are compared against a multicore platform. These experiments demonstrate the feasibility and the potential of this approach.

AB - Memristor-based Computation-in-Memory (CIM) is one of the emerging architectures for next-generation Big Data problems. Its design requires a radically new synthesis flow because the memristor is a passive device that uses resistance to encode its logic value. This article proposes a synthesis flow for mapping parallel applications on memristor-based CIM architecture. It employs solution templates that contain scheduling, placement, and routing information to map multiple algorithms with similar data flow graphs to memristor crossbar; this template is named skeleton. Complex algorithms that do not fit any skeleton can be solved by nested skeletons. Therefore, this approach can be applied to a wide range of applications with a limited number of skeletons. It further improves the design when spatial and temporal patterns exist in input data. To accelerate simulation of generated SystemC models, we integrate MPI in skeletons. The synthesis flow and its additional features are verified with multiple applications, and the results are compared against a multicore platform. These experiments demonstrate the feasibility and the potential of this approach.

KW - Adders

KW - Algorithm design and analysis

KW - algorithmic skeleton

KW - Common Information Model (computing)

KW - Hardware

KW - Memristor

KW - Memristors

KW - Routing

KW - Skeleton

KW - SystemC

UR - http://www.scopus.com/inward/record.url?scp=85032450099&partnerID=8YFLogxK

U2 - 10.1109/TETC.2017.2760927

DO - 10.1109/TETC.2017.2760927

M3 - Article

AN - SCOPUS:85032450099

JO - IEEE Transactions on Emerging Topics in Computing

JF - IEEE Transactions on Emerging Topics in Computing

SN - 2168-6750

ER -