Deterministic replay provides the possibility of reproducing parallel program execution. In order to get excellent performance in replay-runs
this paper proposes a parallel replay method based on shared memory dependency parir
which conducted by offline analysis of original log generated in record-runs to recognise the record items with memory dependency relationship
and each thread only executes these record items in order in replay-runs. Performance evaluation using PARSEC benchmark shows that this method introduces little overhead in replay-runs.
关键词
Keywords
references
Honarmand N, Torrellas J. Replay debugging: Leveraging record and replay for program debugging[C]//ISCA 2014. USA, Minnesota, 2014: 445-456.
唐士斌. 多线程程序的确定性调试方法[D]. 北京: 中国科学院计算技术研究所, 2014.
Pokam G, Pereira C, Danne K, et al. Hardware and software approaches for deterministic multi-processor replay of concurrent programs[J]. Intel Technol, 2009, 13(4)20-41. DOI: 20
Leblanc T J, Mellor-Crummey J M. Debugging parallel programs with instant replay[J]. IEEE Trans. Comput, 1987, 34(4): 471-482. DOI: 471
Liu P, Zhang X, Tripp O, et al. Light: Replay via tightly bounded recording[C]//PLDI 2015. USA, Portland, 2015: 55-64.
Patil H, Pereira C, Stallcup M, et al. PinPlay: a framework for deterministic replay and reproducible analysis of parallel programs[C]//CGO 2010. Canada, Toronto, 2010: 2-11.
Courtois P J, Heymans F, Parnas D L. Concurrent Control with 'eaders' and 'writers'[J]. Commun. ACM, 1971, 14(10): 667-668. DOI: 667
Bhansali S, Chen W K, de Jong S, et al. Framework for instruction-level tracing and analysis of program executions[C]//VEE 2006. Canada, Ottawa, 2006: 154-163.
Bienia C, Kumar S, Singh J P, et al. The PARSEC benchmark suite: characterization and architectural implications[C]//PACT 2008. Canada, Toronto, 2008: 72-81.