如何估算程序需要的CPU资源

如题所述

一、CPU使用率其实就是运行的程序占用的CPU资源,表示你的机器在某个时间点的运行程序的情况。使用率越高,说明机器在这个时间上运行了很多程序,反之较少。使用率的高低与你的CPU强弱有直接关系。而且CPU和内存占用是跟你的脚本挂钩的。 è„šæœ¬å¤æ‚,占用的就多。

二、步骤

方法一:


【1】首先你需要用压测工具(比如webbench)持续模拟请求, åœ¨åŽ‹æµ‹æœŸé—´æ¯ç§’运行ps aux |grep php-fpm一次,把结果记录在文件中。 

【2】等压测结束后,可以通过分析统计这个文件(结果第三列是cpu占用,第四列是内存占用),然后就可以绘制出php-fpm进程的cpu,内存占用了。

方法二:

如果在某一型号的设备上进行过测试,现在需要规划下一次测试任务需要的CPU资源;或者在同一型号的设备上,对比不同应用类型、同一应用不同版本之间的差异,可以采用简单估算。

1. 计算方法

CPU个数x利用率/吞吐量=CPU个数x利用率/(交易笔数/秒)=CPU个数x利用率x秒/交易笔数=每笔交易消耗的CPU持续了一秒钟。

2. 举例说明

假设某应用在一台8核服务器上运行,当每秒处理100笔交易的情况下,CPU利用率为70%。此时CPU个数x利用率=5.6。
每笔交易消耗一秒钟CPU的个数=5.6/100=0.056。

假设下次测试需要测试吞吐量为每秒200笔交易,大约要求CPU利用率在50%左右。则需要给测试服务器大约的CPU个数为:0.056x200/0.5=22.4。至于这个22.4C的服务器能不能达到每秒200笔交易的能力,是另一回事。

温馨提示:内容为网友见解,仅供参考
无其他回答

如何估算程序需要的CPU资源
方法一:【1】首先你需要用压测工具(比如webbench)持续模拟请求, 在压测期间每秒运行ps aux |grep php-fpm一次,把结果记录在文件中。【2】等压测结束后,可以通过分析统计这个文件(结果第三列是cpu占用,第四列是内存占用),然后就可以绘制出php-fpm进程的cpu,内存占用了。方法二:如果在某一型号...

架构师成长之路:如何做资源评估?
所谓资源估算是指:对软件系统上线运行时,为了完成预定的目标,而需要的服务器资源、存储资源、CPU、内存、网络带宽等资源进行预估。一般要预估正常使用情况、高峰使用情况、未来发展使用的情况等。通常需要估算1-3年的情况,要求高一些的会预估到5年的情况。资源估算本身就是部署架构设计过程中重要的一环...

如何通过当前服务器的cpu和内存得知对应的tpmc是多少
4. 峰值处理能力:2000*2=4000(笔\/小时),即峰值处理能力为每小时4000笔,或 67笔\/分,假设业务人员同时在线为100人,即每人每分钟处理0.7笔)5. 假设每笔交易对应数据库事务数=20,基准TPC指标值对应的比例=8,cpu保留30%的处理能力冗余,计算值与公布值(最优值)的偏差经验值为4 (这几个...

FPGA设计中,资源是否够用是怎么去估算的
如果要自己估算也简单:主要考虑3种资源够不够。普通逻辑单元;块rom;GCLK(快速时钟线)。普通逻辑单元:主要是计数器、零散寄存器、比较器等用。先看芯片资料一个逻辑单元中有几个D触发器记忆,一共有多少个逻辑单元。计数器、零散寄存器、比较器每一位都要用到一个D触发器记忆。两个比较就能知道够...

cpu unit是什么意思
例如,GPU计算无法通过CPU Unit来衡量,因为GPU的计算能力和资源需求与CPU不同。此外,不同的云服务商、不同的计算场景和不同类型的应用程序可能需要不同的计算资源,CPU Unit只是其中之一。因此,在选择计算资源时,需要根据实际业务需求来权衡不同的因素。

架构师必备:如何做容量预估和调优
1、QPS保障目标一开始就要明确定义QPS保障目标,以此来推算所需的服务、存储资源。可根据历史同期QPS,或者平时峰值的2到3倍估算。压测目标示例:qps达到多少时,服务的负载正常,如平均响应时间、95分位响应时间、cpu使用率、内存使用率、消费延迟低于多少 不要让任何一个环节成为瓶颈,需考虑服务实例、...

python看对象占用多少内存(python查看对象的内存地址)
如何估算一个Python对象的内存占用如果想自己写程序来实现的话,可以参考它们的源码。top\/free都是在procps包中(apt-getsourceprocps)。找到cpus_refresh()函数,你可以看到它是怎样从\/proc\/stat解析出CPU的使用率的。meminfo()函数则展示了如何从\/proc\/meminfo解析出内存的使用率(这个文件自己解析也很简单...

开发者工具里的运行cpu测试怎么用
这是Linux\/Android 系统的CPU 负载表示方式,三个数字代表在三个不同间隔下(1, 5, 15分钟)估算的平均负载(load average)数字下面显示的就是正在运行的各种进程,包括系统和应用程序的执行序(process)。一般都是看后面的两个数字,了解系统是否会有长时间处在高负载的状况下,短暂、突发的高负载并...

TOPS(处理器运算能力单位)
CPU处理能力的衡量单位包括MIPS(百万指令\/秒)和DMIPS(Dhrystone百万指令执行速率\/秒)。MIPS衡量整数运算性能,而DMIPS用于评估处理器在Dhrystone基准程序下的整数运算性能。FLOPS衡量浮点运算性能,ARM架构的MIPS值与处理器频率的关系可通过公式MIPS=0.9×MHz进行估算。NXP S32V234处理器是专门用于辅助驾驶...

如何合理地估算线程池大小 java
最佳线程数目 = ((线程等待时间+线程CPU时间)\/线程CPU时间 )* CPU数目 比如平均每个线程CPU运行时间为0.5s,而线程等待时间(非CPU运行时间,比如IO)为1.5s,CPU核心数为8,那么根据上面这个公式估算得到:((0.5+1.5)\/0.5)*8=32。这个公式进一步转化为:view sourceprint?最佳线程数目 = ...

相似回答