TPC基准程序及tpmc值 ─ 兼谈在使用性能度量时如何避免误区
今天的用户在选用平台时面对的是一个缤纷繁杂的世界。用户希望有一种度量标准,能够量化计算机系统的性能,以此作为选型的依据。作者曾在美国从 事过数年计算机性能评价工作,深深体会到,计算机的性能很难用一两种度量来 评价,而且,任何度量都有其优缺点,尤其是当使用者对性能度量了解不深时,很 容易被引入一些误区,甚至推演出错误的结论。本文以TPC基准程序为例,给出一 些实际建议,以帮助用户避免进入这些误区。
一、什么是TPC和tpmC? tpmC值在国内外被广 泛用于衡量计算机系统的事务处理能力。但究竟什么是tpmC值呢?作者曾向一些 用户、推销人员乃至某些国外大公司的技术人员问过这个问题,但回答的精确度 与tpmC值的流行程度远非相称。tpmC这一度量也常被误写为TPM或TPMC。
1、TPC
TPC(TransactionProcessing PerformanceCouncil,事务处理性能委员会)是由数10家会员公司创建的非盈 利组织,总部设在美国。该组织对全世界开放,但迄今为止,绝大多数会员都是美、 日、西欧的大公司。TPC的成员主要是计算机软硬件厂家,而非计算机用户,它的功 能是制定商务应用基准程序(Benchmark)的标准规范、性能和价格度量,并管理测 试结果的发布。
TPC的出版物是开放 的,可以通过网络获取(http://www.tpc.org)。TPC不给出基准程序的代码,而只 给出基准程序的标准规范(StandardSpecification)。任何厂家或其它测试者都 可以根据规范,最优地构造出自己的系统(测试平台和测试程序)。为保证测试结 果的客观性,被测试者(通常是厂家)必须提交给TPC一套完整的报告(FullDisclosure Report),包括被测系统的详细配置、分类价格和包含五年维护费用在内的总价 格。该报告必须由TPC授权的审核员核实(TPC本身并不做审计)。现在全球只有几 个审核员,全部在美国。
2、tpmC
TPC已经推出了四套 基准程序,被称为TPC-A、TPC-B、TPC-C和TPC-D。其中A和B已经过时,不再使 用了。TPC-C是在线事务处理(OLTP)的基准程序,TPC-D是决策支持(DecisionSupport) 的基准程序。TPC即将推出TPC-E,作为大型企业(Enterprise)信息服务的基准程 序。
TPC-C模拟一个批发 商的货物管理环境。该批发公司有N个仓库,每个仓库供应10个地区,其中每个地 区为3000名顾客服务。在每个仓库中有10个终端,每一个终端用于一个地区。在运 行时,10×N个终端操作员向公司的数据库发出5类请求。由于一个仓库中不可能 存储公司所有的货物,有一些请求必须发往其它仓库,因此,数据库在逻辑上是 分布的。N是一个可变参数,测试者可以随意改变N,以获得最佳测试效果。
TPC-C使用三种性能 和价格度量,其中性能由TPC-C吞吐率衡量,单位是tpmC。tpm是transactionsper minute的简称;C指TPC中的C基准程序。它的定义是每分钟内系统处理的新订单 个数。要注意的是,在处理新订单的同时,系统还要按表1的要求处理其它4类事务 请求。从表1可以看出,新订单请求不可能超出全部事务请求的45%,因此,当一个 系统的性能为1000tpmC时,它每分钟实际处理的请求数是2000多个。价格是指系 统的总价格,单位是美元,而价格性能比则定义为总价格÷性能,单位是$/tpmC。
二、如何衡量计算机系统的 性能和价格
在系统选型时,我们一 定不要忘记我们是为特定用户环境中的特定应用选择系统。切忌为了“与国际接 轨”而盲目套用“国际通用”的东西。在性能评价领域,越是通用的度量常常越是不 准确的。据我所知,美国的一些大用户从不相信任何“国际通用”的度量,而是花相 当精力,比如预算的5%,使用自己的应用来测试系统,决定选型。在使用任何一种 性能和价格度量时,一定要弄明白该度量的定义,以及它是在什么系统配置和运 行环境下得到的,如何解释它的意义等。下面我们由好到差讨论三种方式。
1、在真实环境中运行 实际应用
最理想的方式是搞一 个试点,要求制造商或系统集成商配合将系统(含平台、软件和操作流程)在一个 实际用户点真正试运行一段时间。这样,用户不仅能看到实际性能,也能观察到系 统是否稳定可靠、使用是否方便、服务是否周到、配置是否足够、全部价格是否合 理。如果一个部门需要购买一批同类的系统,这种方式应列为首选,因为它不仅最 精确、稳妥,也常常最有效率,用户还可先租一套系统作为试点。用这种方式得到 的度量值常常具有很明确和实际的含义。
2、使用用户定义的基 准程序
如果由于某种原因第 一种方式不可行,用户可以定义一组含有自己实际应用环境特征的应用基准程序。 我举两个例子:近年来,由于R/3软件是应用层软件,SAP公司的基准程序获得了越 来越多国外企业的认可;中国税务总局最近也开发了自己的基准程序,以帮助税 务系统进行计算机选型。这种方式在中国尤其重要,因为中国的信息系统有其特 殊性。
3、使用通用基准程序
如果第1种和第2种方 式都不行,则使用如TPC-C之类的通用基准程序,这是不得已的一种近似方法。因 此,tpmC值只能用作参考。我们应当注意以下几点:
(1)实际应用是否与基准程序相符
绝大多数基准程序都 是在美国制订的,而中国的企事业单位与美国的运作方式常常不一样(恐怕也不 应该或不可能一样)。在使用TPC-C时,我们应该清楚地知道:我的应用是否符合 批发商模式?事务请求是否与表1近似?对响应时间的要求是否满足表1?如果都不 是,则tpmC值的参考价值就不太大了。
(2)TPC度量的解释
TPC基准程序是用来 测系统而不是测主机的,厂家肯定要充分优化他们的被测系统。此处的“系统”包 括主机、外设(如硬盘或RAID)、主机端操作系统、数据库软件、客户端计算机及其 操作系统、数据库软件和网络连接等。在很多厂家的TPC测试系统中,主机的价格 只是系统总价格的1/4或更小,而硬盘的价格有可能占到总价格的1/3以上,因为TPC -C要求被测系统必须保存180天的事务记录。如果同样的主机被用到用户的环境 中,厂家报的tpmC值就意义不大,因为用户的实际系统与厂家原来用于TPC测试 的系统大不一样。当同样的主机用在不同的系统中时,tpmC值可能有相当大的变 化,现在很多用户还没有意识到这一点。
我举一个例子。假设用 户希望购买一批同类系统,每一系统至少需要1GB的内存和50GB的硬盘。厂家A、B、C 各报了三个价格相当的系统,tpmC值分别为3000、2800、2600。用户是否应该选厂 家A的产品呢?答案是:不一定。厂家用于测试tpmC值的系统与实际提供给用户的 系统配置大不一样。tpmC最低的厂家C提供给用户的系统反而有可能性能最好,不 论是以实际系统的tpmC值还是以用户的实际应用性能来衡量。
(3)TPC测试的成本
TPC-C和TPC-D都是 很复杂的基准程序,做一个严格的测试是很消耗资源的,厂家当然不会说出他们 花费了多少钱和时间。但据国外知情人士透露,一个厂家做第一个TPC-C测试需 要几十万到上百万美元的资金和半年左右的时间投入。因此,很多TPC的度量值都 是估计的。由于计算机系统换代频繁,如果用户一定要用通过审核的度量值,就必 须多等待半年时间,因此而不能用最先进的系统。中国的厂家通过审核的时间则 更长。
综上所述,我们对中国 用户(尤其是大用户)在计算机系统的选型方面有如下建议:
最好建立一个真实的试点,因为实际应用环境是检验计算机系统的最好标准。
中国的行业应该建立符合自己实际应用的基准程序和测试标准。中国税务总局的做法值得提倡。国家有关部门应该建立独立的测试中心,制定跨行业、符合中国企事业运作模式的性能测试标准。
“国际通用”的度量可以作为参考值,而不应作为必要条件。尤其是一定要弄清这些流行度量有什么含义,是在什么样的系统环境中测得的,以及基准程序是否符合企业真实的业务流程和运作模式。
|
相关推荐
TPC-C是在线事务处理(OLTP)的基准程序,性能由TPM-C吞吐率衡量,单位是tpmC(transactions per minute)。 TPMC值计算是根据TPC-C标准模型中的New-Order事务的处理数目来计算的,一个New-Order事务由平均4-5个SQL...
尽管最初有TPC-A和TPC-B,但现在广泛使用的基准是TPC-C和TPC-D。TPC-C专注于衡量OLTP系统的性能,而TPC-D则关注决策支持系统的效能。此外,还有TPC-E用于大型企业的信息服务基准。 TPC-C性能通过每分钟处理的事务数...
TPMC的计算方法是根据TPC-C标准中的New-Order事务处理数目来计算的。一个New-Order事务通常需要4-5个SQL语句来完成,而整个测试执行过程中,New-Order处理占45%。因此,TPMC的计算公式为:TPMC = (用户数*5/24/60)*...
TPC已经发布了一系列基准程序,包括TPC-A、TPC-B、TPC-C和TPC-D等,其中TPC-A和TPC-B已经过时,不再使用。 #### 二、TPC-C基准程序 TPC-C基准程序主要用于在线事务处理(OLTP)场景,它通过模拟一个复杂的零售订单...
在计算TPMC值时,需要考虑到服务器的配置和主机的性能,TPC-C值的计算方法可以通过公式来计算,例如:ASR1 GS160(1G HZ)16CPU 的TPC-C值推算如下:GS320(1G HZ)32CPU 的测试值为230,000,因此,我们推算其16...
如何对服务器性能计算的公式参考(TPMC-TPCC)...doc
使用这些参数,我们可以计算出数据库服务器的处理性能,即TPC-C值: TPC-C = U1*N1*(T1+T2+T3)/3*8*经历系数/冗余系数 4. 数据库服务器配置建议 根据计算结果,我们建议数据库服务器配置一台TPC-C值不小于150万的...
TPC-H基准测试是信息技术行业中一个重要的性能评估标准,尤其在大数据分析和企业级数据库系统领域。这个基准是由事务处理性能委员会(Transaction Processing Performance Council,简称TPC)制定的,目的是衡量系统...
《Spark SQL性能优化:基于TPC-DS基准测试的深度解析》 Apache Spark作为一个强大的分布式计算框架,尤其在大数据处理领域表现出色。其中,Spark SQL是Spark的核心组件,专为处理结构化数据而设计,提供了SQL接口,...
首先,TPMC(Transactions Per Minute per Core)是根据核心数量计算每分钟事务处理能力的指标,它是在TPC-C基准测试中得出的结果。TPCC是由事务处理性能委员会(TPC)制定的标准,用于评估计算机系统在在线事务处理...
TPC推出过11套基准程序,分别是正在使用的TPC-App、TPC-H、TPC-C、TPC-W,过时的TPC-A、TPC-B、TPC-D和TPC-R,以及因不被业界接受而放弃的TPC-S(Server专门测试基准程序)、TPC-E(大型企业信息服务测试基准程序)...
TPC-C使用tpmC(Transactions Per Minute C,每分钟交易数C)作为性能度量单位,其中的“C”指的是TPC-C基准程序。tpmC数值越高,表示系统的处理能力越强。 #### 如何进行TPC-C的衡量? 对于大多数企业来说,直接...
TPC-DS(Transaction Processing Performance Council Decision Support)是大数据领域的一个标准基准测试套件,用于评估数据仓库系统的大数据处理性能。TPC-DS Tools是一款用于执行这些基准测试的工具,它提供了...
* 使用环境要求:请在允许的湿度(小于95%RH)、海拔(低于3000m)范围内使用设备,避免在具有腐蚀性的环境中使用设备,例如高盐雾的海域、海边及沿海区域,含酸性气体环境,化工厂等。 三、操作与保养要求 在使用...
TPC-H工具,作为一个业界广泛使用的基准测试套件,主要用于衡量数据库系统在处理复杂的商务智能(BI)查询时的性能。这个工具包,"tpc-h-tool.zip",包含了TPC-H的最新版本3.0.0的相关文档和软件,为数据库管理员、...
5. **使用场景**:TPC-DS工具常被数据库供应商、硬件制造商和系统集成商用来展示其产品在大数据分析场景下的性能。同时,它也可以帮助数据中心管理员和数据科学家评估不同解决方案的性能和成本效益。 6. **评估流程...
《TPC-ZK-II集成开发环境(64位)》是一款专为微机程序设计而打造的高效开发工具,尤其适合中文用户使用。在这款64位版本的集成开发环境中,用户可以进行高效的编程、调试以及项目管理,极大地提升了开发效率和编程...