Useful when: You are testing real-time systems. Parallel testing. Simulation is being refactored and you expect precisely the same answers when you are finished, particularly if floating point accuracy may be a problem.