As annoying as a software bug can be, what will always make it more vexing is if you cannot figure out what caused the problem. As an end user, bugs can be frustrating, but for a developer whose software is throwing errors, the lack of any apparent cause is far worse. To help find the causes, researchers at the University of Illinois College of Engineering and Intel have partnered to produce QuickRec for tracking and recording multithreaded programs.
QuickRec is a prototype multicore architecture designed specifically to record everything the processor does while running a piece of software. This data can then be examined by developers, and even replayed to isolate any errors. This includes accidental errors and those caused by malicious code meant to disrupt legitimate programs attempting to complete their tasks.
Such a computer 'black box' could have great influence on how multithreaded programs are monitored and debugged in the future. Importantly, it does not negatively impact the performance of the processor.