Abstract-Sampled simulation is a mature technique for reducing simulation time of single-threaded programs, but it is not directIy applicable to simulation of multi-threaded architectures. Recent multi-threaded sampling techniques assurne that the workload assigned to each thread does not change ac ross multiple executions of a program. This assumption does not hold for dynamically scheduled task-based programming models. Taskbased programming models allow the programmer to specify program segments as tasks which are instantiated many times and scheduled dynamically to available threads. Due to system noise and variation in scheduling decisions, two consecutive executions on the same machine typically result in different instruction streams processed by each thread. In this paper, we propose TaskPoint, a sampled simulation technique for dynamically scheduled task-based programs. We leverage task instances as sampling units and simulate only a fraction of all task instances in detail. Between detailed simulation intervals we employ a novel fast-forward mechanism for dynamically scheduled programs. We evaluate the proposed technique on a set of 19 task-based parallel benchmarks and two different architectures. Compared to detailed simulation, TaskPoint accelerates architectural simulation with 64 simulated threads by an average factor of 19.1 at an average error of 1.8% and a maximum error of 15.0%.
TaskPoint REF applies sampled simulation to taskbased programs.
TaskPoint: Sampled simulation of task-based programs
2016 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS)
2016 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS)
Computer Science