MétaCan
← all works

The potential for using thread-level data speculation to facilitate automatic parallelization

2002· article· en· 347 citations· W1958945689 on OpenAlex· 10.1109/hpca.1998.650541

Why is this work in the frame?

A frame that forgets how it found something cannot be audited. These are the routes that admitted this work.

Canadian funderA Canadian agency funded it. The work may carry no Canadian affiliation at all.

No Canadian affiliation. An affiliation-only frame — the usual design — would never have seen this work. It is one of the works that make the case for inverting the frame.

Machine scores (provisional)

Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.

The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.

Opus teacher head0.224
GPT teacher head0.321
Teacher spread
0.097 · how far apart the two teachers sit on this one work
Validation status
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from it

Abstract

As we look to the future, and the prospect of a billion transistors on a chip, it seems inevitable that microprocessors will exploit having multiple parallel threads. To achieve the full potential of these "single-chip multiprocessors", however, we must find a way to parallelize non-numeric applications. Unfortunately, compilers have had little success in parallelizing non-numeric codes due to their complex access patterns. This paper explores the potential for using thread-level data speculation (TLDS) to overcome this limitation by allowing the compiler to view parallelization solely as a cost/benefit tradeoff rather than something which is likely to violate program correctness. Our experimental results demonstrate that with realistic compiler support, TLDS can offer significant program speedups. We also demonstrate that through modest hardware extensions, a generic single-chip multiprocessor could support TLDS by augmenting its cache coherence scheme to detect dependence violations, and by using the primary data caches to buffer speculative state.

Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.

The record

Venue
Topic
Parallel Computing and Optimization Techniques
Field
Computer Science
Canadian institutions
Funders
Natural Sciences and Engineering Research Council of Canada
Keywords
Computer scienceCompilerParallel computingSpeculationThread (computing)Speculative multithreadingCorrectnessExploitCache coherenceCacheMultithreadingSpeculative executionMultiprocessingChipComputer architectureCPU cacheProgramming languageCache algorithms
Has abstract in OpenAlex
yes