| Scratchpad memory management in a multitasking environment |
| Full text |
Pdf
(408 KB)
|
Source
|
International Conference On Embedded Software
archive
Proceedings of the 8th ACM international conference on Embedded software
table of contents
Atlanta, GA, USA
SESSION: Virtual machines, compilers, memory management
table of contents
Pages 265-274
Year of Publication: 2008
ISBN:978-1-60558-468-3
|
|
Authors
|
|
Bernhard Egger
|
Samsung Advanced Institute of Technology, Giheung-gu, Yongin-si, South Korea
|
|
Jaejin Lee
|
Seoul National University, Seoul, South Korea
|
|
Heonshik Shin
|
Seoul National University, Seoul, South Korea
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 8, Downloads (12 Months): 146, Citation Count: 0
|
|
|
ABSTRACT
This paper presents a dynamic scratchpad memory (SPM) code allocation technique for embedded systems running an operating system with preemptive multitasking. Existing SPM allocation schemes do not support multiple tasks or only a fixed number of processes that are known at compile time. These schemes rely on algorithms that select code depending on the size of the SPM. In contemporary portable devices, however, processes are created and terminated on demand and the SPM is shared among them. We introduce a dynamic scratchpad memory code allocation technique for code that supports dynamically created processes. At runtime, an SPM manager (SPMM) loads code pages of the running applications into the SPM on demand. It supports different sharing strategies that determine how the SPM is distributed among the running processes. We analyze several sharing strategies with regard to several preferable properties of multiprocess SPM allocation schemes. We evaluate the proposed multiprocess SPM allocation techniques and compare them to a fully-cached reference system by running several multiprocess benchmarks. The benchmarks comprise of multiple embedded applications such as H.264, MP3, MPEG-4, and PGP. On average, we achieve a 47% improvement in throughput and a 32% reduction in energy consumption. A comparison with the unachievable lower bound shows that the best SPM sharing strategy exploits 87% of the runtime improvements and 89% of the energy savings possible.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Federico Angiolini , Francesco Menichelli , Alberto Ferrero , Luca Benini , Mauro Olivieri, A post-compiler approach to scratchpad mapping of code, Proceedings of the 2004 international conference on Compilers, architecture, and synthesis for embedded systems, September 22-25, 2004, Washington DC, USA
[doi> 10.1145/1023833.1023869]
|
| |
2
|
ARM Architecture Version 6 (ARMv6). http://www.arm.com, 2002.
|
 |
3
|
Rajeshwari Banakar , Stefan Steinke , Bo-Sik Lee , M. Balakrishnan , Peter Marwedel, Scratchpad memory: design alternative for cache on-chip memory in embedded systems, Proceedings of the tenth international symposium on Hardware/software codesign, May 06-08, 2002, Estes Park, Colorado
[doi> 10.1145/774789.774805]
|
 |
4
|
Hyungmin Cho , Bernhard Egger , Jaejin Lee , Heonshik Shin, Dynamic data scratchpad memory management for a memory subsystem with an MMU, Proceedings of the 2007 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems, June 13-15, 2007, San Diego, California, USA
|
| |
5
|
|
 |
6
|
|
 |
7
|
|
| |
8
|
M. R. Guthaus , J. S. Ringenberg , D. Ernst , T. M. Austin , T. Mudge , R. B. Brown, MiBench: A free, commercially representative embedded benchmark suite, Proceedings of the Workload Characterization, 2001. WWC-4. 2001 IEEE International Workshop, p.3-14, December 02-02, 2001
[doi> 10.1109/WWC.2001.15]
|
| |
9
|
H.264 Video Codec. http://www.itu.int/rec/T-REC-H.264, 2003.
|
| |
10
|
Intel XScale Architecture. http://www.intel.com, 2002.
|
| |
11
|
|
 |
12
|
|
| |
13
|
Chunho Lee , Miodrag Potkonjak , William H. Mangione-Smith, MediaBench: a tool for evaluating and synthesizing multimedia and communicatons systems, Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, p.330-335, December 01-03, 1997, Research Triangle Park, North Carolina, United States
|
 |
14
|
Jaejin Lee , Junghyun Kim , Choonki Jang , Seungkyun Kim , Bernhard Egger , Kwangsub Kim , SangYong Han, FaCSim: a fast and cycle-accurate architecture simulator for embedded systems, Proceedings of the 2008 ACM SIGPLAN-SIGBED conference on Languages, compilers, and tools for embedded systems, June 12-13, 2008, Tucson, AZ, USA
|
| |
15
|
|
 |
16
|
Philip Machanick , Pierre Salverda , Lance Pompe, Hardware-software trade-offs in a direct Rambus implementation of the RAMpage memory hierarchy, Proceedings of the eighth international conference on Architectural support for programming languages and operating systems, p.105-114, October 02-07, 1998, San Jose, California, United States
|
| |
17
|
Micron Technology, Inc. Mobile SDRAM Power Calc 10. 2004.
|
| |
18
|
MP3 Reference Decoder. http://www.mp3-tech.org/programmer/sources/dist10.tgz, 1996.
|
 |
19
|
Nghi Nguyen , Angel Dominguez , Rajeev Barua, Memory allocation for embedded systems with a compile-time-unknown scratch-pad size, Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems, September 24-27, 2005, San Francisco, California, USA
[doi> 10.1145/1086297.1086313]
|
| |
20
|
|
| |
21
|
Pretty Good Privacy (PGPi). http://www.pgpi.org/, 2002.
|
| |
22
|
Samsung Semiconductor. K4X51163PC Mobile DDR SRAM. 2005.
|
 |
23
|
Aviral Shrivastava , Ilya Issenin , Nikil Dutt, Compilation techniques for energy reduction in horizontally partitioned cache architectures, Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems, September 24-27, 2005, San Francisco, California, USA
[doi> 10.1145/1086297.1086310]
|
 |
24
|
Stefan Steinke , Nils Grunwald , Lars Wehmeyer , Rajeshwari Banakar , M. Balakrishnan , Peter Marwedel, Reducing energy consumption by dynamic copying of instructions onto onchip memory, Proceedings of the 15th international symposium on System Synthesis, October 02-04, 2002, Kyoto, Japan
[doi> 10.1145/581199.581247]
|
 |
25
|
|
| |
26
|
M. Verma, K. Petzold, L. Wehmeyer, H. Falk, and P. Marwedel. Scratchpad sharing strategies for multiprocess embedded systems: A first approach. In 3rd Workshop on Embedded Systems for Real-Time Multimedia, September 2005.
|
| |
27
|
|
| |
28
|
Xvid MPEG-4 Video Codec. http://www.xvid.org, 2005.
|
INDEX TERMS
Primary Classification:
C.
Computer Systems Organization
C.4
PERFORMANCE OF SYSTEMS
Subjects:
Design studies
Additional Classification:
D.
Software
D.3
PROGRAMMING LANGUAGES
D.3.4
Processors
Subjects:
Optimization;
Compilers;
Code generation
D.4
OPERATING SYSTEMS
D.4.2
Storage Management
Subjects:
Virtual memory;
Storage hierarchies;
Secondary storage
General Terms:
Algorithms,
Design,
Experimentation,
Management,
Measurement,
Performance
Keywords:
code placement,
compilers,
heterogeneous memory,
multitasking,
paging,
portable systems,
postpass optimization,
scratchpad,
virtual memory
|