首页> 外文期刊>Journal of Parallel and Distributed Computing >Parallel tiled cache and energy efficient codes for O(n~4) RNA folding algorithms
【24h】

Parallel tiled cache and energy efficient codes for O(n~4) RNA folding algorithms

机译:用于O(n〜4)RNA折叠算法的平行瓷砖缓存和节能代码

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

摘要

In this paper, we consider two O(n~4) RNA folding algorithms, Zuker's recurrence and the maximum expected accuracy prediction (MEA), which are challenging dynamic programming tasks to optimize because they are computationally intensive and have a large number of non-uniform dependences. We apply our previously published approach to automatically tile and parallelize each loop in the studied algorithms by means of the polyhedral model. First, for each loop nest statement, rectangular tiles are formed within the iteration space of the loop nest. Then, those tiles are corrected to honor all dependences exposed for the original loop nest. Correction is based on applying the exact transitive closure of a dependence graph. We implemented our approach as a part of the source-to-source TRACO compiler, generated target code, and compare the performance and energy consumption of generated code with those of code obtained with the state-of-the-art PluTo compiler based on the affine transformation framework as well as with those of code generated by means of the manual cache-efficient Transpose method. Experiments were carried out on a modern multi-core processor to achieve the significant locality improvement and energy saving for generated code.
机译:在本文中,我们考虑了两种(n〜4)RNA折叠算法,Zuker的复发和最大预期准确性预测(MEA),这是挑战动态编程任务,以优化,因为它们是计算密集的并且具有大量的非统一的依赖。我们应用先前发布的方法以通过多面体模型通过多面体模型自动铺设并将每个循环并行化。首先,对于每个循环巢语句,在循环嵌套的迭代空间内形成矩形图块。然后,纠正这些图块以尊重对原始循环嵌套暴露的所有依赖。校正基于应用依赖性图的确切的传递闭合。我们以源代码到源TRACO编译器,生成的目标代码的一部分实现了我们的方法,并将生成的代码的性能和能耗与基于的艺术状态的PLUTO编译器获得的代码进行比较仿射转换框架以及通过手动缓存有效的转置方法生成的代码的转换框架。实验是在现代多核处理器上进行的,以实现生成的代码的重要地位改进和节能。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号