Improving the Performance of Speculatively Parallel Applications on the Hydra CMP

Abstract

Hydra is a chip multiprocessor (CMP) with integrated support for thread-level speculation. Thread-level speculation provides a way to parallelize sequential programs without the need for data dependence analysis or synchronization. This makes it possible to parallelize applications for which static memory dependence analysis is difficult or impossible. While performance of the baseline Hydra system on applications with significant amounts of medium to large grain parallelism is good, the performance on integer applications with fine-grained parallelism can be poor. In this paper, we describe a collection of software and hardware techniques for improving speculation performance of the Hydra CMP. These techniques focus on reducing the overheads associated with speculation and improving the speculation behavior of the applications using code restructuring. When these techniques are applied to a set of ten integer, multimedia and floating-point bench-marks, significant performance improvements result.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jan 01, 1999
Accession Number
ADA419606

Entities

People

  • Kunle Olukotun
  • Lance Hammond
  • Mark Willey

Organizations

  • Stanford University

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Access Time
  • Algorithms
  • Compilers
  • Computations
  • Computer Programming
  • Computer Programs
  • Computers
  • Decoding
  • Ear
  • Instructions
  • Iterations
  • Multiprocessors
  • Optimization
  • Simulations
  • Simulators
  • Statistics
  • System Software

Fields of Study

  • Computer science

Readers

  • Parallel and Distributed Computing.