Academic Commons

Articles

Using Program Specialization to Speed SystemC Fixed-Point Simulation

Edwards, Stephen A.

Generic simulation components, such as fixed-precision arithmetic routines, make it easier to quickly assemble system simulations, but generic components tend to simulate more slowly than their manually-written specialized counterparts. So a system modeler is normally forced to choose between building a simulation quickly or running it quickly.This paper explores the use of program specialization as a way to address this conundrum. Through hints provided by the author of a generic library and aggressive compiler optimizations, program specialization can automatically rewrite a generic component into a specialized one with performance comparable to a careful manual implementation. As a result, the user of such a specializable library can quickly assemble a simulation from generic components whose performance can equal that of a more tedious implementation.Experimental results show that program specialization provides a three- to seven-times speed-up on an important class of simulations: signal processing kernels in SystemC that manipulate fixed-precision numbers.

Subjects

Files

Also Published In

Title
PEPM 2006: proceedings of the Workshop on Partial Evaluation and Program Manipulation: Charleston, South Carolina, January 9-10, 2006
DOI
https://doi.org/10.1145/1111542.1111547

More About This Work

Academic Units
Computer Science
Publisher
ACM Press
Published Here
September 22, 2011
Academic Commons provides global access to research and scholarship produced at Columbia University, Barnard College, Teachers College, Union Theological Seminary and Jewish Theological Seminary. Academic Commons is managed by the Columbia University Libraries.