Using thread-level speculation to simplify manual parallelization
In this paper, we provide examples of how thread-level speculation (TLS) simplifies manual parallelization and enhances its performance. A number of techniques for manual parallelization using TLS are presented and results are provided that indicate the performance contribution of each technique on...
Gespeichert in:
Veröffentlicht in: | Proceedings of the ninth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming 2003-10, Vol.38 (10), p.1-12 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | In this paper, we provide examples of how thread-level speculation
(TLS) simplifies manual parallelization and enhances its
performance. A number of techniques for manual parallelization
using TLS are presented and results are provided that indicate the
performance contribution of each technique on seven SPEC CPU2000
benchmark applications. We also provide indications of the
programming effort required to parallelize each benchmark. TLS
parallelization yielded a 110% speedup on our four floating point
applications and a 70% speedup on our three integer applications,
while requiring only approximately 80 programmer hours and 150
lines of non-template code per application. These results support
the idea that manual parallelization using TLS is an efficient way
to extract fine-grain thread-level parallelism. |
---|---|
ISSN: | 0362-1340 1558-1160 |
DOI: | 10.1145/966049.781500 |