15 January 2007
Lampson: Lazy and Speculative Execution
24
Speculative: Data Speculation
nGeneralize from branch prediction: predict data
oSeems implausible in general—predict 0?
oWorks well to predict that cached data is still valid
▬Even though it might be updated by a concurrent process
nThe bet: Data will turn out as predicted
oAn easy win for coherent caches
n
nWorks for distributed file systems too
oVariation: speculate that sync will succeed
▬Block output that depends on success