Multithreading 不同体系结构上的单线程软件性能

Multithreading 不同体系结构上的单线程软件性能,multithreading,performance,Multithreading,Performance,在一些论文中,作者正在测量他们的sinlge线程软件的加速效果(其中加速效果是输入处理延迟的减少)。他们展示了三种不同体系结构的加速结果。详情如下: 1.5 GHz的奔腾M 2.4 GHz的英特尔酷睿2 2.27 GHz下的Xeon E5520 这是结果图 现在,Xeon是一个多核,它在加速方面表现出了良好的性能。我的问题是,当您的程序是单线程的时候,那么单线程将一次在一个内核上运行。是的,但当一个内核上有负载时,您的操作系统可能会将该线程切换到另一个内核上,但它仍然只是将一个内核用于软件

在一些论文中,作者正在测量他们的sinlge线程软件的加速效果(其中加速效果是输入处理延迟的减少)。他们展示了三种不同体系结构的加速结果。详情如下:

  • 1.5 GHz的奔腾M
  • 2.4 GHz的英特尔酷睿2
  • 2.27 GHz下的Xeon E5520
这是结果图

现在,Xeon是一个多核,它在加速方面表现出了良好的性能。我的问题是,当您的程序是单线程的时候,那么单线程将一次在一个内核上运行。是的,但当一个内核上有负载时,您的操作系统可能会将该线程切换到另一个内核上,但它仍然只是将一个内核用于软件的单个线程。那么,现在开始质疑为什么Xeon与其他两种体系结构相比表现出良好的性能


与其他体系结构相比,是否有其他因素使Xeon的性能更好?这就是使其性能更快的时钟速度吗?

时钟速度不是决定CPU性能的唯一因素。其他主要因素是每时钟指令数(IPC)速率和CPU缓存大小。Xeon E5520比Core 2更新,因此它可能会更高效地执行正在执行的指令,从而提供更高的IPC。此外,英特尔至强芯片的L2和L3缓存通常比台式机芯片(如Core 2)或笔记本电脑芯片(如奔腾M)更大,因此CPU正在处理的代码或数据更有可能位于快速缓存内存中,而不是慢速主内存中。

时钟速度不是决定CPU性能的唯一因素。其他主要因素是每时钟指令数(IPC)速率和CPU缓存大小。Xeon E5520比Core 2更新,因此它可能会更高效地执行正在执行的指令,从而提供更高的IPC。此外,英特尔至强芯片通常比台式机芯片(如Core 2)或笔记本电脑芯片(如奔腾M)具有更大的二级和三级缓存,因此CPU正在处理的代码或数据更有可能位于快速缓存内存中,而不是慢速主内存中。

如果我没有弄错的话,您正在测量两种算法在不同处理器上的性能差异。具有较大速度的处理器可能特别擅长新算法,也可能特别不擅长旧算法(或两者兼而有之)。下面的答案给出了造成这种差异的可能原因。如果我答错了问题,你现在可以停止阅读了

这种差异很可能与磁芯的数量无关。测试的算法是单线程的。在测量程序性能时,PC不得承受来自其他未指定程序的显著负载,否则整个测量无效。因此,该算法不太可能经常被操作系统中断,从而对性能产生重大影响

这种差异也不能直接归因于时钟速度,因为这将对两种算法产生同等的影响。它可能间接与时钟速度有关,例如,由于计算速度与读/写访问的比率不同

这种差异肯定会受到各种特定于处理器的“功能”的影响(因为没有更好的词),包括但不限于:

  • 除法、乘法、加法和其他指令使用多少时钟周期
  • 给定算法的准确分支预测工作原理(请参阅)
  • 获取程序中使用的不同类型的数据所需的时间(请参阅)
如果算法是针对特定的体系结构编译的,编译器还可以执行各种特定于处理器的优化,用当前处理器的另一条特定于指令的指令替换一组指令。或者,在为一个体系结构创建程序时,它可能会对一组指令重新排序,因为隐式保证对该处理器有效

程序也可能依赖于处理器以外的硬件,例如,如果它访问RAM或硬盘。这些算法还可以调用操作系统,例如在控制台上打印内容、写入硬盘或保留/释放内存。到那时,操作系统及其配置将成为差异的一部分


非常有趣的是,您可以在运行一系列不同的防病毒软件时测量算法的性能。

如果我没有弄错的话,您正在测量两种算法在不同处理器上的性能差异。具有较大速度的处理器可能特别擅长新算法,也可能特别不擅长旧算法(或两者兼而有之)。下面的答案给出了造成这种差异的可能原因。如果我答错了问题,你现在可以停止阅读了

这种差异很可能与磁芯的数量无关。测试的算法是单线程的。在测量程序性能时,PC不得承受来自其他未指定程序的显著负载,否则整个测量无效。因此,该算法不太可能经常被操作系统中断,从而对性能产生重大影响

这种差异也不能直接归因于时钟速度,因为这将对两种算法产生同等的影响。它可能间接与时钟速度有关,例如,由于计算速度与读/写访问的比率不同

这种差异肯定会受到各种特定于处理器的“功能”的影响(因为没有更好的词),包括但不限于:

  • 除法、乘法、加法和其他指令使用多少时钟周期
  • gi的准确分支预测工作原理