kirancodes.me
To Proof Maintenance & Beyond!

Multicores from the Compiler's Perspective: A Blessing or a Curse?

Saman P. Amarasinghe

Abstract

With all major processor vendors building multiple processor cores on a single chip, multicores is the next tour-de-force in computer architecture. The ability to parallelize and execute applications on multiple cores provides an opportunity to get the processor performance back on track with the Moore's law. In this article the author analyzes the seismic changes in computer architecture that lead to multicores and their impact on compilation. Next, we review different facets of the multicore compiler problem using three case studies - coarse grain parallelism from the perspective of the SUIF parallelizing compiler, instruction level parallelism with the RAW ILP compiler, and language exposed parallelism using the StreamIt language and compiler. Finally, we attempt to answer the ultimate question: with multicores, can we finally realize the dream that has eluded us for so long?.

Related papers