首页> 外文期刊>Computer architecture news >Respec: Efficient Online Multiprocessor Replay via Speculation and External Determinism
【24h】

Respec: Efficient Online Multiprocessor Replay via Speculation and External Determinism

机译:规格:通过推测和外部确定性进行高效的在线多处理器重播

获取原文
获取原文并翻译 | 示例
           

摘要

Deterministic replay systems record and reproduce the execution of a hardware or software system. While it is well known how to replay uniprocessor systems, replaying shared memory multiprocessor systems at low overhead on commodity hardware is still an open problem. This paper presents Respec, a new way to support deterministic replay of shared memory multithreaded programs on commodity multiprocessor hardware. Respec targets online replay in which the recorded and replayed processes execute concurrently.rnRespec uses two strategies to reduce overhead while still ensuring correctness: speculative logging and externally deterministic replay. Speculative logging optimistically logs less information about shared memory dependencies than is needed to guarantee deterministic replay, then recovers and retries if the replayed process diverges from the recorded process. Externally deterministic replay relaxes the degree to which the two executions must match by requiring only their system output and final program states match. We show that the combination of these two techniques results in low recording and replay overhead for the common case of data-race-free execution intervals and still ensures correct replay for execution intervals that have data races.rnWe modified the Linux kernel to implement our techniques. Our software system adds on average about 18% overhead to the execution time for recording and replaying programs with two threads and 55% overhead for programs with four threads.
机译:确定性重播系统记录并重现硬件或软件系统的执行。尽管众所周知如何重播单处理器系统,但是在商用硬件上以低开销重播共享内存多处理器系统仍然是一个未解决的问题。本文介绍了Respec,这是一种支持在商品多处理器硬件上确定性重放共享内存多线程程序的新方法。 Respec针对联机重播,其中记录的和重播的进程同时执行。rnRespec使用两种策略来减少开销,同时仍确保正确性:推测日志记录和外部确定性重播。与保证确定性重播相比,推测性日志记录乐观地记录有关共享内存依赖项的信息少,然后,如果重播的过程与记录的过程有所不同,则恢复并重试。外部确定性重放通过仅要求它们的系统输出和最终程序状态匹配来放松两个执行必须匹配的程度。我们证明了这两种技术的组合在无数据争用执行间隔的常见情况下导致较低的记录和重放开销,并且仍确保具有数据竞争的执行间隔的正确重放。rn我们修改了Linux内核以实现我们的技术。我们的软件系统平均在记录和重放具有两个线程的程序的执行时间上增加大约18%的开销,而对于具有四个线程的程序则增加55%的开销。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号