Publication | Closed Access
Storage assignment optimizations through variable coalescence for embedded processors
23
Citations
8
References
2003
Year
Unknown Venue
EngineeringCompiler TechnologyComputer ArchitectureEmbedded SystemsParallel ComputingCompilersGeneral Offset AssignmentMemory ManagementInstruction-level ParallelismVariable CoalescenceComputer EngineeringComputer ScienceGoa ProblemStorage AllocationVirtual MemoryMemory ArchitectureAddress RegistersProgram AnalysisStorage AssignmentParallel ProgrammingSystem Software
Modern embedded processors with dedicated address generation unit support memory access with indirect addressing mode with auto-increment and decrement. The auto-increment/decrement mode saves address arithmetic instructions.Liao et al [2][3] categorized this problem as simple offset assignment (SOA) problem and general offset assignment (GOA) problem, which involve storage layout of variables and assignment of address registers respectively proposing heuristic solutions. Later work [6][7] proposed improvements in the performance of Liao's solution by undertaking program and storage transformations that affect access sequence.The algorithms are incorporated into and evaluated on the commercial compiler provided by Motorola to boost code generation performance on the DSP 56k chip. Compared to previous approaches, variable coalescence with program reordering reduces SOA costs by 48% and GOA (2AR) costs by 66% for Mediabench and SPEC benchmarks. Moreover, we show that our approach obtains theoretically optimal solution (zero cost) for the GOA problem in 87% of the cases with just 2 address registers and in 94% of the cases with 3 address registers.
| Year | Citations | |
|---|---|---|
Page 1
Page 1