Automatic thread extraction with decoupled software pipelining

Guilherme Ottoni, Ram Rangan, Adam Stoler, David I. August

Research output: Chapter in Book/Report/Conference proceedingConference contribution

199 Scopus citations


Until recently, a steadily rising clock rate and other uniprocessor microarchitectural improvements could be relied upon to consistently deliver increasing performance for a wide range of applications. Current difficulties in maintaining this trend have lead microprocessor manufacturers to add value by incorporating multiple processors on a chip. Unfortunately, since decades of compiler research have not succeeded in delivering automatic threading for prevalent code properties, this approach demonstrates no improvement for a large class of existing codes. To find useful work for chip multiprocessors, we propose an automatic approach to thread extraction, called Decoupled Software Pipelining (DSWP). DSWP exploits the fine-grained pipeline parallelism lurking in most applications to extract long-running, concurrently executing threads. Use of the non-speculative and truly decoupled threads produced by DSWP can increase execution efficiency and provide significant latency tolerance, mitigating design complexity by reducing inter-core communication and per-core resource requirements. Using our initial fully automatic compiler implementation and a validated processor model, we prove the concept by demonstrating significant gains for dual-core chip multiprocessor models running a variety of codes. We then explore simple opportunities missed by our initial compiler implementation which suggest a promising future for this approach.

Original languageEnglish (US)
Title of host publicationMICRO-38
Subtitle of host publicationProceedings of the 38th Annual IEEE/ACM International Symposium on Microarchitecture
Number of pages12
StatePublished - 2005
EventMICRO-38: 38th Annual IEEE/ACM International Symposium on Microarchitecture - Barcelona, Spain
Duration: Nov 12 2005Nov 16 2005

Publication series

NameProceedings of the Annual International Symposium on Microarchitecture, MICRO
ISSN (Print)1072-4451


OtherMICRO-38: 38th Annual IEEE/ACM International Symposium on Microarchitecture

All Science Journal Classification (ASJC) codes

  • General Engineering


Dive into the research topics of 'Automatic thread extraction with decoupled software pipelining'. Together they form a unique fingerprint.

Cite this