我正在查看 Intel Pentium e5700 CPU的统计数据。
它有两个核心和两个线程。线程为处理器做什么?核心数和线程数之间有什么关系吗?线程为整个系统服务的目的是什么?
Bre*_*ugh 23
核心数是 CPU 芯片本身的物理核心数,而线程数是可以在 CPU 本身上同时执行的单个应用程序线程的数量。在没有任何额外或特殊硬件的情况下,这等于核心数。但是,某些处理器的线程数将多于内核数。
某些 Intel CPU具有称为超线程的功能,它允许操作系统查看每个物理内核的逻辑内核数量翻倍。这允许操作系统同时调度和运行双倍数量的线程,因此在我上面链接的 CPU 的情况下,有四个物理内核,但有八个逻辑内核(因此您可以同时运行八个线程)。
在操作系统中运行的每个单独的应用程序要么是单线程的,要么是多线程的(将每个线程视为一个“子应用程序”)。单线程应用程序只需要一个线程在 CPU 上运行,而多线程应用程序有许多子线程同时运行。额外的内核或超线程允许更多的应用程序线程同时运行。
这允许多线程(而非单线程)应用程序运行得更快,因为 CPU 上可以同时运行多个线程。
最后要注意的是,超线程提高了一些专门针对它优化的多线程应用程序的性能(因为物理内核的数量仍然只有逻辑数量的一半)。在某些情况下,禁用超线程的应用程序可能会运行得更快(尽管许多应用程序确实从中受益)。无论超线程如何,物理内核数量的增加总是有利于多线程应用程序。
“核心”代表处理器的一个实际物理子集,它可以自己处理处理,而“线程”是处理器一次可以处理多少个实际进程。英特尔开发了一种他们标记为“超线程”的技术,该技术允许一个物理内核(通常一次只能处理一个线程)现在能够同时处理两个线程。
线程是处理器必须处理的任务,简单解释一下,你可以假设你打开的每个应用程序(如画图、记事本、媒体播放器)都有自己的线程……现在这并不意味着你只能打开一次运行 2 个应用程序,仅仅是因为处理器和操作系统在“切换线程”方面的工作速度非常快,可以处理您打开的每个应用程序的需求。使用更多内核,您将体验到更好的性能,因为现在您可以将所有工作分配给更多内核的处理器。
例如,我的工作计算机中有一个 i7。i7 有 4 个物理核心,但每个核心都可以执行“超线程”,这使得该处理器可以同时处理 8 个线程。所以如果我打开任务管理器,我会看到 8 个处理器性能比例框。
一般的经验法则是更多的物理内核比更多的线程更好。因此,如果您要比较具有 4 核 4 线程的处理器,会比 2 核 4 线程更好。但是您的处理器可以处理的线程越多,它在多任务处理时的性能就越好,并且对于一些非常密集的应用程序(视频编辑、CAD、CAM、压缩、加密等),它本身一次将使用多个内核。
| 归档时间: |
|
| 查看次数: |
152858 次 |
| 最近记录: |