Traced-based simulators usually have two components: one that executes actions and stores the results (i.e. traces) and another which reads the log files of traces and interpolates them to new (and often more complex) scenarios.[2]
For instance, in the case of large computer cluster design, the execution takes place on a small number of nodes, and traces are left in log files. The simulator reads those log files and simulates performance on a much larger number of nodes, thus providing a view of the performance of very large applications, based on the execution traces on a much smaller number of nodes.[2][3]