【24h】

Using Artificial Neural Network for Predicting Thread Partitioning in Speculative Multithreading

机译:使用人工神经网络预测推测性多线程中的线程分配

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

摘要

Speculative multithreading (SpMT) is a thread-level automatic parallelization technique to accelerate sequential programs on multi-core, and it partitions programs into multiple threads to be speculatively executed in the presence of ambiguous data and control dependences while the correctness of the programs is guaranteed by hardware support. Thread granularity, number of parallel threads as well as partition postions are crucial to the performance improvement in SpMT, for they determine the amount of resources (CPU, memory, cache, or waiting cycles, etc), and affect the efficiency of every PE (Processing Element). In conventional way, these three parameters are determined by heuristic rules. Although it is simple to partition threads with them, they are a type of one-size-fits-all strategy and can not guarantee to get the optimal solution of thread partitioning. This paper proposes an Artificial Neural Network (ANN) based approach to learn and determine the thread partition strategy. Using the ANN-based thread partition approach, an unseen irregular program can obtain a stable, much higher speedup than the Heuristic Rules (HR) based approach. On Prophet, which is a generic SpMT processor to evaluate the performance of multithreaded programs, the novel thread partitioning policy is evaluated and reaches an average speedup of 1.80 on 4-core processor. Experiments show that our proposed approach can obtain a significant increase in speedup and Olden benchmarks deliver a better performance improvement of 2.36% than the traditional heuristic rules based approach. The results indicate that our approach finds the best partitioning scheme for each program and is more stable across programs.
机译:推测性多线程(SpMT)是一种线程级自动并行化技术,用于加速多核上的顺序程序,它在存在歧义数据和控制依赖性的情况下,将程序划分为多个线程以进行推测性执行,同时保证了程序的正确性。通过硬件支持。线程粒度,并行线程数以及分区位置对于SpMT性能的提高至关重要,因为它们确定资源(CPU,内存,缓存或等待周期等)的数量,并影响每个PE的效率(处理元素)。以常规方式,这三个参数由启发式规则确定。尽管使用它们对线程进行分区很简单,但是它们是一种“千篇一律”的策略,不能保证获得线程分区的最佳解决方案。本文提出了一种基于人工神经网络(ANN)的方法来学习和确定线程分配策略。使用基于ANN的线程分区方法,看不见的不规则程序可以获得比基于启发式规则(HR)的方法稳定,更高的加速。在Prophet(这是用于评估多线程程序性能的通用SpMT处理器)上,对新颖的线程分区策略进行了评估,并在4核处理器上平均提高了1.80的速度。实验表明,与传统的基于启发式规则的方法相比,我们提出的方法可以显着提高速度,而Olden基准可以将性能提高2.36%。结果表明,我们的方法为每个程序找到了最佳的分区方案,并且跨程序更稳定。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号