Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1879021.1879030acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
research-article

Optimal WCET-aware code selection for scratchpad memory

Published: 24 October 2010 Publication History

Abstract

We propose the first polynomial-time code selection algorithm for minimising the worst-case execution time of a non-nested loop executed on a fully pipelined processor that uses scratchpad memory to replace the instruction cache. The time complexity of our algorithm is O(m(ne+n2 log n)), where n and e are the number of basic blocks and the number of edges in the control flow graph of the loop, and m is the size of the scratchpad memory. Furthermore, we propose the first dynamic code selection heuristic for minimising the worst-case execution time of a task by using our algorithm for a non-nested loop. Our simulation results show that our heuristic significantly outperforms a previously known heuristic

References

[1]
Mälardalen wcet research group. http://www.mrtc.mdh.se/projects/wcet/benchmarks.html.
[2]
Nvidia physx for developers. http://developer.nvidia.com/object/physx.html.
[3]
Simplescalar lic. http://www.simplescalar.com/.
[4]
Angiolini, F., Menichelli, F., Ferrero, A., Benini, L., and Olivieri, M. A post-compiler approach to scratchpad mapping of code. In Proceedings of the 2004 international conference on Compilers, architecture, and synthesis for embedded systems (2004), pp. 259--267.
[5]
Deverge, J.-F., and Puaut, I. Wcet-directed dynamic scratchpad memory allocation of data. In Proceedings of the 19th Euromicro Conference on Real-Time Systems (2007), pp. 179--190.
[6]
Egger, B., Lee, J., and Shin, H. Dynamic scratchpad memory management for code in portable systems with an mmu. ACM Transactions on Embedded Computing Systems (TECS) 7, 2 (2008).
[7]
Francesco, P., Marchal, P., Atienza, D., Benini, L., Catthoor, F., and Mendias, J. M. An integrated hardware/software approach for run-time scratchpad management. In Proceedings of The 41st Design Automation Conference (2004), pp. 238--243.
[8]
Francesco, P., Marchal, P., Atienza, D., Benini, L., Catthoor, F., and Mendias, J. M. An integrated hardware/software approach for run-time scratchpad management. In Proceedings of the 41st annual conference on Design automation (2004), pp. 238--243.
[9]
Janapsatya, A., Ignjatovic, A., and Parameswaran, S. A novel instruction scratchpad memory optimization method based on concomitance metric. In Proceedings of the 2006 Conference on Asia South Pacific Design Automation (2006), pp. 612--617.
[10]
Janapsatya, A., Parameswaran, S., and Ignjatovic, A. Hardware/software managed scratchpad memory for embedded system. In Proceedings of the 2004 IEEE/ACM International conference on Computer-aided design (2004), pp. 370--377.
[11]
Kahle, J. A., Day, M. N., Hofstee, H. P., Johns, C. R., Maeurer, T. R., and Shippy, D. J. Introduction to the cell multiprocessor. IBM Journal of Research and Development 49, 4/5 (2005), 589--604.
[12]
Kandemir, M. T., Ramanujam, J., Irwin, M. J., Vijaykrishnan, N., Kadayif, I., and Parikh, A. Dynamic management of scratch-pad memory space. In Proceedings of the 38th Design Automation Conference (2001), pp. 690--695.
[13]
Li, L., Gao, L., and Xue, J. Memory coloring: A compiler approach for scratchpad memory management. In Proceedings of the 14th International Conference on Parallel Architectures and Compilation Techniques (2005), pp. 329--338.
[14]
Li, L., Nguyen, Q. H., and Xue, J. Scratchpad allocation for data aggregates in superperfect graphs. In Proceedings of the 2007 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools, pp. 207--26.
[15]
Puaut, I., and Pais, C. Scratchpad memories vs locked caches in hard real-time systems: a quantitative comparison. In Proceedings of DATE 2007, pp. 1484--1489.
[16]
Skiena, S. S. The algorithm design manual. Springer, 1998.
[17]
Stoer, M., and Wagner, F. A simple min-cut algorithm. Journal of the ACM 44, 4 (July 1997), 585--591.
[18]
Suhendra, V., Mitra, T., and Roychoudhury, A. Wcet centric data allocation to scratchpad memory. In Proceedings of the 26th IEEE Real-Time Systems Symposium (2005), pp. 223--232.
[19]
Udayakumaran, S., and Barua, R. Compiler-decided dynamic memory allocation for scratch-pad based embedded systems. In Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (2003), pp. 276--286.
[20]
Verma, M., and Marwedel, P. Overlay techniques for scratchpad memories in low power embedded processors. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 4, 8 (August 2006), 802--815.

