Litcius/Paper detail

Feel Free to Interrupt

Sameh Attia, Vaughn Betz

2020ACM Transactions on Reconfigurable Technology and Systems22 citationsDOI

Abstract

Saving and restoring an FPGA task state in an orderly manner is essential to enable hardware checkpointing, which is highly desirable to improve the ability to debug cloud-scale hardware services, and context switching, which allows multiple users to share FPGA resources. However, these features require task interruption, and stopping a task at an arbitrary time can cause several hazards including deadlock and data loss. In this article, we build a context saving and restoring simulator to simulate and identify these hazards. In addition, we derive design rules that should be followed to achieve safe task interruption. Finally, we propose task wrappers that can be placed around an FPGA task to implement these rules. The timing and area overheads added by these wrappers are very small; they add 1.8% area and no timing overhead to a full Memcached system. Taken together, these design rules and wrappers enable safe checkpointing and context switching in a wide variety of FPGA tasks, including those with multiple clocks, multi-cycle I/O transactions, and interface dependencies.

Topics & Concepts

Computer scienceInterruptTask (project management)Context switchDebuggingField-programmable gate arrayContext (archaeology)Embedded systemOverhead (engineering)DeadlockInterface (matter)Distributed computingVariety (cybernetics)Operating systemMicrocontrollerBubbleEconomicsManagementBiologyPaleontologyMaximum bubble pressure methodArtificial intelligenceDistributed systems and fault toleranceRadiation Effects in ElectronicsParallel Computing and Optimization Techniques
Feel Free to Interrupt | Litcius