A performance model and code overlay generator for scratchpad enhanced embedded processors

Michael A. Baker, Amrit Panda, Nikhil Ghadge, Aniruddha Kadne, Karam S. Chatha

Research output: Chapter in Book/Report/Conference proceedingConference contribution

12 Citations (Scopus)

Abstract

Software managed scratchpad memories (SPMs) provide improved performance and power in embedded processors by reducing required hardware resources. Performance depends strongly on the scheme used to map code and data onto the SPM, but generating optimal mappings can be extremely difficult. Here we address instruction mapping on SPMs and present a performance model and algorithm, "Code Overlay Generator" (COG), for producing high performance dynamic SPM code mappings. Our heuristic does not require profiling information, and is suitable for generating mapping solutions for large programs which are otherwise infeasible using previously proposed Integer Linear Programming (ILP) techniques. We compare our algorithm with a published heuristic and the code overlay mapping algorithm provided with the Cell Broadband Engine (CBE) Synergistic Processing Unit (SPU) compiler from IBM, spu-gcc. We find an average performance advantage of 34% compared to the previous algorithm, and 87% with respect to spugcc. We additionally show that our performance model enables improved tools for offline evaluation of code overlay performance and mapping selection.

Original languageEnglish (US)
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'2010
Pages287-296
Number of pages10
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: Oct 24 2010Oct 29 2010

Other

Other6th Embedded Systems Week, ESWEEK 2010 - 8th IEEE/ACM International Conference on Hardware/Software-Co-Design and System Synthesis, CODES+ISSS'10
CountryUnited States
CityScottsdale, AZ
Period10/24/1010/29/10

Fingerprint

Data storage equipment
Linear programming
Engines
Hardware
Processing

Keywords

  • Cell broadband engine
  • Code mapping
  • Code overlay
  • Compiler
  • Embedded systems
  • Scratchpad memory

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Hardware and Architecture

Cite this

Baker, M. A., Panda, A., Ghadge, N., Kadne, A., & Chatha, K. S. (2010). A performance model and code overlay generator for scratchpad enhanced embedded processors. In Embedded Systems Week 2010 - Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems, CODES+ISSS'2010 (pp. 287-296) https://doi.org/10.1145/1878961.1879011

A performance model and code overlay generator for scratchpad enhanced embedded processors. / Baker, Michael A.; Panda, Amrit; Ghadge, Nikhil; Kadne, Aniruddha; Chatha, Karam S.

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

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Baker, MA, Panda, A, Ghadge, N, Kadne, A & Chatha, KS 2010, A performance model and code overlay generator for scratchpad enhanced embedded processors. in Embedded Systems Week 2010 - Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems, CODES+ISSS'2010. pp. 287-296, 6th 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, 10/24/10. https://doi.org/10.1145/1878961.1879011
Baker MA, Panda A, Ghadge N, Kadne A, Chatha KS. A performance model and code overlay generator for scratchpad enhanced embedded processors. In Embedded Systems Week 2010 - Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems, CODES+ISSS'2010. 2010. p. 287-296 https://doi.org/10.1145/1878961.1879011
Baker, Michael A. ; Panda, Amrit ; Ghadge, Nikhil ; Kadne, Aniruddha ; Chatha, Karam S. / A performance model and code overlay generator for scratchpad enhanced embedded processors. Embedded Systems Week 2010 - Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems, CODES+ISSS'2010. 2010. pp. 287-296
@inproceedings{eb4f871c6d0148cbbad909a285c71a27,
title = "A performance model and code overlay generator for scratchpad enhanced embedded processors",
abstract = "Software managed scratchpad memories (SPMs) provide improved performance and power in embedded processors by reducing required hardware resources. Performance depends strongly on the scheme used to map code and data onto the SPM, but generating optimal mappings can be extremely difficult. Here we address instruction mapping on SPMs and present a performance model and algorithm, {"}Code Overlay Generator{"} (COG), for producing high performance dynamic SPM code mappings. Our heuristic does not require profiling information, and is suitable for generating mapping solutions for large programs which are otherwise infeasible using previously proposed Integer Linear Programming (ILP) techniques. We compare our algorithm with a published heuristic and the code overlay mapping algorithm provided with the Cell Broadband Engine (CBE) Synergistic Processing Unit (SPU) compiler from IBM, spu-gcc. We find an average performance advantage of 34{\%} compared to the previous algorithm, and 87{\%} with respect to spugcc. We additionally show that our performance model enables improved tools for offline evaluation of code overlay performance and mapping selection.",
keywords = "Cell broadband engine, Code mapping, Code overlay, Compiler, Embedded systems, Scratchpad memory",
author = "Baker, {Michael A.} and Amrit Panda and Nikhil Ghadge and Aniruddha Kadne and Chatha, {Karam S.}",
year = "2010",
doi = "10.1145/1878961.1879011",
language = "English (US)",
isbn = "9781605589053",
pages = "287--296",
booktitle = "Embedded Systems Week 2010 - Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems, CODES+ISSS'2010",

}

TY - GEN

T1 - A performance model and code overlay generator for scratchpad enhanced embedded processors

AU - Baker, Michael A.

AU - Panda, Amrit

AU - Ghadge, Nikhil

AU - Kadne, Aniruddha

AU - Chatha, Karam S.

PY - 2010

Y1 - 2010

N2 - Software managed scratchpad memories (SPMs) provide improved performance and power in embedded processors by reducing required hardware resources. Performance depends strongly on the scheme used to map code and data onto the SPM, but generating optimal mappings can be extremely difficult. Here we address instruction mapping on SPMs and present a performance model and algorithm, "Code Overlay Generator" (COG), for producing high performance dynamic SPM code mappings. Our heuristic does not require profiling information, and is suitable for generating mapping solutions for large programs which are otherwise infeasible using previously proposed Integer Linear Programming (ILP) techniques. We compare our algorithm with a published heuristic and the code overlay mapping algorithm provided with the Cell Broadband Engine (CBE) Synergistic Processing Unit (SPU) compiler from IBM, spu-gcc. We find an average performance advantage of 34% compared to the previous algorithm, and 87% with respect to spugcc. We additionally show that our performance model enables improved tools for offline evaluation of code overlay performance and mapping selection.

AB - Software managed scratchpad memories (SPMs) provide improved performance and power in embedded processors by reducing required hardware resources. Performance depends strongly on the scheme used to map code and data onto the SPM, but generating optimal mappings can be extremely difficult. Here we address instruction mapping on SPMs and present a performance model and algorithm, "Code Overlay Generator" (COG), for producing high performance dynamic SPM code mappings. Our heuristic does not require profiling information, and is suitable for generating mapping solutions for large programs which are otherwise infeasible using previously proposed Integer Linear Programming (ILP) techniques. We compare our algorithm with a published heuristic and the code overlay mapping algorithm provided with the Cell Broadband Engine (CBE) Synergistic Processing Unit (SPU) compiler from IBM, spu-gcc. We find an average performance advantage of 34% compared to the previous algorithm, and 87% with respect to spugcc. We additionally show that our performance model enables improved tools for offline evaluation of code overlay performance and mapping selection.

KW - Cell broadband engine

KW - Code mapping

KW - Code overlay

KW - Compiler

KW - Embedded systems

KW - Scratchpad memory

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

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

U2 - 10.1145/1878961.1879011

DO - 10.1145/1878961.1879011

M3 - Conference contribution

AN - SCOPUS:78650663130

SN - 9781605589053

SP - 287

EP - 296

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

ER -