Cited By

View all
  • (2018)EpipeJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2013.06.00359:10(1383-1393)Online publication date: 30-Dec-2018
  • (2017)WCET-Aware Function-Level Dynamic Code Management on Scratchpad MemoryACM Transactions on Embedded Computing Systems10.1145/306338316:4(1-26)Online publication date: 11-May-2017
  • (2016)A Compile-Time Optimization Method for WCET Reduction in Real-Time Embedded Systems through Block FormationACM Transactions on Architecture and Code Optimization10.1145/284508312:4(1-25)Online publication date: 4-Jan-2016
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
EMSOFT '10: Proceedings of the tenth ACM international conference on Embedded software
October 2010
318 pages
ISBN:9781605589046
DOI:10.1145/1879021
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

  • CEDA
  • IEEE CAS
  • IEEE CS

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 October 2010

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. minimum node cut
  2. scratchpad management
  3. worst-case execution time

Qualifiers

  • Research-article

Conference

ESWeek '10
ESWeek '10: Sixth Embedded Systems Week
October 24 - 29, 2010
Arizona, Scottsdale, USA

Acceptance Rates

Overall Acceptance Rate 60 of 203 submissions, 30%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)3
Reflects downloads up to 13 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2018)EpipeJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2013.06.00359:10(1383-1393)Online publication date: 30-Dec-2018
  • (2017)WCET-Aware Function-Level Dynamic Code Management on Scratchpad MemoryACM Transactions on Embedded Computing Systems10.1145/306338316:4(1-26)Online publication date: 11-May-2017
  • (2016)A Compile-Time Optimization Method for WCET Reduction in Real-Time Embedded Systems through Block FormationACM Transactions on Architecture and Code Optimization10.1145/284508312:4(1-25)Online publication date: 4-Jan-2016
  • (2016)Automatic management of Software Programmable Memories in Many-core ArchitecturesIET Computers & Digital Techniques10.1049/iet-cdt.2016.002410:6(288-298)Online publication date: 1-Nov-2016
  • (2015)Joint WCET and Update Activity Minimization for Cyber-Physical SystemsACM Transactions on Embedded Computing Systems10.1145/268053914:1(1-21)Online publication date: 21-Jan-2015
  • (2015)Hardware-Based Performance Enhancement Guaranteed CachesProceedings of the 2015 IEEE 18th International Symposium on Real-Time Distributed Computing10.1109/ISORC.2015.11(166-173)Online publication date: 13-Apr-2015
  • (2014)WCET-Aware Re-Scheduling Register Allocation for Real-Time Embedded Systems With Clustered VLIW ArchitectureIEEE Transactions on Very Large Scale Integration (VLSI) Systems10.1109/TVLSI.2012.223611422:1(168-180)Online publication date: 1-Jan-2014
  • (2014)WCET-aware dynamic code management on scratchpads for Software-Managed Multicores2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS)10.1109/RTAS.2014.6926001(179-188)Online publication date: Apr-2014
  • (2014)A Real-Time Instruction Cache with High Average-Case PerformanceProceedings of the 2014 IEEE 17th International Symposium on Object/Component-Oriented Real-Time Distributed Computing10.1109/ISORC.2014.59(109-116)Online publication date: 10-Jun-2014
  • (2014)Exploiting Hybrid SPM-Cache Architectures to Reduce Energy Consumption for Embedded ComputingProceedings of the 2014 IEEE Intl Conf on High Performance Computing and Communications, 2014 IEEE 6th Intl Symp on Cyberspace Safety and Security, 2014 IEEE 11th Intl Conf on Embedded Software and Syst (HPCC,CSS,ICESS)10.1109/HPCC.2014.59(340-347)Online publication date: 20-Aug-2014
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media