首页> 外文会议>2011 ACM international conference on object oriented programming, systems, languages and applications >Two for the Price of One: A Model for Parallel and Incremental Computation
【24h】

Two for the Price of One: A Model for Parallel and Incremental Computation

机译:一对一的价格之二:并行和增量计算模型

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

摘要

Parallel or incremental versions of an algorithm can significantly outperform their counterparts, but are often difficult to develop. Programming models that provide appropriate abstractions to decompose data and tasks can simplify par-allelization. We show in this work that the same abstractions can enable both parallel and incremental execution. We present a novel algorithm for parallel self-adjusting computation. This algorithm extends a deterministic parallel programming model (concurrent revisions) with support for recording and repeating computations. On record, we construct a dynamic dependence graph of the parallel computation. On repeat, we reexecute only parts whose dependencies have changed. We implement and evaluate our idea by studying five example programs, including a realistic multi-pass CSS layout algorithm. We describe programming techniques that proved particularly useful to improve the performance of self-adjustment in practice. Our final results show significant speedups on all examples (up to 37x on an 8-core machine). These speedups are well beyond what can be achieved by parallelization alone, while requiring a comparable effort by the programmer.
机译:算法的并行或增量版本可以明显优于其他版本,但是通常很难开发。提供适当抽象以分解数据和任务的编程模型可以简化并行分析。我们在这项工作中表明,相同的抽象可以实现并行和增量执行。我们提出了一种用于并行自调整计算的新颖算法。该算法扩展了确定性并行编程模型(并行修订版),并支持记录和重复计算。根据记录,我们构造了并行计算的动态依赖图。重复一遍,我们仅重新执行依赖关系已更改的部分。我们通过研究五个示例程序(包括一个现实的多遍CSS布局算法)来实现和评估我们的想法。我们描述了在实践中被证明对提高自我调节性能特别有用的编程技术。我们的最终结果表明,所有示例的速度都得到了显着提高(8核计算机上的速度提高了37倍)。这些加速远远超出了仅通过并行即可实现的速度,同时需要程序员做出可比的努力。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号