yangjianxv
作者yangjianxv2016-11-17 18:05
部门总经理, 成方金融科技有限公司

性能指标之资源指标 如何精确计算每笔交易消耗的CPU

字数 2262阅读 10451评论 0赞 3

计算交易系统每笔业务消耗的CPU在容量规划、测试环境计划和部署、测试结果分析过程中比较重要。本节介绍如何计算每笔业务消耗的CPU。

**如果仅在单一设备类型上进行简单估算,推荐使用简单估算方法。
如果需要计算精确的指标数据或比较相同应用在不同设备的CPU消耗,需要采用基于TPC指标估算。
如果没有TPC的实测数据,采用厂商指标估算。**

简单估算

如果在某一型号的设备上进行过测试,现在需要规划下一次测试任务需要的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笔交易的能力,是另一回事。

基于TPC指标估算

涉及到不同类型设备之间的比较,需要采用基于TPC指标的估算。

TPC(Transaction Processing Performance Council,事务处理性能委员会)是由数10家会员公司创建的非盈利组织,它的功能是制定商务应用基准程序(Benchmark)的标准规范、性能和价格度量,并管理测试结果的发布。

TPC有几套基准程序,其中衡量在线事务处理(OLTP)的基准程序有TPC-C和TPC-E;衡量决策支持(Decision Support)的基准程序有TPC-H、TPC-DS和TPC-DI;衡量虚拟化(Virtualization)的基准程序有TPC-VMS和TPCx-V;衡量大数据(Big Data)的基准程序有TPCx-HS和TPCx-BB;另外还有衡量能耗和价格的TPC-Energy、TPC-Pricing。

对于交易系统(OLTP)来说,TPC-C(以下简写为TPCC)是最常用的基准程序,其中C是指C类基准程序,即交易类,目前最新的版本是V5版本,下面重点介绍如何利用TPCC来计算每笔交易的CPU消耗。

tpmC是TPCC的单位,即transaction per minite for C,每分钟的事务数量,这个事务指的是基准程序里面的事务,C是指C类基准程序。

1. 计算方法

查询该机型的tpmC值,如果只使用该机型上的部分CPU,需等比例折算,并计算某个场景下实际消耗的tpmC值=tpmC*CPU利用率。

下面定义交易复杂度,即每个交易对CPU的等价消耗。
交易复杂度=实际消耗的tpmC值/每分钟交易数=(基准程序中的transaction/分钟)/(交易数/分钟)=基准程序中的transaction/交易数=每个交易对应的基准程序中transaction数量=每个交易对CPU的等价消耗。

2. 获取来源

TPC官网http://www.tpc.org/

3. 举例说明

某64核 3.8GHz的P780的tpmC值=10366254。
某测试场景中,某应用在一台8核服务器上运行,当每秒处理100笔交易的情况下,CPU利用率为70%。
使用的是该P780的8核LPAR,则首先计算这个LPAR的tpmC = 10366254x8/64=1295782。

LPAR按照CPU利用率计算的tpmC值=tpmCxCPU利用率=1295781.8x70%=907047.23
每分钟交易数=每秒处理交易数x60=6000
交易复杂度=每笔交易消耗的tpmC=907047.23/6000=151.17

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

基于厂商指标估算

一些设备型号并没有进行TPC的实测,因此没有对应的TPCC/tpmC等数据。有时,厂商的A设备进行了TPC的实测,而B设备没有进行TPC实测,此时,在A设备上测试得到的CPU消耗的数据,如何转换为B设备的数据?此时,如果厂商有自己的基准程序(跑分程序)和跑分结果,同样可以利用。

例如:rPerf是IBM定义的针对Power服务器的基准程序,相当于一个跑分程序。

1. 获取来源

在《IBM Power Systems Performance Report》中有所有Power机型的rPerf值查询

2. 举例说明

某64核P780(简称A)的rPerf为685.09,这个型号的设备有TPC的实测值=10366254。
而另一个64核P780(简称B)的rPerf为817.1,但没有TPC的实测值。
我们可以通过二者rPerf值的比例,来估算B的tpmC值。

下节预告

下节开始讲内存相关的性能指标。

性能指标之资源指标 CPU配置参数对性能的影响
性能指标之资源指标 CPU利用率的性能分析
性能指标之资源指标 CPU亲和性原理介绍及如何量化读数
性能指标之资源指标 CPU亲和性调整优化

微信公众号:性能测试与调优

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

3

添加新评论0 条评论

Ctrl+Enter 发表

本文隶属于专栏

作者其他文章

相关文章

相关问题

相关资料

X社区推广