首页> 外文会议>Joint workshop on Foundations of mobile computing >Towards understanding algorithmic factors affecting energy consumption
【24h】

Towards understanding algorithmic factors affecting energy consumption

机译:了解影响能量消耗的算法因素

获取原文
获取外文期刊封面目录资料

摘要

Mobile devices consider energy to be a limiting resource. Over the past decade significant research has gone into how one can reduce energy consumption at the hardware level, network protocol level, operating system level, and compiler level. In almost all algorithm analysis, a single resource such as time or communication is often taken as a proxy for energy. We address this problem by defining an algorithmic model for energy, designing algorithm variants that reduce energy cost in this model, and then performing preliminary experiments to test the model.Our starting point is an algorithmic energy model inspired by work from the compilers community [26]. Augmenting and simplifying this model motivates the need to consider an algorithm's "switching" complexity; this measure captures the extent to which one switches between different functional units during execution. We carry out preliminary experiments on the Itsy pocket computer, which contains a StrongARM SA-1100 processor running Linux, to compare "high-switch" versions of bubble sort and other algorithms to optimized "low-switch" versions. Our preliminary results show that switching does not appear to affect energy consumption at the algorithmic level.We then look at a factor that does not appear to have been studied, namely the cost of generating (pseudo)random bits. Derandomization is a goal in cryptography and complexity theory. To our knowledge the energy cost of randomness itself has not been studied. Nonetheless, many mobile protocols and algorithms might utilize randomness, for example to handle contention resolution, generate cryptographic keys, or to accomplish efficient sorting. We consider three common mechanisms for generating randomness: the standard C library random number generator, and the Linux /dev/random, and /dev/urandom generators. We perform tests that compare the energy consumed by these generators compared to thecost of performing basic arithmetic instructions. We use Quicksort as an example of a classic basic application-level algorithm to understand the energy cost of randomness, and compare the energy consumed by randomized Quicksort to standard Quicksort. Our preliminary results show that generating randomness does in fact incur a significant energy cost, and /dev/random is the most expensive of the three mechanisms.We conclude that understanding energy consumption at the algorithmic level is an important but overlooked area of investigation, and discuss the implications of our results. We end with directions for for further work.
机译:移动设备认为能量是限制资源。在过去的十年中,大量研究进入了如何降低硬件级别,网络协议级别,操作系统级别和编译器级别的能耗。在几乎所有算法分析中,单个资源如时间或通信通常被视为能量的代理。我们通过定义能量,设计算法变体的算法模型来解决这个问题,这些算法在该模型中降低能量成本,然后执行测试模型的初步实验。我们的起点是由编译器社区的工作启发的算法能量模型[26 ]。增强和简化此模型激励需要考虑算法的“切换”复杂性;该措施捕获在执行期间在不同功能单元之间切换的程度。我们对ITSY Pocket计算机进行初步实验,其中包含运行Linux的StrongArm SA-1100处理器,将“高开关”版本的泡沫排序和其他算法与优化的“低开关”版本进行比较。我们的初步结果表明,切换似乎不会影响算法水平的能量消耗。然后看看似乎没有研究过的因素,即生成(伪)随机位的成本。嘲弄是密码学和复杂性理论的目标。据了解,随机性本身的能源成本尚未研究。尽管如此,许多移动协议和算法可以利用随机性,例如来处理争用分辨率,生成加密密钥,或者完成有效排序。我们考虑了三种用于生成随机性的常见机制:标准C库随机数发生器,以及Linux / dev /随机,和/ dev / urandom生成器。与执行基本算术指令进行相比,我们执行比较这些发生器消耗的能量的测试。我们使用QuickSort作为经典基本应用程序级算法的示例,以了解随机性的能量成本,并将随机Quicksort消耗的能量与标准Quicksort进行比较。我们的初步结果表明,生成随机性实际上会产生显着的能源成本,而且/开发/随机是三种机制中最昂贵的。我们得出结论,了解算法水平的能源消耗是一个重要但被忽视的调查领域,以及讨论我们结果的含义。我们以指示为止进一步的工作。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号