首页> 外文期刊>Computer architecture news >Clank: Architectural Support for Intermittent Computation
【24h】

Clank: Architectural Support for Intermittent Computation

机译:叮当声:间歇性计算的架构支持

获取原文
获取原文并翻译 | 示例

摘要

The processors that drive embedded systems are getting smaller; meanwhile, the batteries used to provide power to those systems have stagnated. If we are to realize the dream of ubiquitous computing promised by the Internet of Things, processors must shed large, heavy, expensive, and high maintenance batteries and, instead, harvest energy from their environment. One challenge with this transition is that harvested energy is insufficient for continuous operation. Unfortunately, existing programs fail miserably when executed intermittently. This paper presents Clank: lightweight architectural support for correct and efficient execution of long-running applications on harvested energywithout programmer intervention or extreme hardware modifications. Clank is a set of hardware buffers and memory-access monitors that dynamically maintain idempotency. Essentially, Clank dynamically decomposes program execution into a stream of restartable sub-executions connected via lightweight checkpoints. To validate Clank's ability to correctly stretch program execution across frequent, random power cycles, and to explore the associated hardware and software overheads, we implement Clank in Verilog, formally verify it, and then add it to an ARM Cortex M0+ processor which we use to run a set of 23 embedded systems benchmarks. Experiments show run-time overheads as low as 2.5%, with run-time overheads of 6% for a version of Clank that adds 1.7% hardware. Clank mmimizes checkpoints so much that re-execution time becomes the dominate contributor to run-time overhead.
机译:驱动嵌入式系统的处理器越来越小。同时,用于为这些系统供电的电池停滞了。如果我们要实现物联网所承诺的无处不在的计算梦想,则处理器必须抛弃笨重,昂贵,维护成本高的电池,取而代之的是从环境中获取能量。这种过渡的一个挑战是所收集的能量不足以连续运行。不幸的是,现有程序断断续续地执行时会惨败。本文介绍了Clank:轻量级的体系结构支持,可在不消耗程序员精力或对硬件进行极端修改的情况下,利用所收集的能量正确,有效地执行长期运行的应用程序。 Clank是一组硬件缓冲区和内存访问监视器,可动态维护幂等性。本质上,Clank将程序执行动态分解为通过轻量级检查点连接的可重新启动子执行流。为了验证Clank在频繁的随机电源循环中正确扩展程序执行的能力以及探索相关的硬件和软件开销的能力,我们在Verilog中实现了Clank,对其进行了正式验证,然后将其添加到我们用于以下目的的ARM Cortex M0 +处理器中:运行一组23个嵌入式系统基准测试。实验表明,运行时开销低至2.5%,对于添加了1.7%硬件的Clank版本,运行时开销为6%。 Clank极大地限制了检查点,以至于重新执行时间成为运行时开销的主要贡献者。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号