1 CPU的参数指标
CPU直接决定了计算机系统的整体性能,而决定CPU性能的参数指标主要有以下几个:
I、主频:CPU内部总线的频率,是CPU内核工作的时钟频率,即CPU自身的工作频率,单位为GHz。
理论上,主频越高,CPU在一个时钟周期内能够完成的指令数也就越多,那么CPU的运行速度也就越快。实际上,主频与CPU的实际运算能力并没有直接关系,目前还没有一个确定的公式能够定量两者的数值关系。因此,主频仅仅只是CPU参数指标的一个方面,其运算速度还与字长、Cache和指令集等参数指标有关。
II、外频:CPU的基准频率,即CPU与主板之间同步运行的工作频率,同时也是内存与主板之间同步运行的工作频率,单位为MHz。
外频决定了主板和内存的运行速度,外频越高,CPU与内存之间交换数据的速度也就越快,计算机系统的整体运行速度也就越快。
扩展知识:CPU的时钟信号来源
CPU内部并没有振荡器来产生时钟信号,也没有时钟信号发生器,因此CPU需要从主板的振荡电路获得时钟信号来执行指令。也就是说,在不考虑其他影响因子的条件下,CPU的主频和外频应该是相等的。
III、倍频:主频和外频之间的比值,即主频 = 外频 × 倍频系数。
倍频其实是在CPU内部增加了一个时钟倍频电路,将外频按照一定的系数提高,从而获得主频。
说明:通常所说的超频就是通过手动设置倍频系数,使CPU的实际工作频率超过主频。
扩展知识:倍频的出现
在486 DX2以前,CPU的主频和外频是相等的,但是随着CPU制造工艺的不断提高,CPU的工作频率已经可以远远高于从主板获得的基准工作频率了,这时外频就成了限制CPU性能的瓶颈,因此在486 DX2之后,就在CPU内部增加了一个时钟倍频电路,出现了倍频系数的概念。
而CPU超频与倍频系数也有着密切的关系,自从2007年AMD在其Athlon64 X2 5000+ Black Edition CPU中首次提供了不锁倍频设计之后,目前很多主流CPU都开始提供不锁倍频设计,这也就意味着着这些不锁倍频CPU更加适合超频方面的应用。
IV、字长(位数):CPU内部数据总线的宽度,即CPU一次能够处理的二进制位数。
字长是反映CPU数据处理能力的重要指标,即能够反映CPU能够处理的数据位数、精度和速度,而目前主流的CPU都是64位的。
扩展知识:CPU的数据总线
CPU的数据总线有两种,分别是内部数据总线和外部数据总线,其中内部数据总线用于在CPU内部进行数据传输;外部数据总线用于CPU与主板和内存之间的数据传输。
V、FSB频率:即前端总线频率,是指CPU与北桥芯片之间传输数据的总线的频率,决定了CPU与内存之间进行数据交换的速度。
前端总线是CPU和外界交换数据的最主要通道,其数据传输能力对计算机整体性能具有很大影响。而前端总线的数据带宽 = FSB频率 × 字长 / 8,因此FSB频率越高,前端总线的数据传输能力也就越强。
扩展知识:FSB频率与外频的关系
在Pentium III之前,CPU的FSB频率与外频是相等的,但自从AMD发布Athlon CPU、Intel发布Pentium 4 CPU之后,FSB频率与外频的关系发生了巨大变化。
AMD在Athlon CPU中开始采用双脉冲沿传送数据技术,利用时钟的上、下沿同时传输数据,将前端总线数据传输频率提高至原来的两倍。
Intel在Pentium 4 CPU中开始采用四通道前端总线,将前端总线数据传输频率提高至原来的四倍。
扩展知识:FSB总线、HT总线、QPI总线和DMI总线
VI、Cache:高速缓冲存储器是一块存在CPU与内存之间的由SRAM组成的存储器,其容量较小但是读取速度很快,通常用来存放CPU将要处理的数据。
由于CPU的运行速度比内存的读写速度要快得多,所以内存的读写速度就成了制约计算机系统运行速度的瓶颈,而在CPU和内存之间增加高速缓冲存储器则能够解决该问题。
(1)Cache的原理
i、根据一定的算法,将CPU可能要处理的数据存放到Cache中;
ii、当CPU处理数据时,首先到Cache中查找所需的数据,如果找到则直接读取[命中];
iii、如果没有在Cache中找到所需数据,CPU则到内存中读取数据,同时把这个数据所在的数据块调入Cache中。
Cache命中率:CPU能够在Cache中直接找到数据的概率。Cache命中率与容量、算法和程序特性等因素有款,是衡量Cache最重要的参数指标。
扩展知识:具有Cache的CPU读取数据的时间
如果Cache的命中率为90%,Cache的访问时间为1ns,内存的访问时间为10ns,那么具有Cache的CPU读取数据的平均时间为:1 X 0.9 + 10 X 0.1 = 1.9(ns);而没有Cache的CPU读取数据的时间为:10 X 1 = 10(ns)。
由此可见,增加了Cache之后,CPU读取数据的时间大大减少,也就意味计算机系统的整体运行数据速度大大加快。
(2)Cache的等级
目前主流的CPU大多都采用三级高速缓冲存储器:
i、L1 Cache,一级缓存,它是最快的一级缓存,容量一般在32-256KB之间,通常分为数据缓存和指令缓存,分别用来存放数据和执行这些数据的指令。
扩展知识:AMD和Intel的一级缓存设计
AMD采用的一级缓存设计属于传统的“实数据读写缓存”设计,即主要用于存储CPU最先读取的数据,而其他可能要读取的数据存放在二级缓存中。
Intel采用的一级缓存设计是“数据代码指令追踪缓存”设计,即不再存储实际的数据,而是存储这些数据在二级缓存中存储的起始地址。
“数据代码指令追踪缓存”设计极大地降低CPU对一级缓存容量的要求,降低处理器的生产难度。但这种设计的弊端在于数据读取效率较“实数据读写缓存设计”低,而且对二级缓存容量的依赖性非常大。
ii、L2 Cache,二级缓存,它又分为内部二级缓存和外部二级缓存,其中内部二级缓存的运行速度与主频相同,其容量通常在2MB以上;而外部二级缓存的运行速度则只有主频的一半。
iii、L3 Cache,三级缓存,它是一种用于为读取二级缓存未命中数据而设计的一种缓存,即用于提高Cache命中率,其容量通常在3MB以上。
注意:只有一级缓存具有指令缓存,即处理器操作的原始指令只能存储在一级缓存中,而二级缓存和三级缓存中只能存放数据。
说明:Cache技术不仅仅在CPU中被使用,在光驱和硬盘等设备中也广泛地使用了Cache技术。
VII、指令集:在设计CPU时规定的一系列与其硬件电路配合的指令系统。
CPU是依靠指令来完成计算和控制各部件进行工作的,因此指令集是提高CPU效率的有效工具之一,其强弱是CPU的重要参数指标。
扩展知识:Intel和AMD的指令集
Intel主要有x86、EM64T、MMX、SSE、SSE2、SSE3、SSSE3(Super SSE3)、SSE4.1、SSE4.2和AVX等指令集。
i、x86:有Intel推出的一种16位和32位的复杂指令集,用于控制芯片运行。
ii、MMX:为CPU加入了为视频信号、音频信号和图像处理而设计的57条指令,极大地提高了计算机系统对多媒体的处理能力。
iii、SSE:包含单指令多数据浮点计算,以及额外的SIMD整数和高速缓存控制指令的70条指令,对计算机系统的3D性能有着显著的提升。SSE指令集经过多年发展,Intel又推出了SSE2(新增144条指令)、SSE3(新增13条指令)、SSSE3(新增16条指令)、SSE4.1(新增47条指令)和SSE4.2(新增7条指令)。
iv、AVX:采用具有革新性的指令格式,将CPU内核浮点运行性能的理论值提升了1倍。
V、EM64T:是基于IA-32架构的64位内存扩展技术,即在兼容32位软件的情况下,运行软件利用更多的内存地址,并且允许软件进行32位线性地址写入。
AMD主要有x86、x86-64和3D-Now!等指令集。
i、3D-Now!:由AMD开发的一套SIMD多媒体指令集,支持单精度浮点数的矢量运算,用于增强x86架构的计算机在三维图像处理上的性能,共有27条指令集。
ii、x86-64:用于实现64位寻址,即在同一时间内处理64位的整数运算,并兼容x84-32架构,能够将32位和8位的数据操作指令转换为64位和16位。在本质上EM64T和x86-64的作用是相同的。
VIII、制造工艺:组成CPU芯片的电子线路和元件的精细程度,单位为nm。
制造工艺的数值越小,代表制造工业越先进,即在相同面积的硅材料上能够制造出更多的元件,CPU的工作频率也随之可以做得更高,同时制造成本也随之增加。
目前主流的Intel CPU的制造工艺大多为14nm和22nm,而AMD CPU的制造工艺大多为28nm和32nm。
IX、核心代号:CPU制造商为了便于对CPU的设计、生产和销售进行管理,而对各种CPU核心给出的相应代号。
核心代号代表了CPU的工作性能,新核心CPU通常会修正上一个版本中存在的一些错误,提升了一定的性能,因此新核心CPU往往比之前的版本具有更好的性能。
说明:不同种类的CPU会有不同的核心代号,而同一种CPU也可能会有不同的核心代号。
扩展知识:Intel主要的核心代号解析
X、工作电压:CPU正常工作所需的电压。
CPU的工作电压分为核心电压和I/O电压两种,其中核心电压是指驱动CPU核心芯片的电压,通常小于或等于I/O电压;而I/O电压是指驱动I/O电路的电压,一般在1.6-5V之间。
一般来说,核心电压是和生产工艺有关,工艺越先进,电压就会越低,发热量也就越小,CPU运行时的性能也就越好,使用寿命也越长。
XI:TDP:热设计功耗,即CPU满负荷运行时所散发出来的热量。
TDP是CPU对散热系统提出的要求,即要求散热系统必须把CPU释放出来的所有热量散掉,也就是说散热系统的散热量必须大于或等于TDP。
XII、封装技术:将集成电路用绝缘材料打包的技术。
封装对芯片来说是必须的,也是至关重要的。封装不仅能够使芯片与外界隔离,防止空气中的杂质腐蚀芯片电路,而且还会直接影响芯片自身性能的发挥,并且也直接关系到主板的设计与制造。
XIII、IDA:动态加速技术,即CPU在遇到串行代码时提升执行运行效率,同时降低功耗的技术。
具有动态加速技术的CPU会自动确认当前的工作功率、电流和温度是否已经达到极限,如果仍有空余资源,CPU会自动关闭未使用的核心,并提升活动核心的频率,从而提高当前任务的处理速度。
说明:Intel的睿频加速技术和AMD的智能超频技术都是动态加速技术。
XIV、超线程技术:在单个处理器中加入两个逻辑处理单元,并利用特殊的硬件指令将它们模拟成两个物理芯片,从而同时执行两个线程。超线程技术能够使单个处理器的性能提升25%左右。
超线程技术在硬件方面需要CPU和主板芯片组的支持,在软件方面需要BIOS程序和操作系统的支持。
注意:超线程技术中模拟出的两个物理系统会共享一组处理器执行单元,因此两者是不能分离的,只能协同地并行工作,即只能执行同一进程中的不同线程,而不能跨进程执行。
XV、多核心技术:将多个处理器集成在同一个芯片中,各个处理器能够独立且并行地执行不同进程。
多核CPU中的多个处理器会共享Cache中的数据和指令,因此可以提高Cache的利用率和命中率,并且简化多处理系统计算的复杂度。
XVI、虚拟化技术:单个CPU可以模拟成多个CPU并行运行,并允许在同一平台[主机]上同时运行多个操作系统[虚拟机]。
虚拟化技术在硬件方面需要CPU和主板芯片组的支持,在软件方面需要BIOS程序和操作系统的支持。
2 进程和线程
进程(Process)是计算机系统进行资源分配和调度的基本单位,同时也是操作系统结构的基础,即计算机中程序关于某数据集合上的一次运行活动。
线程(Thread)是程序中一个单一的顺序控制流程,作为进程中的一个实体,是被系统独立调度和分派的基本单位。
进程和线程的区别在于:
(1)执行一个程序时至少会执行一个进程,而一个进程中至少包含一个线程。因此线程是进程中的一个实体。
(2)进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位。因此每个进程具有独立的资源和空间,而线程则需要共享所属进程的资源和空间。
(3)进程执行开销大,但是能够很好的进行资源管理和保护;线程执行开销小,但不利于资源的管理和保护。
3 超线程、多核心、多任务和虚拟化的区别
(1)虚拟化:将一个处理器模拟成多个处理器,允许在同一平台上运行多个操作系统。
(2)多任务:在一个操作系统中能够同时并行运行多个程序。
(3)多核心:在一个芯片中集成了多个处理器,这些处理器能够同时并行执行不同的进程。
(4)超线程:将单个处理器模拟成两个物理芯片,这两个物理芯片能够协同执行同一进程中的两个线程。
4 CPU测试软件
常用的CPU测试软件主要有三种:
(1)AIDA64:前身是著名的EVEREST,是一款测试软硬件系统信息的工具,它可以详细显示出计算机系统每个方面的信息,不仅提供了协助超频、硬件侦错、压力测试和传感器监测等功能,而且还可以对处理器、系统内存和磁盘驱动器的性能进行全面评估。

AIDA64中文绿色版:AIDA64.rar
(2)CPU-Z:一款家喻户晓的CPU检测软件,也是检测CPU时使用程度最高的一款软件。它支持的CPU种类非常全面,而且启动速度和检测速度都很快,它不仅仅能够对CPU进行检测,而且可以检测主板和内存的相关信息,比如常用的内存双通道检测功能。

CPU-Z安装包:CPU-Z.exe
(3)鲁大师:一款集硬件检测和系统优化为一体的国产软件,不仅能够进行准确地进行硬件检测,实时地对关键部件进行监控和预警,而且还提供了相应硬件的驱动程序的下载、安装和更新功能,同时还能够下载和安装系统补丁,进行系统优化。目前鲁大师已成为奇虎360旗下的产品,更名为360硬件大师。

鲁大师安装包:鲁大师.exe

