User Tools

Site Tools


tutorials:checkpointing_overview

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tutorials:checkpointing_overview [2025/11/14 21:27] – [Task-based Checkpointing] ibchadmintutorials:checkpointing_overview [2026/03/25 13:38] (current) – [The Concerns With Capacitors] ibchadmin
Line 13: Line 13:
   * **Adaptability**: an intermittent device should be able to adjust its operation to account for varying environments and energy availability, especially if it will be deployed across a variety of environments.  Even for more narrow deployments, an inflexible device may fail if the testing environment fails to accurately model its real world application.   * **Adaptability**: an intermittent device should be able to adjust its operation to account for varying environments and energy availability, especially if it will be deployed across a variety of environments.  Even for more narrow deployments, an inflexible device may fail if the testing environment fails to accurately model its real world application.
  
-A general survey of the two main approaches tackling these challenges are explored below.  This list is not intended to be exhaustive, as checkpointing/state management in intermittent computing is a significant and evolving area of research: rather, the objective is to provide a general overview of the most common methods currently available, along with their benefits and tradeoffs.  These approaches also assume a standard (von Neumann) device architecture: while other hardware configurations are being explored in intermittent computing, low-power devices with traditional architectures such as the [[microcontrollers:msp430|MSP430]] are cheaper and more accessible and so currently make up the vast majority of intermittent devices being designed and tested.+A general survey of the two main approaches tackling these challenges are explored below.  This list is not intended to be exhaustive, as checkpointing/state management in intermittent computing is a significant and evolving area of research: rather, the objective is to provide a general overview of the most common methods currently available, along with their benefits and tradeoffs.  These approaches also assume a standard (i.e. [[https://en.wikipedia.org/wiki/Von_Neumann_architecture|von Neumann]]) device architecture: while other hardware configurations are being explored in intermittent computing, low-power devices with traditional architectures such as the [[microcontrollers:msp430|MSP430]] are cheaper and more accessible and so currently make up the vast majority of intermittent devices being designed and tested.
  
 ===== Matched/Energy-Neutral Operation ===== ===== Matched/Energy-Neutral Operation =====
Line 50: Line 50:
  
 **Examples** **Examples**
-  * [[https://dl.acm.org/doi/10.1145/1961295.1950386|MementOS]]+  * [[https://dl.acm.org/doi/10.1145/1961295.1950386|Mementos]]
   * [[https://ieeexplore.ieee.org/document/6960060|Hibernus]]   * [[https://ieeexplore.ieee.org/document/6960060|Hibernus]]
   * [[https://dl.acm.org/doi/10.1145/3055031.3055082|HarvOS]]   * [[https://dl.acm.org/doi/10.1145/3055031.3055082|HarvOS]]
Line 63: Line 63:
   * [[https://dl.acm.org/doi/10.1145/3133920|Alpaca]]   * [[https://dl.acm.org/doi/10.1145/3133920|Alpaca]]
   * [[https://dl.acm.org/doi/10.1145/3131672.3131673|Mayfly]]   * [[https://dl.acm.org/doi/10.1145/3131672.3131673|Mayfly]]
-  * Artemis +  * [[https://dl.acm.org/doi/10.1145/3627703.3650070|ARTEMIS]] 
-  * Chain+  * [[https://dl.acm.org/doi/10.1145/2983990.2983995|Chain]]
   * [[https://dl.acm.org/doi/10.1145/3274783.3274837|InK]]   * [[https://dl.acm.org/doi/10.1145/3274783.3274837|InK]]
  
Line 84: Line 84:
 The issue arises when the requirements of the device and its peripherals each prioritize differing capacitances.  Take a simple device with a low power environmental sensor and a transmitter.  The sensor favors smaller capacitance, in order to charge more frequently and retrieve more samples (while being less likely to miss interesting events).  Transmitting packets, however, is energy intensive (with even low-power methods requiring energy equal to tens of thousands of operations on a low power microcontroller).  The transmitter may not be able to even successfully broadcast below a certain capacitance, but the larger capacitance is in direct conflict with the preference of the sensor to have shorter (but more frequent) bursts of energy for detection purposes. The issue arises when the requirements of the device and its peripherals each prioritize differing capacitances.  Take a simple device with a low power environmental sensor and a transmitter.  The sensor favors smaller capacitance, in order to charge more frequently and retrieve more samples (while being less likely to miss interesting events).  Transmitting packets, however, is energy intensive (with even low-power methods requiring energy equal to tens of thousands of operations on a low power microcontroller).  The transmitter may not be able to even successfully broadcast below a certain capacitance, but the larger capacitance is in direct conflict with the preference of the sensor to have shorter (but more frequent) bursts of energy for detection purposes.
  
-To this end a variety of capacitor configurations have been explored.  These configurations are the subject of [[tutorials:capacitor_sizing|their own article]], but can range from dynamically adjustable capacitor banks to individual capacitors for each microcontroller and/or peripheral.  Knowing the exact capacitor configuration can impact checkpointing: a strategy that assumes a fixed capacitance will obviously struggle with a dynamic bank, and multiple capacitors can complicate energy availability predictions depending on arrangement.+To this end a variety of capacitor configurations have been explored.  These configurations are the subject of [[tutorials:capacitor_selection|their own article]], but can range from dynamically adjustable capacitor banks to individual capacitors for each microcontroller and/or peripheral.  Knowing the exact capacitor configuration can impact checkpointing: a strategy that assumes a fixed capacitance will obviously struggle with a dynamic bank, and multiple capacitors can complicate energy availability predictions depending on arrangement.
  
 ===== Designing Adaptable Strategies ===== ===== Designing Adaptable Strategies =====
tutorials/checkpointing_overview.1763155633.txt.gz · Last modified: 2025/11/14 21:27 by ibchadmin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki