首页> 外文期刊>Computers, IEEE Transactions on >Thread Assignment in Multicore/Multithreaded Processors: A Statistical Approach
【24h】

Thread Assignment in Multicore/Multithreaded Processors: A Statistical Approach

机译:多核/多线程处理器中的线程分配:一种统计方法

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

摘要

The introduction of multicore/multithreaded processors, comprised of a large number of hardware contexts (virtual CPUs) that share resources at multiple levels, has made process scheduling, in particular assignment of running threads to available hardware contexts, an important aspect of system performance. Nevertheless, thread assignment of applications running on state-of-the art processors is an NP-complete problem. Over the years, numerous studies have proposed heuristic-based algorithms for thread assignment. Since the thread assignment problem is intractable, it is in general impossible to know the performance of the optimal assignment, so the room for improvement of a given algorithm is also unknown. It is therefore hard to decide whether to invest more effort and time to improve an algorithm that may already be close to optimal. In this paper, we present a statistical approach to the thread assignment problem. First, we present a method that predicts the performance of the optimal thread assignment, based on the observed performance of each thread assignment in a random sample. The method is based on Extreme Value Theory (EVT), a branch of statistics that analyses extreme deviations from the population mean. We also propose sample pruning, a method that significantly reduces the time required to apply the statistical method by reducing the number of candidate solutions that need to be measured. Finally, we show that, if no suitable heuristic-based algorithm is available, a sample of several thousand random thread assignments is enough to obtain, with high confidence, an assignment with performance close to optimal. The presented approach is architecture and application independent, and it can be used to address the thread assignment problem in various domains. It is especially well suited for systems in which the workload seldom changes. An example is network systems, which typically provide a constant set of services that are known in advance, with network- applications performing a similar processing algorithm for each packet in the system. In this paper, we validate our methods with an industrial case study for a set of multithreaded network applications on an UltraSPARC T2 processor. This article is an extension of our previous work , which was published in Proceedings of 17th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-2012).
机译:由大量在多个级别共享资源的硬件上下文(虚拟CPU)组成的多核/多线程处理器的引入,使进程调度(尤其是将运行线程分配给可用的硬件上下文)成为系统性能的重要方面。但是,在最先进的处理器上运行的应用程序的线程分配是一个完整的NP问题。多年来,许多研究提出了基于启发式的线程分配算法。由于线程分配问题很棘手,因此通常不可能知道最佳分配的性能,因此给定算法的改进空间也是未知的。因此,很难决定是否要花费更多的精力和时间来改善可能已经接近最佳的算法。在本文中,我们提出了一种针对线程分配问题的统计方法。首先,我们根据随机样本中观察到的每个线程分配的性能,介绍一种预测最佳线程分配的性能的方法。该方法基于极值理论(EVT),极值理论是统计的一个分支,用于分析与总体均值的极差。我们还提出了修剪样本的方法,该方法通过减少需要测量的候选解决方案的数量来显着减少应用统计方法所需的时间。最后,我们表明,如果没有合适的基于启发式的算法可用,则数千个随机线程分配的样本就足以以高置信度获得性能接近最佳的分配。所提出的方法是体系结构和应用程序无关的,并且可以用于解决各个领域中的线程分配问题。它特别适合工作量很少变化的系统。一个示例是网络系统,其通常提供一组预先已知的恒定服务,而网络应用程序对系统中的每个数据包执行类似的处理算法。在本文中,我们通过工业案例研究对UltraSPARC T2处理器上的一组多线程网络应用程序验证了我们的方法。本文是对我们先前工作的扩展,该工作发表在第17届国际编程语言和操作系统的体系结构支持国际会议论文集(ASPLOS-2012)中。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号