Tolerant Value Speculation in Coarse-Grain Streaming Computations [abstract] (IEEE Xplore, PDF)
Nathaniel Azuelos, Idit Keidar, and Ayal Zaks
Proceedings of the 25th IEEE International Parallel and Distributed Processing Symposium (IPDPS), May 2011.
Streaming applications are the subject of growing
interest, as the need for fast access to data continues to
grow. In this work, we present the design requirements and
implementation of coarse-grain value speculation in streaming
applications. We explain how this technique can be useful in
cases where serial parts of applications constitute bottlenecks,
and when slower I/O favors using available prefixes of the
data. Contrary to previous work, we show how allowing some
tolerance can justify early predictions on a scale of a large
window of values. We suggest a methodology for runtime
support of speculation, along with the mechanisms required for
rollback. We present resource management issues consequent
to our technique. We study how validation and speculation
frequencies impact the performance of the program. Finally,
we present our implementation in the context of the Huffman
encoder benchmark, running it in different configurations and
on different architectures.