KU-loop scheme: An efficient loop unfolding scheme for multithreaded computation
Multithreading is attractive in that it can tolerate latency and synchronization by effectively overlapping communication with computation. While several compiler techniques have been developed to produce multithreaded codes from functional language programs, it is very difficult to find effective l...
Gespeichert in:
Veröffentlicht in: | Journal of information science and engineering 1998-03, Vol.14 (1), p.223-236 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Multithreading is attractive in that it can tolerate latency and synchronization by effectively overlapping communication with computation. While several compiler techniques have been developed to produce multithreaded codes from functional language programs, it is very difficult to find effective loop implementation for multithreaded computation. In this paper, we will suggest a loop unfolding scheme, KU-Loop. In this scheme, parallel loops can be implemented more efficiently than sequential loops by effectively overlapping loop-setup with loop execution. In addition, we suggest equations to statically approximate the optimal loop unfolding degree for each loop class using profile information. Finally, we will analyze our loop unfolding scheme by means of simulation over several benchmarks and compare simulation results with the results of the equations. |
---|---|
ISSN: | 1016-2364 |