With the fast development of multi-core processors, automatic parallelization becomes increasingly important. In this work, we focus on the parallelization of utility programs, a class of commonly used applications including compilers, transcoding utilities, file compressions, and databases. They take a series of requests as inputs and serve them one by one. Their high input dependence poses a challenge to parallelization. We use active profiling to find behavior phase boundaries and then automatically detect run-time dependences through profiling. Using a unified framework, we manually parallelize programs at phase boundaries. We show that for two programs, the technique enables parallelization at large granularity, which may span many loops and subroutines. The parallelized programs show significant speedup on multi-processor machines. © 2006 Springer-Verlag Berlin Heidelberg.
CITATION STYLE
Shen, X., & Ding, C. (2006). Parallelization of utility programs based on behavior phase analysis. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4339 LNCS, pp. 425–432). https://doi.org/10.1007/978-3-540-69330-7_29
Mendeley helps you to discover research relevant for your work.