Speeding up irregular applications in shared-memory multiprocessors: memory binding and group prefetching

Zheng Zhang, Josep Torrellas

Research output: Contribution to conferencePaperpeer-review

Abstract

While many parallel applications exhibit good spatial locality, other important codes in areas like graph problem-solving or CAD do not. Often, these irregular codes contain small records accessed via pointers. Consequently, while the former applications benefit from long cache lines, the latter prefer short lines. One good solution is to combine short lines with prefetching. In this way, each application can exploit the amount of spatial locality that it has. However, prefetching, if provided, should also work for the irregular codes. This paper presents a new prefetching scheme that, while usable by regular applications, is specifically targeted to irregular ones: Memory Binding and Group Prefetching. The idea is to hardware-bind and prefetch together groups of data that the programmer suggests are strongly related to each other. Examples are the different fields in a record or two records linked by a permanent pointer. This prefetching scheme, combined with short cache lines, results in a memory hierarchy design that can be exploited by both regular and irregular applications. Overall, it is better to use a system with short lines (16-32 bytes) and our prefetching than a system with long lines (128 bytes) with or without our prefetching. The former system runs 6 out of 7 Splash-class applications faster. In particular, some of the most irregular applications run 25-40% faster.

Original languageEnglish (US)
Pages188-199
Number of pages12
StatePublished - 1995
EventProceedings of the 22nd Annual International Symposium on Computer Architecture - Santa Margherita Ligure, Italy
Duration: Jun 22 1995Jun 24 1995

Other

OtherProceedings of the 22nd Annual International Symposium on Computer Architecture
CitySanta Margherita Ligure, Italy
Period6/22/956/24/95

ASJC Scopus subject areas

  • Engineering(all)

Fingerprint

Dive into the research topics of 'Speeding up irregular applications in shared-memory multiprocessors: memory binding and group prefetching'. Together they form a unique fingerprint.

Cite this