首页> 外文期刊>Parallel and Distributed Systems, IEEE Transactions on >EasyPDP: An Efficient Parallel Dynamic Programming Runtime System for Computational Biology
【24h】

EasyPDP: An Efficient Parallel Dynamic Programming Runtime System for Computational Biology

机译:EasyPDP:用于计算生物学的高效并行动态编程运行时系统

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

摘要

Dynamic programming (DP) is a popular and efficient technique in many scientific applications such as computational biology. Nevertheless, its performance is limited due to the burgeoning volume of scientific data, and parallelism is necessary and crucial to keep the computation time at acceptable levels. The intrinsically strong data dependency of dynamic programming makes it difficult and error-prone for the programmer to write a correct and efficient parallel program. Therefore, this paper builds a runtime system named EasyPDP aiming at parallelizing dynamic programming algorithms on multicore and multiprocessor platforms. Under the concept of software reusability and complexity reduction of parallel programming, a DAG Data Driven Model is proposed, which supports those applications with a strong data interdependence relationship. Based on the model, EasyPDP runtime system is designed and implemented. It automatically handles thread creation, dynamic data task allocation and scheduling, data partitioning, and fault tolerance. Five frequently used DAG patterns from biological dynamic programming algorithms have been put into the DAG pattern library of EasyPDP, so that the programmer can choose to use any of them according to his/her specific application. Besides, an ideal computing distribution model is proposed to discuss the optimal values for the performance tuning arguments of EasyPDP. We evaluate the performance potential and fault tolerance feature of EasyPDP in multicore system. We also compare EasyPDP with other methods such as Block-Cycle Wavefront (BCW). The experimental results illustrate that EasyPDP system is fine and provides an efficient infrastructure for dynamic programming algorithms.
机译:动态编程(DP)是许多科学应用(例如计算生物学)中流行的高效技术。但是,由于科学数据的蓬勃发展,其性能受到了限制,而并行性对于将计算时间保持在可接受的水平是必要且至关重要的。动态编程的内在强大的数据依赖性使程序员难以编写正确且有效的并行程序,而且容易出错。因此,本文构建了一个名为EasyPDP的运行时系统,旨在在多核和多处理器平台上并行化动态编程算法。在软件可重用性和并行编程复杂度降低的概念下,提出了一种DAG数据驱动模型,该模型支持具有强大数据相互依赖关系的那些应用程序。基于该模型,设计并实现了EasyPDP运行系统。它自动处理线程创建,动态数据任务分配和调度,数据分区和容错能力。来自生物动态编程算法的五个常用DAG模式已被放入EasyPDP的DAG模式库中,以便程序员可以根据自己的特定应用选择使用它们中的任何一个。此外,提出了一种理想的计算分布模型来讨论EasyPDP性能调整参数的最佳值。我们评估了EasyPDP在多核系统中的性能潜力和容错功能。我们还将EasyPDP与其他方法(例如,块循环波前(BCW))进行了比较。实验结果表明EasyPDP系统很好,并为动态编程算法提供了有效的基础架构。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号