HARE++: Hardware Assisted Reverse Execution Revisited

نویسندگان

  • Ioannis Doudalis
  • Milos Prvulovic
چکیده

Bidirectional debugging is a promising and powerful debugging technique that can help programmers backtrack and find the causes of program errors faster. A key component of bidirectional debugging is checkpointing, which allows the debugger to restore the program to any previously encountered state, but can incur significant performance and memory overheads that can render bidirectional debugging unusable. Multiple software and hardware checkpointing techniques have been proposed. Software provides better memory management through checkpoint consolidation, while hardware can create checkpoints at low performance cost which unfortunately are not consolidation-friendly. HARE was the first hardware technique to create consolidatable checkpoints in order to reduce the overall performance and memory costs. In this paper we are proposing HARE++, a redesign of the original HARE that addresses the shortcomings of the original technique. HARE++ reduces the reverse execution latency by 3.5-4 times on average compared to HARE and provides the ability to construct both undo and redo-log checkpoints allowing the seamless movement over the execution time of the program. At the same time HARE++maintains the performance advantages of HARE, incurring < 2% performance overhead on average across all benchmarks, and allows the consolidation of checkpoints with memory requirements similar to HARE.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Efficient Reverse Converter for Three Modules Set {2^n-1,2^(n+1)-1,2^n} in Multi-Part RNS

Residue Number System is a numerical system which arithmetic operations are performed parallelly. One of the main factors that affects the system’s performance is the complexity of reverse converter. It should be noted that the complexity of this part should not affect the earned speed of parallelly performed arithmetic unit. Therefore in this paper a high speed converter for moduli set {2n-1, ...

متن کامل

Efficient Reverse Converter for Three Modules Set {2^n-1,2^(n+1)-1,2^n} in Multi-Part RNS

Residue Number System is a numerical system which arithmetic operations are performed parallelly. One of the main factors that affects the system’s performance is the complexity of reverse converter. It should be noted that the complexity of this part should not affect the earned speed of parallelly performed arithmetic unit. Therefore in this paper a high speed converter for moduli set {2n-1, ...

متن کامل

Assisted Execution

We introduce a new execution paradigm called assisted execution. In this model, a set of auxiliary “assistant” threads, called nanothreads, is attached to each thread of an application. Nanothreads are very lightweight threads which run on the same processor as the main (application) thread and help execute the main thread as fast as possible. Nanothreads exploit resources that are idled in the...

متن کامل

Hare: a Hierarchical Allocator for Registers in Multiple Issue Architectures

In this paper we present HARE, a new hierarchical approach to register allocation and assignment for multiple issue load/store architectures. HARE makes extensive use of execution estimates and functional unit availability information to select values for spilling and to place the spill code in locations that minimize the increase in the overall execution time of the program. Incorporated in HA...

متن کامل

Speculative pre-execution assisted by compiler (SPEAR)

Speculative pre-execution achieves efficient data prefetching by running additional prefetching threads on spare hardware contexts. Various implementations for speculative pre-execution have been proposed, including compiler-based static approaches and hardware-based dynamic approaches. A static approach defines the p-thread at compile time and executes it as a stand-alone running thread. There...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011