On Thu, 3 Oct 2019, Maciej W. Rozycki wrote:
You need an
extremely high resolution timer to detect slight differences in
execution time of speculatively-executed threads. The VAX 11/780 certainly did
not do speculative execution, and my guess is that all VAXen did not, either.
The NVAX and NVAX+ implementations include a branch predictor in their
microarchitecture[1], so obviously they do execute speculatively.
For the record: in NVAX prediction does not extend beyond the instruction
fetch unit (I-box in VAX-speak), so there's actually no speculative
execution, but only speculative prefetch.
Maciej