SPECjbb 牵手 jdk 系列(一):什么是SPECjbb ?

一、前言

SPECjbb 是这几个字母的首字母组成的,Standard Performance Evaluation Corporation(spec公司),JAVA server Business Benchmark(java服务器业务测试工具)。

在SPECjbb 这个基准测试中,被测产品要运行JVM,模拟一家全球大型零售企业的各种终端销售点请求、在线购买、数据挖掘等日常业务,通过不断增加的业务量来测试系统能够处理的最大值,同时会测试随着业务量增加,系统响应时间的变化,以全面评估运行各项Java业务应用的服务器性能水平。

SPECjbb 模拟了三层客户/服务器模型结构:第一层是用户(客户端输入);第二层是商业应用逻辑;第三层是数据库。

二、测试平台配置

硬件配置:

  • 至少需要一台8GB内存的服务器。性能运行建议使用24g及以上              

软件配置:

  • 操作系统:jvm 7或更高版本可用的任何操作系统上运行
  • Java虚拟机(JVM):specjdd的测试工作负载是用Java编写的,需要运行在JVM上。 

三、SPECJBB介绍

1. specjbb 原理图

benchmark的组件由 Controller (Ctr)、Transaction Injector(s) (TxI)和Backend(s) (BE)组成。这三个组件可以在一个JVM里运行,也可以分别运行在不同的JVM中。

2. specjbb特性:

  • 一种基于一家全球超市公司的使用模型,该公司拥有处理销售点请求、在线购买和数据挖掘操作的IT基础设施。              
  • 纯吞吐量度量标准和根据服务级别协议(sla)度量关键吞吐量的度量标准,指定的响应时间从10毫秒到100毫秒不等。    
  • 支持多运行配置,使用户能够分析和克服系统堆栈的多个层的瓶颈,包括硬件、操作系统、jvm和应用程序层。            
  •  使用新的Java 7特性和其他重要的性能元素,包括最新的数据格式(XML)、使用压缩的通信以及具有安全性的消息传递。 
  • 支持虚拟化和云环境。

3. specjbb运行时间

平均运行时间为2小时,benchmark基准测试有以下几个阶段:              
搜索HBIR(Search HBIR:High Bound Injection Rate):一般约15-20分钟。对于更大的系统可能需要更长的时间。              
RT曲线构建(RT curve building):约90分钟              
验证 (Validation):约5分钟              
配置(Profile):约2分钟              
报告(Report):“0级”大约需要2分钟,而“3级”需要30分钟或更长时间,并配置了大型组 

4. Benchmark测试Metirc结果

基准测试有两个Metirc量,一个是max jops为纯吞吐量量,一个是critical jops为限制响应时间下的吞吐量量。
如下:RUN RESULT: hbIR (max attempted) = 87464, hbIR (settled) = 83601, max-jOPS = 76094, critical-jOPS = 54396

<Mon Sep 09 12:22:55 CST 2019> org.spec.jbb.group1.txinjector.compositetxinjector: Exiting
<Mon Sep 09 12:22:55 CST 2019> org.spec.jbb.group1.txinjector.compositetxinjector: Exiting
<Mon Sep 09 12:22:55 CST 2019> org.spec.jbb.group1.backend.compositebackend: Exiting
Tests are skipped.
  8241s:
  8241s: Generating level 0 report from ./specjbb2015-C-20190909-00001.data.gz


SPECjbb2015 Java Business Benchmark
 (c) Standard Performance Evaluation Corporation, 2015

Preparing to launch SPECjbb2015 reporter.

Reading property file: /home/yjiang2/bin/SPECjbb/./config/specjbb2015.props
Report directory is result/specjbb2015-C-20190909-00001/report-00001
  8242s: Building report...

      2109 msec: Pre-reading source
         0 msec: Validation
         1 msec: Printing JbbProperties
         0 msec: Controller time verification
         5 msec: Dump run logs
         5 msec: Build report with HW/SW parameters
        56 msec: Parsing attributes
         5 msec: Parsing agent names
       155 msec: Building throughput - response time curve
RUN RESULT: hbIR (max attempted) = 87464, hbIR (settled) = 83601, max-jOPS = 76094, critical-jOPS = 54396
        84 msec: Primary metrics calculation
       243 msec: Render Allowed Failures
      1765 msec: Render IR/PR Accuracy
      1576 msec: Request Mix accuracy
      1548 msec: Max Delay during RT curve building
      1677 msec: Render IR by probes tasks
      1686 msec: Overall RT curves
         0 msec: Render RT
        10 msec: Render template to file result/specjbb2015-C-20190909-00001/report-00001/data/specjbb2015-C-20190909-00001-runProperties.txt
        54 msec: Render template to file result/specjbb2015-C-20190909-00001/report-00001/specjbb2015-C-20190909-00001.html
Report generation finished. Wallclock = 4391 msecs, real = 10979 msecs, parallelism = 2.50x

对应的网页report,specjbb2015-C-20190909-00001.html

后续:

specjbb 牵手 jdk 系列(二):安装jdk及运行specjbb

参考:

www.spec.org/jbb2015/

SPECjbb2015-DesignDocument

SPECjbb2015-UserGuide

SPECjbb2015-Run_Reporting_Rules

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章