提问:CPU的性能是由主频决定的吗?
回答:CPU主频只是决定其性能的一个方面,而不是唯一的因素。
例如,一个主频为40M的51单片机的性能可能比一些主频为20M的STM32单片机更好。
决定CPU主频的因素有很多,其中主频是一个非常重要的因素,但除了主频之外,还有许多其他因素会对CPU的性能产生影响。
主频/时钟周期
CPU的工作节拍受主时钟频率控制,主时钟频率持续产生固定频率(f)的时钟信号,称为CPU的主频,单位是GHz,MHz。
主频的倒数被称为CPU的时钟周期,T = 1 / f,单位是μs,ns。
2.CPU执行时间
表示CPU执行一般程序所占用的时间。
CPU执行时间 = CPU时钟周期数 x CPU时钟周期
3.CPU的位宽
CPU的位宽暂时没有严格的定义,但是一般从数值上来讲:
CPU的位宽 = 数据总线的位宽 = CPU内部通用寄存器的位宽 = 机器字长
机器字长:
机器字长是指计算机进行一次整数运算所能处理的二进制数据的位数,通常也是CPU数据通道的宽度,通常等于CPU的通用寄存器位宽。机器字长会影响机器的运算速度。倘若CPU字长较短,又要运算位数较多的数据,那么必须经过两次或多次运算才能完成。这样势必会影响整机的运行速度。
总线宽度
一般指CPU中运算器与存储器之间互相连接的总线的二进制位数。
4.CPI
CPI:Characters Per Inch,即执行一条指令所需的平均时钟周期数。
CPI = 执行程序所需的时钟周期数 / 程序包含的指令条数;
5.MIPS
MIPS:Million Instructions Per Second,即平均每秒执行百万条指令数:MIPS = 指令数 / (程序执行时间 x 10⁶)
之前分享过《STM32性能对比测试》的文章。
DMIPS:Dhrystone Million Instructions executed Per Second。用来计算同一秒内系统的处理能力,它的单位以百万来计算,也就是(MIPS)。主要用于测整数计算能力。
其中还有一个类似的CoreMark是用来衡量嵌入式系统中中心处理单元(CPU,或叫做微控制器MCU)性能的标准。
6.FLOPS
FLOPS:Floating-point Operation Per Second,即每秒执行浮点操作的次数,用来衡量机器浮点操作的性能。
Floats = 程序中的浮点操作次数 / 程序执行时间
例:
对于给定的一个程序,I 表示执行程序的指令总数,t表示执行程序所需的CPU时间,T为时钟周期,f为时钟频率,N为时钟周期数。
t = N x T = N / f = CPI x I x T;
CPI = N / I;
MIPS = I /(t x 10⁶)= I / (N x T x 10⁶) = 1 /(CPI x T x 10⁶);
N = CPI x I ;
这些算是决定性能的主要因素,其实,还有很多的因素,欢迎大家留言说出你认为决定CPU性能的因素。
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !