cpu吞吐量怎么计算

如题所述

   一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联。

单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。

系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间

        QPS(TPS):每秒钟request/事务 数量

        并发数: 系统同时处理的request/事务数

        响应时间:  一般取平均响应时间

(很多人经常会把并发数和TPS理解混淆)

理解了上面三个要素的意义之后,就能推算出它们之间的关系:

QPS(TPS)= 并发数/平均响应时间

另外:

1. 吞吐量、响应时间

(1)
吞吐量:单位时间内的数据输出数量。

(2)
响应时间:从事件开始到事件结束的时间,也称执行时间。


2.
CPU时钟周期、主频、CPI、CPU执行时间

(1)
CPU时钟周期:机器主频的倒数,Tc

(2)主频:CPU工作主时钟的频率,机器主频Rc

(3)CPI:执行一条指令所需要的平均时钟周期

             CPI=总时钟周期数/IC

程序执行过程中所使用的指令数,记为IC)

(4)CPU执行时间:

TCPU=In×CPI×Tc

In执行程序中指令的总数

CPI执行每条指令所需的平均时钟周期数

Tc时钟周期时间的长度

注意:每类指令的CPI和该程序的CPI是两个不同的概念

2.CPU性能公式

程序的执行时间称为CPU时间,即:

    CPU时间=时钟周期数/时钟频率

程序执行过程中所使用的指令数,记为IC,则:

    CPI=总时钟周期数/IC

程序执行的CPU时间就可以表示为:

   
CPU时间=CPI×IC/时钟频率=CPI×IC×时钟周期数

这个公式就是通常所称的CPU性能公式。

上面的公式是计算有百分比的指令系统的CPI


3. MIPS、MFLOPS

(1)MIPS:(百万条指令每秒)

MIPS(Million
Instructions Per Second)

MIPS = In/(Te×106)

=
In/(In×CPI×Tc×106)

=
Rc/(CPI×106)

Te:执行该程序的总时间

In:执行该程序的总指令数

Rc:时钟周期Tc的到数

MIPS只适合评价标量机,不适合评价向量机。标量机执行一条指令,得到一个运行结果。而向量机执行一条指令,可以得到多个运算结果。

(2)
MFLOPS:(百万个浮点操作每秒)

MFLOPS(Million Floating
Point Operations Per Second)

MFLOPS=Ifn/(Te×106)

Ifn:程序中浮点数的运算次数

MFLOPS测量单位比较适合于衡量向量机的性能。一般而言,同一程序运行在不同的计算机上时往往会执行不同数量的指令数,但所执行的浮点数个数常常是相同的。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-07-30
吞吐量
网络中的数据是由一个个数据包组成,防火墙对每个数据包的处理要耗费资源。吞吐量是指在没有帧丢失的情况下,设备能够接受的最大速率。其测试方法是:在测试中以一定速率发送一定数量的帧,并计算待测设备传输的帧,如果发送的帧与接收的帧数量相等,那么就将发送速率提高并重新测试;如果接收帧少于发送帧则降低发送速率重新测试,直至得出最终结果。吞吐量测试结果以比特/秒或字节/秒表示。

吞吐量和报文转发率是关系防火墙应用的主要指标,一般采用fdt(Full Duplex Throughput)来衡量,指64字节数据包的全双工吞吐量,该指标既包括吞吐量指标也涵盖了报文转发率指标。
第2个回答  2013-07-13
如果线路速率是9600b/s,而一个字节有8bit,加上一个起始比特和一个停止比特,那么线路的速率就是960B/s(字节/秒)。以这个速率传输一个1024字节的分组需要1066ms。如果用SLIP链接运行一个交互式应用程序,同时还运行另一个应用程序如FTP发送或接收1024字节的数据,那么一般来说就必须等待一半的时间(533 ms)才能把交互式应用程序的分组数据发送出去。假定交互分组数据可以在其他“大块”分组数据发送之前被发送出去。大多数的SLIP实现确实提供这类服务排队方法,把交互数据放在大块的数据前面。交互通信一般有Telnet、Rlogin以及FTP的控制部分(用户的命令,而不是数据)。这种服务排队方法是不完善的。它不能影响已经进入下游(如串行驱动程序)队列的非交互数据。同时,新型的调制解调器具有很大的缓冲区,因此非交互数据可能已经进入该缓冲区了。对于交互应用来说,等待533ms是不能接受的。关于人的有关研究表明,交互响应时间超过100~200 ms就被认为是不好的[Jacobson 1990a]。这是发送一份交互报文出去后,直到接收到响应信息(通常是出现一个回显字符)为止的往返时间。把SLIP的MTU缩短到256就意味着链路传输一帧最长需要266ms ,它的一半是133ms(这是一般需要等待的时间)。这样情况会好一些,但仍然不完美。我们选择它的原因(与64或128相比)是因为大块数据提供良好的线路利用率(如大文件传输)。假设CSLIP的报文首部是5个字节,数据帧总长为261个字节,256个字节的数据使线路的利用率为98.1%,帧头占了1.9%,这样的利用率是很不错的。如果把MTU降到256以下,那么将降低传输大块数据的最大吞吐量。在图2-5列出的MTU值中,点对点链路的MTU是296个字节。假设数据为256字节,TCP和IP首部占40个字节。由于MTU是IP向链路层查询的结果,因此该值必须包括通常的TCP和IP首部。这样就会导致IP如何进行分片的决策。IP对于CSLIP的压缩情况一无所知。我们对平均等待时间的计算(传输最大数据帧所需时间的一半)只适用于SLIP链路(或PPP链路)在交互通信和大块数据传输这两种情况下。当只有交互通信时,如果线路速率是9600 b/s,那么任何方向上的1字节数据(假设有5个字节的压缩帧头)往返一次都大约需要12.5 ms。它比前面提到的100~200 ms要小得多。需要注意的是,由于帧头从40个字节压缩到5个字节,使得1字节数据往返时间从85 ms 减到12.5 ms。不幸的是,当使用新型的纠错和压缩调制解调器时,这样的计算就更难了。这些调制解调器所采用的压缩方法使得在线路上传输的字节数大大减少,但纠错机制又会增加传输的时间。不过,这些计算是我们进行合理决策的入口点。在后面的章节中,我们将用这些串行线路吞吐量的计算来验证数据从串行线路上通过的时间。本章讨论了Internet协议族中的最底层协议,链路层协议。我们比较了以太网和IEEE802.2/802.3的封装格式,以及SLIP和PPP的封装格式。由于SLIP和PPP经常用于低速的链路,二者都提供了压缩不常变化的公共字段的方法。这使交互性能得到提高。大多数的实现都提供环回接口。访问这个接口可以通过特殊的环回地址,一般为127.0.0.1。也可以通过发送IP数据报给主机所拥有的任一IP地址。当环回数据回到上层的协议栈中时,它已经过传输层和IP层完整的处理过程。我们描述了很多链路都具有的一个重要特性, MTU,相关的一个概念是路径MTU。根据典型的串行线路MTU,对SLIP和CSLIP链路的传输时延进行了计算。本章的内容只覆盖了当今TCP/IP所采用的部分数据链路公共技术。TCP/IP成功的原因之一是它几乎能在任何数据链路技术上运行。本回答被提问者采纳
相似回答