Organizing Speculative Computations in Functional Systems

  • Authors:
  • Raimund Schroeder;Werner E. Kluge

  • Affiliations:
  • -;-

  • Venue:
  • IFL '00 Selected Papers from the 12th International Workshop on Implementation of Functional Languages
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Speculative evaluation relates to computing several (alternative) threads of control of large programs concurrently without knowing in advance which of them contribute to which extent to final results. This approach may be used to advantage to compute, at the expense of deploying considerable processing power, solutions of np-hard search problems on average a lot faster than sequentially. This paper addresses the organizational measures necessary to perform speculative computations concurrently in a distributed memory multiprocessor system. They primarily concern task management and scheduling, a fairness regulation scheme which ensures progress of all speculative tasks at about the same pace, and the conflict between fairness and bounded numbers of speculative tasks. Though these measures are discussed in the context of functional languages and systems, they are in principle applicable in the imperative world as well.