Transactional Concurrency Control for Intermittent, Energy-Harvesting Computing Systems

被引:44
|
作者
Ruppel, Emily [1 ]
Lucia, Brandon [1 ]
机构
[1] Carnegie Mellon Univ, Pittsburgh, PA 15213 USA
基金
美国国家科学基金会;
关键词
intermittent computing; event-driven concurrency; transactions; ARCHITECTURE; PERSISTENCY; LANGUAGE; SUPPORT; STORAGE;
D O I
10.1145/3314221.3314583
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Batteryless energy-harvesting devices are computing platforms that operate in environments where batteries are not viable for energy storage. Energy-harvesting devices operate intermittently, only as energy is available. Prior work developed software execution models robust to intermittent power failures but no existing intermittent execution model allows interrupts to update global persistent state without allowing incorrect behavior or requiring complex programming. We present Coati, a system that supports event-driven concurrency via interrupts in an intermittent software execution model. Coati exposes a task-based interface for synchronous computations and an event interface for asynchronous interrupts. Coati supports synchronizing tasks and events using transactions, which allow for multitask atomic regions that extend across multiple power failures. This work explores two different models for serializing events and tasks that both safely provide intuitive semantics for event-driven intermittent programs. We implement a prototype of Coati as C language extensions and a runtime library. Using energy-harvesting hardware, we evaluate Coati on benchmarks adapted from prior work. We show that Coati prevents failures when interrupts are introduced, while the baseline fails in just seconds. Moreover, Coati operates with a reasonable run time overhead that is often comparable to an idealized baseline.
引用
收藏
页码:1085 / 1100
页数:16
相关论文
共 50 条
  • [1] Energy-Harvesting Systems for Green Computing
    Terrence Mak
    [J]. Journal of Electronic Science and Technology, 2012, (04) : 291 - 295
  • [2] Energy-Harvesting Systems for Green Computing
    Terrence Mak
    [J]. Journal of Electronic Science and Technology, 2012, 10 (04) : 291 - 295
  • [3] Modeling Periodic Energy-Harvesting Computing Systems
    Ghasemi, Fatemeh
    Jahre, Magnus
    [J]. IEEE COMPUTER ARCHITECTURE LETTERS, 2021, 20 (02) : 142 - 145
  • [4] Energy-Harvesting Systems
    不详
    [J]. IEEE MICRO, 2016, 36 (03) : 73 - 75
  • [5] Hibernus: Sustaining Computation During Intermittent Supply for Energy-Harvesting Systems
    Balsamo, Domenico
    Weddell, Alex S.
    Merrett, Geoff V.
    Al-Hashimi, Bashir M.
    Brunelli, Davide
    Benini, Luca
    [J]. IEEE EMBEDDED SYSTEMS LETTERS, 2015, 7 (01) : 15 - 18
  • [6] On Transactional Concurrency Control
    Graefe, Goetz
    [J]. Synthesis Lectures on Data Management, 2019, 14 (05): : 1 - 404
  • [7] An Energy-interference-free Hardware-Software Debugger for Intermittent Energy-harvesting Systems
    Colin, Alexei
    Harvey, Graham
    Lucia, Brandon
    Sample, Alanson P.
    [J]. ACM SIGPLAN NOTICES, 2016, 51 (04) : 577 - 589
  • [8] An energy-interference-free hardware-software debugger for intermittent energy-harvesting systems
    Colin A.
    Harvey G.
    Lucia B.
    Sample A.P.
    [J]. 1600, Association for Computing Machinery (51): : 577 - 589
  • [9] Multiversion Concurrency Control on Intermittent Systems
    Chen, Wei-Ming
    Chen, Yi-Ting
    Hsiu, Pi-Cheng
    Kuo, Tei-Wei
    [J]. 2019 IEEE/ACM INTERNATIONAL CONFERENCE ON COMPUTER-AIDED DESIGN (ICCAD), 2019,
  • [10] Optimal Rate Control for Energy-Harvesting Systems with Random Data and Energy Arrivals
    Jia, Riheng
    Zhang, Jinbei
    Liu, Xiao-Yang
    Liu, Peng
    Fu, Luoyi
    Wang, Xinbing
    [J]. ACM TRANSACTIONS ON SENSOR NETWORKS, 2019, 15 (01)