Trace-based simulator