Exploiting superword level parallelism with multimedia instruction sets

Citation
S. Larsen et S. Amarasinghe, Exploiting superword level parallelism with multimedia instruction sets, ACM SIGPL N, 35(5), 2000, pp. 145-156
Citations number
25
Categorie Soggetti
Computer Science & Engineering
Journal title
ACM SIGPLAN NOTICES
ISSN journal
15232867 → ACNP
Volume
35
Issue
5
Year of publication
2000
Pages
145 - 156
Database
ISI
SICI code
1523-2867(200005)35:5<145:ESLPWM>2.0.ZU;2-D
Abstract
Increasing focus on multimedia applications has prompted the addition of mu ltimedia extensions to most existing general purpose microprocessors. This added functionality comes primarily with the addition of short SIMD instruc tions. Unfortunately, access to these instructions is limited to in-line as sembly and library calls. Generally, it has been assumed that vector compil ers provide the most promising means of exploiting multimedia instructions. Although vectorization technology is well understood, it is inherently com plex and fragile. In addition, it is incapable of locating SIMD-style paral lelism within a basic block. In this paper we introduce the concept of Superword Level Parallelism (SLP) , a novel way of vie-wing parallelism in multimedia and scientific applicat ions, we believe SLP is fundamentally different from the loop level paralle lism exploited by traditional vector processing, and therefore demands a ne w method of extracting it. We have developed a simple and robust compiler f or detecting SLP that targets basic blocks rather than loop nests. As with techniques designed to extract ILP, ours is able to exploit parallelism bot h across loop iterations and within basic blocks. The result is an algorith m that provides excellent performance in several application domains. In ou r experiments, dynamic instruction counts were reduced by 46%. Speedups ran ged from 1.24 to 6.70.