内存竞争记录是实现多核程序确定性重演的关键技术.针对现有内存竞争记录算法存在消耗资源多、记录日志大、重演速度受限等问题,本文提出了一种硬件结构支持的、基于分段技术的、高效的点对点内存竞争记录算法,该算法用一种更严格的间接发生序表示内存竞争,采用分段的可推导约减算法减少记录内存竞争的次数,同时使用最大近似时戳法近似已被替换出cache的内存块的时戳,能够在引入较少硬件资源的前提下记录较小的内存竞争日志,且简单易实现,重演速度快.
Memory race recording is a key technology in deterministic multi-core replay.High hardware consumption,large log size and slow replay speed limited the application of previous memory race recording algorithms.This paper proposes a new efficient hardware memory race recording algorithm,which is implemented in chunks and logs the outcomes of memory races in a point-to-point approach.In this recording mechanism,memory race is presented in a new stricter indirect dependency,a chunk-based transitive reduction algorithm is introduced to reduce the number of memory races logged,a maximum timestamp approximation method is proposed to deal with those races evicted from cache.This new memory race recording algorithm can replay a program at production run speed,and log a smaller memory race log using smaller hardware than previous point-to-point approaches.