ABSTRACT
Memory delays represent a major bottleneck in embedded systems performance. Newer memory modules exhibiting efficient access modes (e.g., page-, burst-mode) partly alleviate this bottleneck. However, such features can not be efficiently exploited in processor-based embedded systems without memory-aware compiler support. We describe a memory-aware compiler approach that exploits such efficient memory access modes by extracting accurate timing information, allowing the compiler's scheduler to perform global code reordering to better hide the latency of memory operations. Our memory-aware compiler scheduled several benchmarks on the TI C6201 processor architecture interfaced with a 2-bank synchronous DRAM and generated average improvements of 24% over the best possible schedule using a traditional (memory-transparent) optimizing compiler, demonstrating the utility of our memory-aware compilation approach.
- 1.HotChips conference,' 97 - '99.]]Google Scholar
- 2.E Chou, R. Ortega, and G. Borriello. Interface co-synthesis techniques for embedded systems. In ICCAD, 1995.]] Google ScholarDigital Library
- 3.K.-S. Chung, R. Gupta, and C. L. Liu. Interface co-synthesis techniques for embedded systems. In ICCAD, 1996.]]Google Scholar
- 4.G.H. et al. ISDL: An instruction set description language for retargetability. In Proc. DAC, 1997.]] Google ScholarDigital Library
- 5.M. Freericks. The nML machine description formalism. Technical Report TR SM-IMP/DIST/08, TU Berlin CS Dept., 1993.]]Google Scholar
- 6.E Grun, N. Dutt, and A. Nicolau. Extracting accurate timing information to support memory-aware compilation. Technical report, University of California, Irvine, 1999.]]Google Scholar
- 7.E Grun, A. Halambi, N. Dutt, and A. Nicolau. RTGEN: An algorithm for automatic generation of reservation tables from architectural descriptions. In ISSS, San Jose, CA, 1999.]] Google ScholarDigital Library
- 8.J. Gyllenhaal. A machine description language for compilation. Master's thesis, Dept. of EE, UIUC,IL., 1994.]]Google Scholar
- 9.A. Halambi, E Grun, V. Ganesh, A. Khare, N. Dutt, and A. Nicolau. EXPRESSION: A language for architecture exploration through compiler/simulator retargetability. In Proc. DATE, Mar. 1999.]] Google ScholarDigital Library
- 10.J. Hennessy and D. Patterson. Computer Architecture: A quantitative approach. Morgan Kaufmann Publishers Inc, San Mateo, CA, 1990.]] Google ScholarDigital Library
- 11.IBM Microelectronics, Data Sheets for Synchronous DRAM IBM0316409C. www.chips.ibm.com/products/memory/O8J3348/.]]Google Scholar
- 12.A. Khare, E R. Panda, N. D. Dutt, and A. Nicolau. High level synthesis with synchronous and rambus drams. In SASIMI, Japan, 1998.]]Google Scholar
- 13.A. Khare, N. Savoiu, A. Halambi, E Grun, N. Dutt, and A. Nicolau. V-SAT: A visual specification and analysis tool for system-on-chip exploration. In Proc. EUROMICRO, 1999.]]Google ScholarCross Ref
- 14.R. Leupers and E Marwedel. Retargetable code generation based on structural processor descriptions. Design Automation for Embedded Systems, 3(1), 1998.]]Google Scholar
- 15.T. Ly, D. Knapp, R. Miller, and D. MacMillen. Scheduling using behavioral templates. In DAC, San Francisco, 1995.]] Google ScholarDigital Library
- 16.A. Nicolau and S. Novack. Trailblazing: A hierarchical approach to percolation scheduling. In ICPP, St. Charles, IL, 1993.]] Google ScholarDigital Library
- 17.E R. Panda, N. D. Dutt, and A. Nicolau. Exploiting off-chip memory access modes in high-level synthesis. In IEEE Transactions on CAD, Feb. 1998.]]Google ScholarDigital Library
- 18.B. Prince. High Performance Memories, New Architecture DRAMs and SRAMs evolution and function. Wiley, West Sussex, 1996.]]Google Scholar
- 19.S. Przybylski. Sorting out the new DRAMs. InHot Chips Tutorial, Stanford, CA, 1997.]]Google Scholar
- 20.Texas Instruments. TMS320C6201 CPU and Instruction Set Reference Guide.]]Google Scholar
- 21.Trimaran Release: http://www.trimaran.org. The MDES User Manual, 1997.]]Google Scholar
- 22.S. Wuytack, E Catthoor, G. de Jong, B. Lin, and H. D. Man. Flow graph balancing for minimizing the required memory bandwith. In ISSS, La Jolla, CA, 1996.]] Google ScholarDigital Library
Index Terms
- Memory aware compilation through accurate timing extraction
Recommendations
Aggressive Memory-Aware Compilation
IMS '00: Revised Papers from the Second International Workshop on Intelligent Memory SystemsMemory delays represent a major bottleneck in embedded systems performance. Newer memory modules exhibiting efficient access modes (e.g., page-, burst-mode) partly alleviate this bottleneck. However, such features cannot be efficiently exploited in ...
Memory-level parallelism aware fetch policies for simultaneous multithreading processors
A thread executing on a simultaneous multithreading (SMT) processor that experiences a long-latency load will eventually stall while holding execution resources. Existing long-latency load aware SMT fetch policies limit the amount of resources allocated ...
Exploring circuit timing-aware language and compilation
ASPLOS '11By adjusting the design of the ISA and enabling circuit timing-sensitive optimizations in a compiler, we can more effectively exploit timing speculation. While there has been growing interest in systems that leverage circuit-level timing speculation to ...
Comments