Home
        SPECjbb2013 User Guide
         Contents
1.               l                 m txinjector  G GRP1  J JVM2 J  N          SUT    5 5 5  Example Multi JVM run for 2 Groups with 1 TxI   Backend  or 1 Tx    Group   Set specjbb group count 2 in the props file and launch   java  jar SPECjbb2013 jar  m multicontroller    Or use     java  Dspecjbb group count 2  jar SPECjbb2013 jar  m multicontroller       21  January 2013 13 of 35    Copyright    1988 2013 SPEC    SPECjbb2013       Then launch the transaction Injectors and Backends with the following commands   java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM1  java  jar SPECjbb2013 jar  m backend  G GRP1  J JVM2  java  jar SPECjbb2013 jar  m txinjector  G GRP2  J JVM1    java  jar SPECjbb2013 jar  m backend  G GRP2  J JVM2    Example       a     m txinjector  G GRP1  J JVM1     m multicontroller        G  lt groupid  GRP1 gt    m backend  G GRP1  J JVM2  1          id N   m txinjector  G GRP2  J JVM1       h  l     G  lt groupid  GRP2 gt      m backend  G GRP2  J JVM2  w 4       SUT    The above approach can be used for more than 2 groups as well     5 5 6  Example Multi JVM run for 2 Groups with 2 TxI   Backend  or 2 TxI   Group     Set specjbb group count 2 and specjbb txi pergroup count 2 in the props file and launch   java  jar SPECjbb2013 jar  m multicontroller  Or use   java  Dspecjbb group count 2  Dspecjbb txi pergroup count 2  jar SPECjbb2013 jar  m multicontroller  Then launch the transaction Injectors and Backends with the following commands   java  jar SPECjb
2.              Driver   stem s  SUI 2 Group with 1 Tx  Group  2 Group with 2 Tx  Group BE s  on Blade server nodes       21  January 2013 8 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       2  Installation and setup of SPECjbb2013    This section will go over the installation and setup procedures for two types of SPECjbb2013 deployments     e Configurations running ONLY on SUT  System Under Test   o  SPECjbb2013 Composite and SPECjbb2013 MultiJVM   e Configurations which require Driver systems s  in addition to SUT  System Under Test   o  SPECjbb2013 Distributed    For both configurations  HW and SW installations are similar  with differences in the run scripts executed  If the  benchmark user is running either SPECjbb2013 Composite or SPECjbb2013 MultiJVM  feel free to ignore the  installation information about Driver system s  in the description below     2 1  Software installation     The software components to be installed are the SPECjbb2013 kit and JRE  The benchmark kit and JRE need to be  installed in all OS images on SUT as well as on all Driver systems s      2 1 1  OS  Operating System  requirements    Benchmark could run on most OS environments including virtual OS instances  But for compliant runs   SPECjbb2013 categories have different requirements as describe below     e SUT  System Under Test    o Category SPECjbb2013 Composite and SPECjbb2013 MultiJVM must use non virtualized single OS  instance  o Category SPECjbb2013 Distributed can use non virtualized s
3.   2069 2056 2056   tPR   3738   OK     where     e  lt Mon Jan 14 00 20 54 NOVT 2013 gt   Standard time stamp  e HIGH BOUND_IR  Run progress phase  refer to section 6 Run Progress in this document   o Other phases canbe TRANSITION  WARMUP  RT CURVE  VALIDATION and PROFILI          Gl       21  January 2013 26 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       e Settling   Each iteration first need settling period before being evaluated in steady period  e rIR aIR  PR  Records accumulated values from beginning of iteration  Where   o  rIR     real IR    target IR   aIR     actual IR    system could issue    PR  Processed Requests       OK   For current iteration  till this moment in time  accumulated values are meeting the passing criterion   o Other message could be  IR is over limit    IR is under limit     PR is over limit    PR is under limit    submit error     12 4  Controller out details    While controller log keeps track of each 1 second of progress  fine grain status   controller out logs an overall  summary of each iteration during HBIR phase and later a summary of each RT curve step level     12 5  Search HBIR Phase     When appropriate  benchmark takes snapshots of current benchmark state  which helps ensure faster initialization  of datasets for next search state  In the example below  the first field is the time passed from start of the run and     rampup IR    means gradually ramping to    trying IR    value     83s  Performing snapshot   quiescence     sto
4.   Details about validation are listed in this section     12 1 15  Other checks    List other checks for compliance as well as High Bound maximum and High Bound settled values during the HBIR   High Bound Injection Rate  search phase     12 2 Submission raw file format    Once a run is complete  reporter by default produces level O HTML report and   raw file for submission  This  output   raw file has two sections     12 2 1  User editable HW SW Configuration Details    Data from template  C M D  raw is placed in this section using same exact fields and to correct  user can edit any  HW SW details in this section     12 2 2  Non Editable Data and SPEC office ONLY Use Section    This section has all HTML    level 0    report data in binary format so that    level 0    HTML file can be produced using  just submission raw file  User must not change anything in this section     Searchable benchmark metrics as well as individual critical  OPS 10  50  100  200 and 500 ms response time SLAs   SPEC office section where any changes can only be made by SPEC office     12 3  Controller log file format   The Controller records run progress information  In the beginning it performs a handshake with other TxI s  and  Backend s   Later it records any messages  including state transition messages  along with every 1 second status  updates of overall SUT performance using following format      lt Mon Jan 14 00 20 54 NOVT 2013 gt  org spec jbb controller  HIGH_BOUND_IR  settling   rIR aIR PR  
5.   Disk I O    26  27  27  27  28  28  28  29  29  29  29  29  29  29  30    30  30  30  30    30  31  31  31  31  31  31  31  31  31  32    32  32  32  32  33  33  33  33       21  January 2013 4 of 35 Copyright    1988 2013 SPEC    SPECjbb2013             18 7  Example Oracle JDK tuning flags for a run on a 16 core system  33  18 7 1  Single Backend distributed 33  18 7 2  Two Backend  2 Groups  distributed with each Backend run on a 8 cores 33   19  Advance level report 34  20  Advanced options and Research 34  21  Submitting results 34  22  Disclaimer  34  23  Trademark 34  24  Copyright Notice 34  25  Index 35       21  January 2013    5 of 35    Copyright    1983 2013 SPEC    SPECjbb2013       1  Introduction  SPECjbb2013 replaces SPECjbb2005 as the next generation Java server business benchmark  This guide explains  how to setup and run SPECjbb2013     To check for possible updates to the Run and Reporting Rules  please see  http   www spec org jbb2013 docs UserGuide pdf        1 1  The SPECjbb2013 suite    The SPECjbb2013 benchmark does not require any third party software  with the exception of a JRE  Java Runtime  Environment  version JDK 7 Update 2 or higher and a properly configured operating environment     1 2  Benchmark components     The benchmark consists of following three components     1 2 1  Controller  Ctr      Controller directs the execution of the workload  There is always one controller     1 2 2  Transaction Injector s   TxI      The Txl issues reque
6.  HBIR  High Bound Injection Rate  search  RT phase  warm up  RT phase  and finally the validation phase at the end  The X axis is showing iteration number where  iteration means a time period for which IR alR PR being evaluated  IR is targeting Injection rate  actual IR is the IR  we could issue for a given iteration and PR is total processed rate for that iteration  To pass the iteration  IR alR PR       21  January 2013 25 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       must be within certain   of each other  Y axis shows how much Actual IR and Actual PR differ when compared to  IR as base  If those are within low and high bound thresholds the iteration will pass  A user will see many failures  during HBIR search  During RT phase and untill max jOPS is found  there could be some failures as certain number  of retries are allowed     12 1 11  Topology    This section covers the topology for SUT and driver system  Distributed category only   First section shows a  summary of the deployment of JVM and OS images across H W systems  Later sub sections detail the JVM  instances across OS images deployed for each H W configuration in the SUT and driver system  Distributed  category only      12 1 12  SUT Configuration    This section covers as how JVM instances are deployed inside OS images and those OS images are deployed across  HW systems     12 1 13  Run Properties    This section covers the run properties that are being set by the user     12 1 14  Validation details  
7.  a run must pass several runtime validity checks  These checks are described in  the SPECjbb2013 Run and Reporting Rules     9  Benchmark metrics  The benchmark has two metrics  Comparison can be done on any one metric  but both metrics are required to be  reported in proximity of each other     9 1  SPECjbb2013  lt run category gt  max jOPS  A throughput oriented metric called SPECjbb2013  lt run category gt  max jOPS is calculated by the following     e Last success IR of RT step level before the First Failure of an RT step level    During RT curve building phase  RT step levels are incremented by 1  of HBIR and each RT step level is evaluated  for PASS   FAIL criterion  First Failure of an RT step level is determined as follows  if IR for that RT step level fails  either settle or steady state criterion  see Design Document on benchmark website for details   the IR level is       21  January 2013 20 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       retried for longer period of time  If the second attempt also fails then this IR is determined as a failure  A total of 5  retries are allowed during RT curve building phase while at any RT step level only one retry is allowed     9 2  SPECjbb2013  lt run category gt  critical jOPS    A throughput under response time constraint metric called SPECjbb2013  lt run category gt  critical jOPS calculated   e Geo mean of  critical  OPS  10ms  50ms  100ms  200ms and 500ms response time SLAs     During RT curve building phase  for e
8.  indexing when describing JVM instance  OS instance and HW host     15 4  Configuration descriptions for unique jvm instances    A JVM Instance is unique if any of the following change  JRE binary  components being launched  JVM parameters  and tuning  All unique JVM instances are assigned unique labels like    jvm_Ctr_1        jvm_Txl_1     jvm_BE_1    etc        Note  Only unique instances need to be defined     15 5  Configuration descriptions for unique OS instances    JVM instances are deployed inside OS images  An OS instance is unique if any of the following is different  unique  JVM instances  tuning etc  Each unique OS instance is assigned a label  As example    jbb2013 config oslmages os_Image_2 jvmlinstances   jvm_Ctr_1 1   jvm_TxInjector_1 4   OS instance label os_Image_2 has  1 instance of jvm_Ctr_1 and 4 instances of jvm_TxInjector_1    15 6  Config descriptions for OS images deployed on a SUT HW or Driver HW    This section describes how unique OS instances are deployed across HW system s   An example     jbb2013 config SUT system config_1 oslmages   os_Image_1 1   jbb2013 config SUT system config_1 hw_product   hw_1  jbb2013 config SUT system config_1 nSystems   1    Config_1 has hardware of 1 system of product hw_1 where only 1 instance of unique OS image    os_image_1    has  been deployed     15 7 Modifying HW and SW details after the run   If user needs to change some HW SW configuration details  user can edit those fields in the template or custom    raw 
9.  invocation of reporter for details     20  Advanced options and Research  There are many properties that the user cannot change for compliant runs  however they may be useful for testing  and research purposes  Some examples are listed below     e Manual setting of HBIR  Instead of    Search HBIR    phase finding HBIR  for many testing and analysis  situations  setting fixed value of HBIR manually will be very useful    e Increasing steady time of each RT step level  Default steady state time for each RT step level is  60 sec  A  user may want to run each RT step much longer and can set it using a property    e Preset IR  Some tests may require stressing the system with a fixed load for very long time  Using available  benchmark properties a fixed IR running for a given time could be set    e Running with much larger or smaller data footprint for various entities like Supermarket size  number of  users  receipts stored etc     There are more than 300 hundred properties that could be set to configure and run the benchmark differently  than compliant configuration  For such options and details  refer to SPECjbb2013 Advanced Options and Research  document at the benchmark website  Known issues     For known issues  refer to SPECjbb2013 Known issues  html  document  For latest updates  refer to SPECjbb2013  Known Issues HTML at the benchmark site     21 Submitting results    Upon completion of a compliant run  the results may be submitted to SPEC  Please see the SPECjbb2013 Run 
10.  non virtualized  single OS image is allowed  Only one group deployment is allowed for a compliant run  One Group could be  configured using one or more TxI s  if needed to fully load the Backend     Single JVM    SUT                1 4 2  SPECjbb2013 MultiJVM  Multiple JVMs  Single Host     The Controller  transaction Injector s  and Backend s  run in separate JVM processes  but all of them must run on  the same system under test  SUT   Only a non virtualized single OS image is allowed     2 Group with 1 Txl Group    Example     Example  1 Group with 1 TxI Group          SUT       Example     Example  1 Group with 2 TxI Group             1 4 3  SPECjbb2013 Distributed  Distributed JVMs  Single or Multi Hosts     The Controller  transaction Injector s  and Backend s  run in separate JVM processes  In addition to SUT  this  category requires a driver system s   Controller and transaction Injector s  must run on a driver machine s  using a  non virtualized OS  The SUT only runs Backend s   which can be virtualized environments in this category  The SUT  can consist of one or more Backends running on one or more Nodes                                         Example 1 Example 2 Example  i  Dr  GRP1      k AA  Diiversvste SUT ___   __        w SUT  river system  Driver system s  SUT Driver system s  S    1 Group with 1 Txl Group 1 Group with 2 Txl Group 2 Group with 1 Txl Group    Example 4 Example 5       RP1    Node 1  GRP1   Node 2           P2  GRP2 Driver system s  SUT       
11.  report_level gt   Where report 0  lt   level  lt   3  0   minimum report  3   most detailed report      11 3  Regenerate submission raw file and HTML report    The file SPECjbb2013  lt run_mode_mark gt   lt timestamp gt  raw inside the result directory is the raw submission file  containing the actual test measurement and result  Once this file is generated and user needs to edit HW SW  details  user can re generate this submission file with updated HW SW configuration using following two methods        21  January 2013 22 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       11 3 1  Using edited original template file and binary log    In this case user needs both binary log and edited HW SW details template file and can re generate submission file  and HTML report using following command     java     Xms2g    Xmx2g  jar SPECjobb2013 jar  m reporter  s  lt binary_log file gt   raw  lt raw_template_file gt     11 3 2  Edit submission raw file and re generate HTML    level 0    report without binary log    User can directly edit submission raw file SPECjbb2013  lt run_mode_mark gt   lt timestamp gt  raw  modify the HW SW  details and re generate HTML report with updated HW SW configuration using the following command     java     Xms2g    Xmx2g  jar SPECjob2013 jar  m reporter  raw  lt raw_submission_file gt     12  Results file details    While all of the results files contain valuable data about the benchmark run  many users will likely be more  interested in the HTML file
12.  shown in section 12 6 above   Also in the summary   the  ser may    MOtice ec    e nsaedecedcerdedets AAA E AAEE EEEE 229922229  inal  where each         represents a second of duration where agents did not respond to Controller  The user can  note the absolute time passed from the start of the benchmark run    e In Controller log file  find the matching IR in RT_CURVE phase to the corresponding jOPS from RT curve graph   Around this IR level  user can view the system behavior at a 1 second granularity  Based on system time  stamps  refer to section 12 3 above   a jump of more than one second indicates the system was not  responding and the Controller did not receive the performance status for that time frame  The user should  note the system time stamp from Controller log     Based on time marking from Controller log and or Controller out  user can investigate the GC verbose log or other  system and JVM monitoring parameters to identify possible reasons for poor response time  Resolving such issues  should result in improved response time characteristics     14 Exporting HTML report data to CSV or table format   Many graphs and tables have important data for analysis  As a result  data for all graphs in    level 0    report can be  exported to a CSV format by clicking on the graphs  For charts from other levels user should use reporter option      data4image     When using this option  all charts even in higher level HTML report have links to CSV data     15 Filling HW SW c
13.  the heartbeat threshold     17 Invalid run messages   There are several validation checks in this benchmark  The validation criteria are documented in the HTML report   During the benchmark testing  the top causes of invalid runs were messages stating    submit error  an expected  error occurred     There can be many causes that result in    submit error    invalid messages  Some of the possible  causes are listed below     e Agents not responding or taking a long time to respond  In this case  delay longer than heartbeat failure  threshold results in shutdown of an agent down which could appear as submit error since there will be no  response for requests from this agent    e Some very long GC pauses result in agents not responding for long durations  This results in Grizzly NIO timing  out and ano response causes submit error     Review of Controller log and Controller out could identify more exact details about the real cause  Often tuning GC  pauses  large enough heap  response time sensitive GC policies  and sufficient number of Fork Join workers should  help in resolving the issue     18 Performance Tuning   All of the techniques and concepts that are involved in this area reach beyond the scope of this document   Therefore  only a few elementary concepts that are related to the SPECjbb2013 benchmark will be briefly  discussed in this section  This document is not to be considered  and does not claim to be  a complete reference  for SPECjbb2013 performance tuning     P
14.  three components  the controller  at least one Backend  and at least 1 Txl  The  Backend and Txl combined are known as a Group  It is described later as how to define a Group when launching  these three components  After a successful run  the result is also stored in the result directory     Running SPECjbb2013 Distributed is the most complex but may more closely map to many deployments where  user requests comes from an outside source  In the simplest form  the user needs a SUT system and a Driver  system  It is described later as how to modify the scripts to launch Controller and Txl on the Driver system and  another script to launch Backend on the SUT  The final result is generated and user can find it on the Driver system  in result directory of Controller component     5  Running the benchmark  The benchmark user needs to populate the template file with HW SW details  the property file for run  configuration  and launch script to specify intended run category  Benchmark kit has templates for each of these     5 1  HW and SW configuration  config template  C M D  raw file    In the config directory  there are three template  C M D  raw files  template C raw for SPECjbb2013 Composite   template M raw for SPECjbb2013 MultiJVM and template D raw for SPECjbb2013 Distributed   User needs to  populate the appropriate configuration file based on SPECjbb2013 category user is planning to run     This file is not used during the benchmark run  At the end of run the reporter takes 
15. 13 uses very little network I O  it is a good idea to make sure that the network fabric being  used for the test bed has a very high availability for use by SPECjbb2013  The best practice is to setup the test bed  on its own isolated broadcast domain  This will minimize the possibility for network anomalies that may interfere  with SPECjbb2013   s network specific components  Also  there is inter process communication among multiple  Groups  When using greater than 16 groups inside single OS image  the number of socket connections settings as  well as localhost network traffic optimizations may provide significant boost in performance     18 6  Disk I O  SPECjbb2013 does not write to disk as part of the measured workload  Classes are read from disk but that should  be a negligible part of the workload  If the disk I O is found to be higher than it should be  then there may be  another process accessing the disk during the benchmark run   18 7 Example Oracle JDK tuning flags for a run on a 16 core system   18 7 1  Single Backend distributed   java  Dspecjbb forkjoin workers 16    Xms2g    Xmx2g  jar SPECjbb2013 jar    m distcontroller    java    Xms2g    Xmx2g  jar SPECjbb2013 jar  m txinjector  G G1  J JVM1    java  Xms20g  Xmx20g    Xmn14g  XX  UseBiasedLocking  XX  UseParallelOldGC  jar SPECjbb2013 jar  m  backend  G G1  J JVM2    Note  It is suggested that if CPU utilization is  lt 90     Dspecjbb forkjoin workers  could be set 2X that of  available processor threads for b
16. 216 5508 5272 3305 3383 2439 2518 708 551   79    6294   6373 5980 5901 4406 4485 3305 3383 EE EnYJA  7 472 79  6373 6452 6137 6058 4957 5036 3934 3855 REELS Mey  472 79  6373 6452 6294 6216 5508 5272 5508 5272 EEJ EIJA 472 79       6530 6609 6373 6452 5822 5272 5508 5272 BSu e yyr 5508   5272    6609   6688 6609 6688 6373 5272 6373 5272 5508 5272 5508 5272    12 1 6  Number of probes    This validation criterion ensures a proper number of probes for good confidence in measured response time  This  graph only shows RT phase step levels  The jOPS for RT step levels are on x axis and number of probes as   of total  jOPS is on y axis  logarithmic scale   Two horizontal lines are showing limits  To have good confidence in response  time  we need to ensure that a good   of total jOPS is being issued as probes  For more details  please refer to  validation section 3 4 4 of Run and Reporting Rules document     12 1 7  Request mix accuracy    This validation criterion ensures total issued requests maintained the designed   mix of request  Total requests  are issued to maintain a request mix  This graph only shows RT phase step levels  The jOPS for RT step levels are on  x axis and y axis shows the  Actual   in the mix     Expected   in the mix   For more details  please refer to  validation section 3 4 4 of Run and Reporting Rules document     12 1 8  Rate of non critical failures    This validation criterion ensures that not too many requests and transactions are dropped during the 
17. 7 300 2500 4000 4400 6432 197000    In the execution of the RT step level  each second that the Controller receives a performance status a         is printed  to standard out  A         is printed for each second the Controller did not receive a performance status  Most often a  long GC pauses is the cause for Controller to not receive a response  A mark of         separates the settle period from  steady period  In the example below  the settle period is 4 seconds long and steady period is approximately 65  seconds long where towards the end  the system is not responsive for 10 seconds as marked by                      17978  VERY ER    ISI sasse ll seareese Sips eee ee Saeiew bg ene Sale  Sag Ones Saal orale eens pees eel oe ore eae EE one serene geek    Below is an example of a system responding smoothly     1866s   19   IR 1058          Sas oa ee a a ee  rIR aIR PR      Towards the end of Controller out  details about validation and profile phases are summarized        21  January 2013 27 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       13  Correlating RT curve data point to Controller out and Controller log   A system responding smoothly throughout the run should produce an RT curve where response time values for all  RT step levels are following the curve  But  if RT curve has occasional spikes in response time for some RT step  levels  often  it is related to    Stop the world    type GC  Garbage Collection  policies that result in very long GC  pauses  Such spik
18. R  as system is being tested for gradually increasing RT step levels in increments of 1  of HBIR  Y axis is  showing response time  min  various percentiles  max  where 99th percentile determines the critical jOPS metric  as shown by a yellow vertical line  The last successful RT step level before the    First Failure    of an RT step level is  marked as red vertical line reflecting the max jOPS metric of the benchmark  Benchmark continues to test few RT  step levels beyond the    First Failure    RT step level  Often  there should be very few RT step levels passing beyond     First Failure    RT step level else it indicates that with more tuning system should be able to pass higher max jOPS   A user needs to view either controller out or level 1 report output to view details about levels beyond    First  Failure    RT step level  Red line marks the max jOPS and yellow line marks the critical jOPS        21  January 2013 23 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       Overall Throughput RT curve    10000000       a    1000000  3  a nt A AAAS EE z v C A A gy Oe Yer eels  E ARAL Ad AREAL LL ADL a ab As bandh Abaedee yy    t  r       P p eg Th Ppt pe E e P ppt i ws  A ate gee a TN oaeeetF  PI   Doy gate aetttt  a     100000 Oat gaa   aie gan     5  2 7 tay 2  4544     uw tee  fd x      a ayt  gt  Aaaaee    sete PINT ots        As La  47  nase 0000  10000 j ttiitiissat gavscverevceccooqqoreo       oo  a iii  ooooo    ooo  eeoo      1000                       Jaze gop  y
19. RP2 gt      m txinjector  G GRP2  J JvM1      m backend  G GRP2  J JVM2       J  Y  Driver System s  SUT       5 6 6  Backend s  deployed across multiple Hosts using virtualized OS images  For SPECjbb2013 Distributed category  Backend s  can be deployed across multiple hosts using virtualized OS s      SPECjbb2013 Distributed  Backend s  on 2 hosts using Virtual Guest OS s   Host 1              Virtual Guest OS      m txinjector  G GRP1  SIVM1    G   groupid  GRP1 gt            m distcontroller  m backend  G GRP1  J JVM2     G  lt groupid  GRP2 gt      i  m backend  G GRP2  J JVM2    Virtual Guest OS   Host 2     m txinjector  G GRP2  J JVM1  l J     Driver System s  SUT       5 6 7  Multiple Driver systems    For SPECjbb2013 Distributed category  if needed  multiple driver systems can be configured  For compliant runs   all driver systems must be identically configured using non virtualized OS for deployment of controller and Txl s   components across driver systems     SPECjbb2013 Distributed  Multiple Driver system s     Driver System 2              m bfinjector  G GRP1  J JVM1  G  lt groupid  GRP1 gt      lt         m backend  G GRP1  J JVM2       Driver System 1          m distcontroller       Driver System 3   G  lt groupid  GRP2 gt      m backend  G GRP2  J JVM2             Driver System s  SUT       21  January 2013 18 of 35 Copyright    1983 2013 SPEC    SPECjbb2013       6  Run progress   Once all the benchmark components are launched  all TxI s  and Backend s  comp
20. Running SPECjbb2013 Composite  Single JVM  Single Host 12  5 5  Running SPECjbb2013 MultiJVM  Multiple JVMs  Single Host 12   5 5 1  Setting multiple Groups 12   5 5 2  Setting more than one    TxI s    Backend     or TxI s    Group   12   5 5 3  Example Multi JVM run for 1 Group with 1 TxI   Backend  or 1 Tx    Group  13   5 5 4  Example Multi JVM run for 1 Group with 2 TxI   Backend  or 2 Tx    Group  13   5 5 5  Example Multi JVM run for 2 Groups with 1 Txl   Backend  or 1 Tx    Group  13   5 5 6  Example Multi JVM run for 2 Groups with 2 Txl   Backend  or 2 Tx    Group  14  5 6  Running SPECjbb2013 Distributed  Distributed JVMs  Single or Multi Hosts  15   5 6 1  Example distributed run for 1 Group with 1 TxI   Backend  or 1 TxI Group  15   5 6 2  Example distributed run for 2 Groups using 1 Tx    Backend 16   5 6 3  Example distributed run for 2 Groups using 2 Tx    Backend 16   5 6 4  Backend s  deployed across multiple Hosts  Blade servers  17          21  January 2013 2 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       5 6 5  Backend s  deployed across virtualized OS images       5 6 6  Backend s  deployed across multiple Hosts using virtualized OS images       5 6 7  Multiple Driver systems       6  Run progress  6 1  Search HBIR  6 2  RT curve building  6 3  Validation  6 4  Profiling  6 5  Reporter  7  Approximate run length  8  Operational validity  9  Benchmark metrics  9 1  SPECjbb2013  lt run category gt  max jOPS  9 2  SPECjbb2013  lt run category gt  cri
21. SPEC    SPECjbb2013       1 3 2  Configuration  Components across multiple JVM instances using Single Group  Single group consists of one Backend and one or more Transaction Injectors  Tx   mapped to this Backend  As a  result  all requests and transactions are confined to a single Backend     Example  1 Group with 1 TxI Group    Ta aE     z    amp      Group 1  J    Example  1 Group with 2 Txl Group       1 3 3  Configuration  Components across multiple JVM instances using Multiple Groups     A multiple group configuration consists of one or more group where each group has one Backend and one or more  Transaction Injectors  TxI   Since there are multiple Backends  some percentage of requests and transactions  require interaction with other Backends initiating Inter Java process communication amongst Backends     Example     Example  2 Group with 2 Txl Group    ye mlm a a TTA    Cr  gt              21  January 2013 7 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       1 4  Run categories     Based on most common trends in Java deployments  SPECjbb2013 components Controller  Txl s  and Backend s    configurations have been mapped into three different run categories  SPECjbb2013 Composite  SPECjbb2013   Multi JVM  SPECjbb2013 Distributed  Since these categories are unique  comparison is disallowed across run   categories     1 4 1  SPECjbb2013 Composite  Single JVM  Single Host     All the benchmark components  Controller  Tx  and Backend  run in a single JVM process  Only a
22. Standard Performance Evaluation Corporation  SPEC     SPECjbb2013  User Guide    H   Spec 7001 Heritage Village Plaza  Suite 225    Gainesville  VA 20155   USA       SPEC OSG JAVA Committee    SPECjbb2013       1     Table of Contents                                                                Introduction 6  1 1  The SPECjbb2013 suite 6  1 2  Benchmark components  6   1 2 1  Controller  Ctr   6   1 2 2  Transaction Injector s   Txl   6   1 2 3  Backend s   BE   6  1 3  Benchmark components configuration and deployment  6   1 3 1  Configuration  All components inside a single JVM instance 6   1 3 2  Configuration  Components across multiple JVM instances using Single Group 7   1 3 3  Configuration  Components across multiple JVM instances using Multiple Groups  7  1 4  Run categories  8   1 4 1  SPECjbb2013 Composite  Single JVM  Single Host  8   1 4 2  SPECjbb2013 MultiJVM  Multiple JVMs  Single Host  8   1 4 3  SPECjbb2013 Distributed  Distributed JVMs  Single or Multi Hosts  8   Installation and setup of SPECjbb2013 9  2 1  Software installation  9   2 1 1  OS  Operating System  requirements 9   2 1 2  Java Runtime Environment  JRE  set up 9   2 1 3  Benchmark kit 9  2 2  Network setup 10  2 3  Minimum hardware requirements 10   Quick tips 10   SPECjbb2013 trial run 11   Running the benchmark 11  5 1  HW and SW configuration  config template  C M D  raw file 11  5 2  Edit benchmark configuration  config SPECjbb2013 prop file 11  5 3  Edit benchmark run scripts 12  5 4  
23. ach RT step level  detailed response times are measured by Transaction  Injector for various types of requests from issue to receive  For critical jOPS  p99  99   percentile  of response  times of three types of Purchase requests  refer to SPECjbb2013 Design Document posted on the benchmark  website  from RT step level 1  to max jOPS are considered  To represent response time of diverse Java  environments  five response time SLAs  Service Level Agreement  of 10ms  50ms  100ms  200ms and 500ms are  chosen  For each SLA threshold  the individual critical jOPS is determined by the formula      first   nOver   last   nUnder     nOver   nUnder    Where       first        the first IR of RT step level with p99 response time higher than SLA      last        the last IR of RT step level with p99 response time less than SLA   nOver     the number of RT step levels between    first    to    last    where p99 response time  gt  SLA  nUnder     the number of RT step levels between    first    to    last    where p99 response time  lt  or   SLA     Results file contain information about individual critical jOPS as well as other response time details     10  Results reports   One of the major functions of the Controller is to collect the benchmark data in real time  and output this data into  logs that can be retrieved and viewed by the user  When Controller is first initiated  one of the first things that it  does is create text log file for recording run progress and binary log file to r
24. and  Reporting Rules for details     22 Disclaimer  Product and service names mentioned herein may be the trademarks of their respective owners     23 Trademark    SPEC and the names SPECjbb2013 are registered trademarks of the Standard Performance Evaluation Corporation   Additional product and service names mentioned herein may be the trademarks of their respective owners     24 Copyright Notice  Copyright    1988 2012 Standard Performance Evaluation Corporation  SPEC   All rights reserved        21  January 2013 34 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       25 Index   Backend  6 SPECjbb2005  6  Controller  6 SPECjbb2013  1  6  34  SPEC  1  34 Transaction Injector  6       21  January 2013 35 of 35 Copyright    1988 2013 SPEC    
25. b2013 jar  m txinjector  G GRP1  J JVM1  java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM2  java  jar SPECjbb2013 jar  m backend  G GRP1  J JVM3  java  jar SPECjbb2013 jar  m txinjector  G GRP2  J JVM1  java  jar SPECjbb2013 jar  m txinjector  G GRP2  J JVM2  java  jar SPECjbb2013 jar  m backend  G GRP2  J JVM3    Example configuration of 2 Groups using 2 TxI   Group can use groupid GRP1 can have jvmid  JVM1 for TxI 1  JVM2  for Tx  2 and JVM3 for Backend  and groupid GRP2 can have same jvmid  JVM1  JVM2 and JVM3   But  within a  group  all jvmid s  must be unique        21  January 2013 14 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       Example 2 Groups with 2 TxI   Group       N    Z  m txinjector  G GRP1  J JVM1          G  lt groupid  GRP1 gt    m multicontroller        I                 m backend  G GRP1  J JVM3      m txinjector  G GRP1  J JVM2         7m txinjector  G GRP2  J JVM1           G  lt groupid  GRP2 gt         m backend  G GRP2  J JVM3                          m txinjector  G GRP2  J JVM2 By    SUT       The above approach can be used for more than 2 groups as well     5 6  Running SPECjbb2013 Distributed  Distributed JVMs  Single or Multi Hosts     This category requires a driver system s  to run Controller and TxI s   Only Backend s  run on SUT     User should read all configurations of SPECjbb2013 Multi JVM category to understand this category better  The  main difference between SPECjbb2013 Distributed vs  SPECjbb2013 Multi JVM is that Contr
26. bb2013 jar  m backend  G GRP1  J JVM3    java  jar SPECjbb2013 jar  m backend  G GRP2  J JVM3    SPECjbb2013 Distributed  2 Groups with 2 Txl Group        m txinjector  G GRP1  J JVM1   G  lt groupid  GRP1 gt         ie       m backend  G GRP  J JVM3        m distcontroller   m txinjector  G GRP1  J JVM2      om txinjector  G GRP2 J JVM1        G  lt groupid  GRP2 gt          m backend  G GRP2  J JVM3              m txinjector  G GRP2  J JVM2          Driver System s  SUT    Above example can be used for groups 2 or larger using 2 or more Tx    Backend     5 6 4  Backend s  deployed across multiple Hosts  Blade servers     For SPECjbb2013 Distributed category  Backend s  can be deployed across multiple hosts     SPECjbb2013 Distributed  Backend s  on 2 Hosts    Host 1     m txinjector  G GRP1  J JVM1  G  lt groupid  GRP1 gt      m distcontroller     m backend  G GRP1  J JVM2     m txinjector  G GRP2  J JVM1  m backend  G GRP2  J JVM2         J       Y  Driver System s     Host 2  SUT       21  January 2013    17 of 35    Copyright    1988 2013 SPEC    SPECjbb2013       5 6 5  Backend s  deployed across virtualized OS images  For SPECjbb2013 Distributed category  Backend s  can be deployed across multiple Virtual Guest OS s      SPECjbb2013 Distributed  Backend s  on 2 Virtual Guest OS s     Virtual Guest OS 1      G  lt groupid  GRP1 gt       m distcontroller y      i  m backend  G GRP1 J JVM2          m txinjector  G   GRP1  SJVM1     Virtual Guest OS 2      G  lt groupid  G
27. bb2013 props file        21  January 2013 12 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       Try increasing specjbb txi pergroup count value if you observe    IR is under limit    failures  which indicate that you  may need more transaction Injectors to produce the requested injection rate  See examples later in this section     5 5 3  Example Multi JVM run for 1 Group with 1 Tx    Backend  or 1 Tx    Group     Ensure specjbb group count 1 is set in the props file and launch   java  jar SPECjbb2013 jar  m multicontroller   Then launch the transaction Injectors and Backend with the following commands   java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM1    java  jar SPECjbb2013 jar  m backend  G GRP1  J JVM2    Example       r   m multicontroller  m txinjector  G GRP1  J JVM1       G  lt groupid  GRP1 gt    m backend  G GRP1  J JVM2      i          5 5 4  Example Multi JVM run for 1 Group with 2 TxI   Backend  or 2 Tx    Group   Set the property specjbb txi pergroup count 2 and launch     java  jar SPECjbb2013 jar  m multicontroller   Then launch the transaction Injectors and Backend with the following commands   java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM1  java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM2    java  jar SPECjbb2013 jar  m backend  G GRP1  J JVM3    Example 1 Group with 2 TxI   Group    Jim a a an am am a a enim oi   m txinjector  G GRP1  J JVM1       m multicontroller         G  lt groupid  GRP1 gt    m backend  G GRP1  J JVM3     f
28. category is the simplest of all the three categories as all components run within single JVM instance   java  jar SPECjbb2013 jar  m composite    5 5  Running SPECjbb2013 MultiJVM  Multiple JVMs  Single Host  All benchmark components like Controller  TxI s  and BE s  run on SUT inside non virtualized single OS image   Launch the following separate JVM processes    java  jar SPECjbb2013 jar  m multicontroller   java  jar SPECjbb2013 jar  m txinjector  G  lt groupid gt   J  lt jvmid gt    java  jar SPECjbb2013 jar  m backend  G  lt groupid gt   J  lt jvmid gt     Where groupid and jvmid are alphanumeric strings     5 5 1  Setting multiple Groups    This configuration allows for multiple Groups  each with its own set of transaction Injectors and Backends  The  groupid uniquely identifies each Group  TxI s   lt    gt  Backend  whereas the jvmid distinguishes among JVM  instances launched for multiple TxI s  and Backend that are part of the same Group  The jvmid needs to be unique  only within a group and same the jvmid could be reused across groups  See examples later in this section     The property specjbb group count sets the number of Groups  This property needs to be set when you are running  with more than one Group     5 5 2  Setting more than one    TxI s    Backend     or TxI s    Group      It is possible to use more than one Tx  for each Backend  The property can be set either on the command line via     Dspecjbb txi pergroup count  lt value2 gt  or in the config SPECj
29. e   12 6  RT Curve Phase   13  Correlating RT curve data point to Controller out and Controller log    14  Exporting HTML report data to CSV or table format    15  Filling HW SW configuration details in template  C M D  raw file    15 1   15 2   15 3   15 4   15 5   15 6   15 7     Benchmark and test descriptions   Overall SUT  System Under Test  descriptions   SUT or Driver Product descriptions   Configuration descriptions for unique jvm instances   Configuration descriptions for unique OS instances   Config descriptions for OS images deployed on a SUT HW or Driver HW  Modifying HW and SW details after the run    16  Benchmark properties    16 1     16 1 1   16 1 2   16 1 3     16 2     16 2 1   16 2 2   16 2 3   16 2 4   16 2 5   16 2 6   16 2 7   16 2 8   16 2 9     Properties not propagated by Controller  Contacting Controller       Connection pools for communication among agents        Timeout for I O operations       Properties propagated by Controller to all agents  specjbb group count 1       specjbb txi pergroup count 1       specjbb forkjoin workers 2       specjbb controller rtcurve warmup step 0 1  10         specjbb controller maxir maxFailedPoints 3       specjbb run datafile dir         specjbb customerDriver threads 64       specjbb mapreducer pool size 2       Handshake time out       16 2 10  Heartbeat       17  Invalid run messages    18  Performance Tuning    18 1   18 2   18 3   18 4   18 5   18 6     JVM Software  Memory  Threads   JVM Locking  Network  
30. e can also specify where these results files are  stored  User is expected to ensure that the JVM instance for Controller will have the necessary credentials to write  to this path     By default HTML    level 0    report is produced which contains the benchmark user viewable report and data  Newly  generated file SPECjbb2013  lt date gt   lt run number gt  raw has all fields from template  C M D  raw  data for    level 0     HTML report along with fields for SPEC office to edit and manage publications  If a publication is desired  user  needs to submit to SPEC this raw file along with FDR package  refer to SPECjbb2013 Run and Reporting Rules  section 4      For various reasons  run could be invalid or show warnings  The HTML result report should indicate the reasons   Most warnings and invalidations can be mitigated by changing parameters and or by using different JVM tuning  parameters     11  Results using manual reporter invocation  For various reasons  user may need to run the reporter manually  The reporter can be run manually with the  following command     java  Xms2g  Xmx2g  jar SPECjbb2013 jar  m reporter  s  lt binary_log_ file gt     Important note  Reporter needs three input files and since only one file is being defined on command line  other  two are assumed to be in default  dir file_name  with details below     1   lt binary_log file gt  is SPECjbb2013  lt run_mode_mark gt   lt timestamp gt  data gz file produced during the  benchmark run   2  By default  rep
31. eaa s        oto              1 000 1 500 2 000 2 500 3 000 3    jOPS       7 00     6 500       m min   median   a 90 th percentile   95 th percentile   99 th percentile       vy max          12 1 3  Overall SUT description    This section shows same information as entered in the template  C M D  raw file     12 1 4  SUT description    This section also shows same information as entered in the template  C M D  raw file for HW and SW products     12 1 5     These sections show details about max jOPS and critical jOPS  For max j  after the max jOPS RT step level     max jOPS and critical jOPS details    For critical jOPS  it shows a table with individual critical  OPS 10ms   Geomean     OPS it shows RT step levels just before and    50ms  100ms  200ms and 500ms as well    critical jOPS   Geomean    OPS   10000  50000  100000  200000  500000  SLAs         10000 50000 100000 200000 500000    432 850 1447 3165 5331    Individual critical jJOPS calculations require knowing the last success and first failure jOPS for p99 99   percentile   for 10ms  50ms  100ms  200ms and 500ms response time SLAs  A table shows jOPS for various threshold of    response times using various percentiles        21  January 2013 24 of 35    Copyright    1983 2013 SPEC    SPECjbb2013       Last Success jOPS First Failure jOPS for SLA points      79   79   79   79   79   79    79   79   79   79   79   79  5508 5586 1888 1967 865 944 708 787 236 315   79  5980 6058 4013 4091 1967 2046 1652 1731   79  6137 6
32. ecord complete data of the run  except  HW and SW configuration details   Upon successful completion of the benchmark run  Controller will stop writing  to the binary log file and launch the reporter     During the run  untill the reporter is invoked  controller log  controller out and  lt binary log gt  are in current  directory  When invoked  reporter takes following files as input     e binary log file containing run data  e template  C M D  raw file containing hw sw configuration details  o Input raw file could be specified at the Controller launch command using option     raw  lt file gt         Once reporter invocation completes  both above input files are left in its original places and reporter produces  following files     e Directory SPECjbb2013 result SPECjbb2013  lt C M D gt   lt Date gt   lt runNum gt  report  lt num gt    o SPECjbb2013  lt date gt   lt run number gt  raw file  o SPECjbb2013  lt date gt   lt run number gt  HTML file   e Directory SPECjbb2013 result SPECjbb2013  lt C M D gt   lt Date gt   lt runNum gt  report  lt num gt  Images   o Images for html file   e Directory SPECjbb2013 result SPECjbb2013  lt C M D gt   lt Date gt   lt runNum gt  report  lt num gt  Data   o Data of html graphs   e Directory SPECjbb2013 result SPECjbb2013  lt C M D gt   lt Date gt   lt runNum gt  report  lt num gt  logs        21  January 2013 21 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       The user using     t  lt FILE DIR gt  on the Controller launch command lin
33. es in response time may impact the critical  OPS benchmark metric  To keep the total benchmark  run time to about 2 3 hours  each RT step level is approximately 90 seconds  Its possible that this is not long  enough to capture infrequent long GC pauses  As a result  whenever such long GC pauses occur  the p99  99    percentile  response time for that RT step level may show a big jump in response time Setting each RT step level  to a long enough period to capture these infrequent spikes would allow a more accurate response time  measurement  However  such a benchmark run would last 12 hours or more  which reduces its usefulness   Considering the many pros and cons  the RT step level duration of 90 sec was selected     Overall Throughput RT curve    OOOOO oO     spikes in response time  if   is              Response time  usec      ant a  o y       If the user wants to find more details about the data points with high response time  the following procedure can  be followed     e In RT curve  find approximate jOPS  IR  Injection Rate  on x axis related to the spike in response time and note  down the corresponding response time   RT curve data can be exported to a CSV file by just clicking on the  graph    e In Controller out file  go to RT curve phase data and find RT step level matching the jOPS value read from the  RT curve graph  User can see detailed summary of the RT step level exhibiting the spikes in the response time  for p99 response time column of the summary data  as
34. etter performance     18 7 2  Two Backend  2 Groups  distributed with each Backend run ona 8 cores    java  Dspecjbb group count 2  Dspecjbb forkjoin workers 8    Xms2g  Xmx2g  jar SPECjbb2013 jar  m  distcontroller    java    Xms2g    Xmx2g  jar SPECjbb2013 jar  m txinjector  G G1  J JVM1  java    Xms2g    Xmx2g  jar SPECjbb2013 jar  m txinjector  G G2  J JVM1    java  Xms10g  Xmx10g    Xmn6g  XX  UseBiasedLocking  XX  UseParallelOldGC  jar SPECjbb2013 jar  m  backend  G G1  J JVM2    java  Xms10g  Xmx10g    Xmn6g  XX  UseBiasedLocking  XX  UseParallelOldGC  jar SPECjbb2013 jar  m  backend  G G2  J JVM2    Note  It is suggested that if CPU utilization is  lt 90     Dspecjbb forkjoin workers  could be set 2X that of  available processor threads for better performance  Also when running  gt 1 groups  affinity of groups to  respective NUMA nodes will deliver the most consistent performance        21  January 2013 33 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       As with most aspects of the benchmark implementation  there are restrictions concerning the type of performance  tuning that is allowed for publishable results  Please see the SPECjbb2013 Run and Reporting Rules for more  details     19 Advance level report   SPECjbb2013 reporter when invoked with     l  lt 0 1 2 3 gt     produces higher level of report where    level O    is the  minimum level if detail and    level 3    is most detailed  Default HTML report is    level 0     Refer to earlier section on  manual
35. file and rerun the reporter  User should use  raw option in case of custom   raw file  User could also edit in  submission raw file and rerun the reporter  For details  see earlier section about manual invocation of reporter        21  January 2013 29 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       16 Benchmark properties   There are many properties that control the operation of SPECjbb2013  The ones that are user settable are listed in  SPECjbb2013 Run and Reporting Rules document section 2 5  This section only covers user settable properties  For  details about other advanced options for research and testing purposes refer to SPECjbb2013 Advanced Options  and Research section on the benchmark site     e The SPECjbb2013 prop file within the benchmark kit provides a detailed overview of the properties  Some  important points about properties    o Benchmark parameters are actually java properties and may also be passed from command line as    Dproperty value    o Ifa property is set using the launch command line as well as in the property file  launch command has  higher priority   o Most properties are propagated by the Controller to the Agents  overriding property values on the  Agent side  A user may update properties files on the Controller host  or update Controller launching  command  in case of the Distributed run    o Some properties are Controller independent and not propagated by controller  User needs to update  such property for every launching component eit
36. he OS directory structure into which the SPECjbb2013 suite is to be installed is subject to  the user s discretion  The user must either add the path of the Java executable to the PATH environment variable   consult the documentation of the OS for instructions   or invoke the JRE with the fully qualified path and filename  based on the installation directory of JRE and benchmark suite        21  January 2013 9 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       2 2  Network setup    Network requirements are very different among three run categories     SPECjbb2013 Composite does not require any network as all components run inside a single JVM instance        SPECjbb2013 MultiJVM uses    localhost    as all components deployed across multiple JVM instances still run inside a  single OS image  But  an    IP address    could be used if the user wants to limit network traffic between  Backend     TxI s  through specific network cards     SPECjbb2013 Distributed requires network setup as it involves Driver system s  and a SUT  and consist of blade  servers with multiple nodes     For a valid SPECjbb2013 benchmark implementation  there is a set of physical environment criteria that must be  satisfied  Please consult the SPECjbb2013 Run and Reporting Rules  It is required to connect the network interface  of the SUT so that it will establish a TCP IP connection with the Driver system s   Configure the operating system   s  network configuration such that the SUT is on the same s
37. her through property file or command line     16 1  Properties not propagated by Controller    If changing from default  the value should be passed to every launching component either through property file or  command line  SPECjbb2013 Composite and SPECjbb2013 MultiJVM are run from the same directory using same  property file  In this case  setting them in one property file will be sufficient     16 1 1  Contacting Controller    Properties specjbb controller host localhost and specjbb controller port 24000 are given to agents so that all  agents can contact this IP address and port for handshaking with Controller     16 1 2  Connection pools for communication among agents     specjbb comm connect connpool size 256   specjbb comm connect pool min 1  specjbb comm connect pool max 256    These properties help setup the number of socket connections needed for communications amongst agents   Default numbers should work optimally for most configurations  Larger values or tuning may be needed for larger  systems     16 1 3  Timeout for I O operations    specjbb comm connect timeouts connect 60000   specjbb comm connect timeouts read 60000   specjbb comm connect timeouts write 60000    This is the time in milliseconds agents wait for connect or read or write  For large systems or when facing very long  pauses  increase these values if observing heartbeat failures or run producing submit errors     16 2  Properties propagated by Controller to all agents    If changing from default  u
38. ing of 2GB is needed  Larger heaps may be needed for  generational garbage collectors    e For each Txl  heap size of 2GB is suggested    e For Controller  heap size of 2GB is suggested  For configuration running large number of groups   gt 64    even larger size heap for controller is needed to avoid OOM  Out Of Memory  error during report  generation phase  If OOM is experienced  just re run the reporter with larger heap using the  run_reporter   scripts    e Benchmark stresses response time and as a result GC policies can have significant impact  Collecting GC  pause data can also be helpful   verbosegc on JVM command line      Capturing the Controller standard output can be helpful in debugging many issues        21  January 2013 10 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       4  SPECjbb2013 trial run    A test run for category SPECjbb2013 Composite is the easiest since all components are inside a single JVM  instance  Once you   ve installed the benchmark kit and appropriate JRE  update modified the run_composite    script with correct path to java and just run the script  Depending on the capabilities of your test system  you may  need to increase the Java heap size and other JVM tuning in the run_composite   ascript  The benchmark run will  last around 2 hours  and the results will be written to the result directory     Running SPECjbb2013 MultiJVM is next easiest since all components are launched inside a single OS instance  This  category requires launching
39. ingle or multiple OS images as well as  virtualized OS environments and deployments across multiple OS instances  e Driver system s   only needed for SPECjbb2013 Distributed  must use non virtualized OS environment    2 1 2  Java Runtime Environment  JRE  set up    Before proceeding it is the responsibility of the user to select a suitable Java Runtime Environment  JRE   Java SE 7  or higher  is installed on the SUT  There are a variety of JREs available from a number of different vendors  Also  note  The JRE is the only auxiliary software that must be installed within the benchmark environment with the  SPECjbb2013 benchmark suite  No additional database or web server components are required     2 1 3  Benchmark kit    Unzip the attached SPECjbb2013 tar gz or SPECjbb2013 zip file into the directory of your choice or follow the  install instructions in the benchmark readme txt file     The top level directory contains the jar executable and a config  directory that stores the prop files as well as HW  and SW configuration files  They are named template C raw for SPECjbb2013 Composite  template M raw for  SPECjbb2013 MultiJVM and template D raw for SPECjbb2013 Distributed  By default the HW and SW details will be  taken from these files  If a different file name and or directory needs to be used  the user can give the path to the  new file on the command line by adding     raw  lt raw file gt     to the launch command of the Controller component     The exact location within t
40. lease note that these techniques may or may not necessarily be beneficial for system performance in a  production environment     18 1 JVM Software    This is a critical component affecting the performance of the system and the workload  A good starting point is to  review published results of this and other Java server benchmarks  For more information concerning these options  please consult your JVM vendor     18 2  Memory    The SPECjbb2013 workload uses at least a heap size of 2GB  suggested 16GB  for each Backend  1GB  suggested  2GB for each Txl and 1GB  suggested 2GB  for Controller  Heap size is set via the  ms  mx  or  Xms  Xmx   command line arguments for the java executable in many JVMs        21  January 2013 32 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       18 3  Threads    The number of threads for Fork Join workers for each Backend is recommended to set to twice the available  logical processor threads  This can be set via    specjbb forkjoin workers     a user settable property       18 4 JVM Locking    With very complex business logic and several tiers of Fork Join workers working across several entities like  Supermarkets  Suppliers and Headquarters  the synchronization of application methods  or the JVM s internal use  of locking  may prevent the JVM from using all available CPU cycles  If there is a bottleneck without consuming  100  of the CPU  lock profiling with JVM or operating system tools may be helpful     18 5  Network    Although SPECjbb20
41. n one file SPECjbb2013 prop for these two categories     SPECjbb2013 Distributed is launched on SUT and Driver system s   Most properties need to be defined in directory  that is being used to launch Controller  TxI s  and Backend s  only use a small set of the  remaining properties  They are needed for initialization of these components  host IP of Controller  thread pools  etc   must be defined at launch command or property file of these components        21  January 2013 11 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       5 3  Edit benchmark run scripts    Basic scripts to launch different SPECjbb2013 categories in Unix  Linux  Mac OSX  and Windows environments are  included with the kit  The benchmark user needs to modify JDK path and command line options for the desired  configuration and deployment     1  SPECjbb2013 Composite  Single JVM  Single Host  Script to use  run_composite sh or  bat  2  SPECjbb2013 MultiJVM  Multiple JVMs  Single Host  Script to use  run_multi sh or  bat  3  SPECjbb2013 Distributed  Distributed JVMs  Single or Multi Hosts  Two scripts to use   run_distributed_ctrl_txl on Driver machine outside SUT  run_distributed_sut for running Backends on SUT    The examples below are to launch the benchmark components are the simplest command line  To add JVM  command line options and other benchmark properties please refer to scripts and properties files for further  explanation     5 4  Running SPECjbb2013 Composite  Single JVM  Single Host    This 
42. nse time requirements  This is done by evaluating at each RT step level  starting 0  of HBIR  then incrementing the step level by 1  of HBIR until maximum capacity is reached  This phase  produces the data that is used to determine both metrics max jOPS and critical jOPS  After finding max jOPS the  benchmark runs for several more step levels to show as how system handles throughput levels that are higher  than max jOPS     For most systems  max jOPS should be between 70  and 90  of HBIR  In rare cases  max jOPS  gt  100  of HBIR is  possible and benchmark will continue to test RT step levels  gt 100  of HBIR to determine max jOPS     Systems using JVM configurations which result in large pauses from GC  Garbage Collection  may find that max   jOPS sometime can be much lower than HBIR and many RT step levels are continue to pass even beyond max jOPS        21  January 2013 19 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       This happens because severe pause s  are occurring during the RT curve building phase that results in a RT step  level failure  while beyond this RT step levels will pass  as pauses are occasional  Since max jOPS is last successful  RT step level before first failure  the max jOPS metric will be lower  User should resolve the cause of severe  pauses to remedy this issue     6 3  Validation    The validation phase is used for validation of business logic  During this phase a given IR is executed and then  validation checks are performed against data s
43. ntroller P  java  jar SPECjbb2013 jar  m distcontroller  java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM1  java  jar SPECjbb2013 jar  m txinjector  G GRP2  J JVM1   Launch Backend on SUT  each host OS can have one or more Backends    java  jar SPECjbb2013 jar  m backend  G GRP1  J JVM2  java  jar SPECjbb2013 jar  m backend  G GRP2  J JVM2    SPECjbb2013 Distributed  2 Groups with 1 Txl Group     m txinjector  G GRP1  J JVM1  G  lt groupid  GRP1 gt      lt         m backend  G GRP1  J JVM2     Cr   G  lt groupid  GRP2 gt             m distcontroller        lt  lt      m txinjector  G GRP2  J JVM1  m backend  G GRP2  J JVM2          Driver System s  SUT    Above example can be used for groups 2 or larger     5 6 3  Example distributed run for 2 Groups using 2 TxI   Backend    Unpack binaries and set in the props file on Driver machine and on the SUT  all hosts    specjbb group count 2  specjbb txi pergroup count 2  specjbb controller host  lt Controller IP address gt   Launch Controller and TxInjectors on Driver machine with  Controller P  java  jar SPECjbb2013 jar  m distcontroller  java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM1  java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM2    java  jar SPECjbb2013 jar  m txinjector  G GRP2  J JVM1       21  January 2013 16 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       java  jar SPECjbb2013 jar  m txinjector  G GRP2  J JVM2  Launch Backend on SUT  each host OS can have one or more Backends    java  jar SPECj
44. oller and TxI s  are  deployed on separate Driver system s  instead of residing on the SUT  All nomenclature for defining the groupid   jvmid and properties specjbb group count and specjbb txi pergroup count are similar between these categories        Unpack binaries on Driver machine and on the SUT  for multi hosts  unpack on all Hosts   Many configurations for  single and multi host are possible  Please see examples below     5 6 1  Example distributed run for 1 Group with 1 TxI   Backend  or 1 TxI Group     Unpack binaries and set in the props file on Driver machine and on the SUT  all hosts      specjbb group count 1  specjbb controller host  lt Controller P  gt     Launch Controller and TxInjector on the Driver machine with   ControllerIP  java  jar SPECjbb2013 jar  m distcontroller  java  jar SPECjbb2013 jar  m txinjector  G GRP1  J JVM1   Launch Backend on SUT     java  jar SPECjbb2013 jar  m backend  G GRP1  J JVM2    SPECjbb2013 Distributed  1 Group with 1 Txl Group     m txinjector  G GRP1  J JVM1  G  lt groupid  GRP1 gt     oo B    i  m backend  G GRP1  J JVM2            Driver System s  SUT          21  January 2013 15 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       5 6 2  Example distributed run for 2 Groups using 1 Txl   Backend    Unpack binaries and set in the props file on Driver machine and on the SUT  all hosts      specjbb group count 2  specjbb controller host  lt Controller P  gt     Launch Controller and TxInjectors on the Driver machine with  Co
45. onents send handshake  messages to the Controller  The controller starts recording progress information in controller log and  controller out and detailed measurement information in the  lt binary log gt  in the current benchmark directory   Other agents start individual logs to record progress  After successful handshake  the controller takes the  benchmark through following stages     Search HBIR RT curve building Validation Profiling Reporter     High Bound  Response  Run  Statistical    HTML   Injection Rate  Throughput  checks  data    raw files        TxInjector induced IR PR                  oaa  Find max jOPS  60 000    55 000    50 000    45 000 4  40 000             sec       25 000 4  20 000    15 000    10 000 7  5 000    0                                1 500 000 2 000 000 2 500 000 3 000 000 3 500 000  Time  msec              PR    successiR    Search HBIR RT curve building phase l  a R    6 1  Search HBIR    Search HBIR  or the search for the High Bound Injection Rate  approximates the maximum Injection Rate  HBIR  the  system can handle  Later  during RT curve building phase  RT step levels are incremented by 1  of HBIR  For  testing and research  HBIR value can be manually set using property but for compliant runs  it must be determined  automatically by the    Search HBIR    phase     6 2  RT curve building    Response Throughput  RT  curve building phase is used to determine the overall maximum throughput capacity of  the system  both with and without respo
46. onfiguration details in template  C M D  raw file   For SPECjbb2013  to describe HW and SW details  user needs to fill appropriate template  C M D  raw   SPECjbb2013 Composite template C raw  SPECjbb2013 MultiJVM template M raw and SPECjbb2013 Distributed  template D raw file in config  directory        21  January 2013 28 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       Since SPECjbb2013 covers from very simple configuration to very complex distributed deployments  HW SW  configuration file needed flexibility  This section describes below the most complex configuration description   SPECjbb2013 Distributed     15 1  Benchmark and test descriptions    The fields listed are self explanatory     15 2  Overall SUT  System Under Test  descriptions    Covers overall SUT so that it is easy to understand overall SUT at a glance  The fields are self explanatory     15 3 SUT or Driver Product descriptions    This section requires a list of all products using the specified format for category SW JVM  SW OS  SW OTHER   HW SYSTEM HW OTHER  Each product is given a label     As example of labels SW JVM JVM_1  SW OS OS 1   SW OTHER OTHER_1  HW SYSTEM HW_1  HW OTHER Network_1    Note  Information must be included for any software installed  Any irrelevant field can be set to N A   If a product is not needed  user can comment out or delete those fields  As example if SW OTHER and HW OTHER  not needed  user could comment all fields of these products     Also  these product labels work as
47. orter takes config template  C M D  raw file as input for HW SW details  If this is not the file  with proper HW SW details  refer to section 11 1 to manually specify the template file on the command line    3  For consistency reasons  reporter searches for SPECjbb2013 config SPECjbb2013 props file  It does not need  to be the exact file that was used for the run  File supplied with the kit in default directory is sufficient  To  manually specify  command line option     p  lt prop file gt     can be used     The above command will create a  result SPECjbb2013  lt C M D gt   lt timestamp gt  report  lt num gt  directory  if it does  not exist  and then create a sub directory named report  lt num gt   It then generates all results files for    level 0     HTML report inside that directory  Each time reporter is invoked on same binary log file  it produces a new  directory  incrementing    num    in    report  lt num gt     under same result SPECjbb2013  lt C M D gt   lt timestamp gt    directory     11 1  HW SW details input file with user defined name    If user wants to declare a file for HW and SW details  the following command can be used   java  Xms2g  Xmx2g  jar SPECjbb2013 jar  m reporter  raw  lt hw sw details file raw gt   s  lt binary_log_file gt     11 2 To produce higher level HTML reports    To produce various levels of report  following command can be used   java  Xms2g  Xmx2g  jar SPECjbb2013 jar  m reporter    raw  lt file gt   s  lt binary_log_ file gt      lt
48. oups  it is difficult for the benchmark to correctly assign this value  Since  this  value can have significant impact on performance  user is advised to investigate the impact of this property using  affinity and as well as how different JVMs account for number of processor threads available when invoked using  NUMA and processor affinity     16 2 4  specjbb controller rtcurve warmup step 0 1  10      At the beginning RT curve  the benchmark internal data structures are re initialized  As a result  IR 10  of HBIR is  applied for a 3 minute warm up phase  If a system needs more warm up time  the user could increase the   of  HBIR up to 90  of HBIR but not allowed to increase the 3 minute time window of warm up     16 2 5    specjbb controller maxir maxFailedPoints 3    This property should have no impact on performance  This just helps user to be able to observe behavior after the  max jOPS has been determined based on First Failure of RT step level  This setting controls how many consecutive  failures of RT step levels are allowed until RT curve phase be stopped     16 2 6  specjbb run datafile dir      Default location of the binary log file is current dir  This property can be set to change the directory location for  binary log outputs     16 2 7  specjbb customerDriver threads 64    This property plays an important role for Transaction Injector  By default it sets Txl thread pool for issuing probes   saturate requests  and service  This value should work fine for most sy
49. p TxI   stop BE   saving   102819 Kb   term   init     98s  rampup IR   QO      rIR aIR PR   0 0 0   tPR   0   OK    131s  rampup IR   90  crIR aIR PR   90 90 90   tPR   3642   OK    135s  rampup IR   100  cIR aIR PR   100 101 101   tPR   4160   OK    139s  trying IR   200  crIR aIR PR   200 194 194   tPR   7323   OK    143s  trying IR   220  crIR aIR PR   220 218 218   tPR   7303   OK     12 6 RT Curve Phase     During RT curve phase  the controller out stores a summary of each RT step level  Below is an example summary of  RT step level at 12  of HBIR  with passing IR at this RT step level  as shown by  oK    Many other details  response  time percentiles  probes  and samples for each type of requests are summarized as well     1811s   12   IR   DOG  sb eee EREE EEE EEEE EE  rIR aIR PR   966 966 966   tPR   17883   OK   1877s  Respon  times    Request Success Partial Failed SkipFail Probes Samples min p50 p90 p95 p99 max  Overall 55263 0 0 0 53716 59852 500 2500 4400 4900 6400 198000  InStorePurchase 29076 0 0 0 28458 31534 500 2400 4300 4800 6300 197000  OnlinePurchase 20364 0 0 O 19787 22004 500 2300 4400 4900 6400 198000  InstPurchase 5823 0 0 0 5471 6314 600 3300 4900 5400 6885 198000  AssocOfCat 60 0 0 0 57 63 35000 43000 45000 47000 52000 52000  AssocOfProduct 585 0 0 0 503 688 800 2500 3800 4100 5200 39000  BusinessReport 145 0 0 0 101 147 42000 48000 52000 54000 58520 59000  CustBuyBeh 582 0 0 0 480 623 200 500 1300 1400 2676 23000  ProductReturn 1549 0 0 0 1398 166
50. run  If these  non critical failures are O during the RT phase  only a message is printed  If non critical failures during RT phase are   gt 0  then a graph is shown  In case of graph  jOPS for RT step levels are on x axis and number of non critical failures  for each RT step level is on y axis  Transaction Injectors  Txl  issue requests to Backend s  to process  Many times  and for various reasons  TxI will timeout after waiting for a threshold  This is counted as non critical failure  For  more details  please refer to validation section 3 4 4 of Run and Reporting Rules document     12 1 9  Delay between performance status pings    This validation criterion ensures that there are not too many very long non responsive periods during the RT curve   building phase  X axis is time in milliseconds  msec   Y axis is showing delay time in msec  Validation criteria applies  to whole RT phase and not to individual RT step levels  Also  minimum y axis value is 5 sec as that is passing criteria  and chosen to reduce the size of  raw file for submission  If a user wants to see y axis data starting with 0  user  needs to generate report with level 1 and it will have the detailed graph  For more details  please refer to  validation section 3 4 4 of Run and Reporting Rules document     12 1 10  IR PR accuracy    This graph shows the relationship between IR  Injection rate   alR  Actual Injection Rate  and Actual PR Processed  Rate   The graph is showing all benchmark phases  starting with
51. s to review result and submission raw file to edit any HW SW information  This section  details the format of these two files     12 1 Report summary output for    level 0    HTML    User can click on a field in HTML report and it will display the definition of the field  HTML    level 0    report is divided  into several sections detailing different aspect of the benchmark     12 1 1  Top section    It lists the benchmark metrics max jOPS and critical jOPS as well as high level tester information     Note  Any inconsistencies with the run and reporting rules causing a failure of one of the validity checks  implemented in the report generation software will be reported here and all pages of the report file will be  stamped with an  Invalid  water mark in case this happens  The printed text will show more details about which of  the run rules wasn t met and the reason why  More detailed explanation may also be at the end of report in  sections    run properties    or    validation Details     If there are any special waivers or other comments from SPEC  editor  those will also be listed there     12 1 2  Benchmark results summary    The raw data from this graph can be found by clicking on the graph  This graph shows the Response Throughput   RT  phase of the benchmark  Initial phase of finding High Bound Injection Rate  HBIR   Approximate High Bound of  throughput  and later validation at the end of the run are not part of this graph  X axis is showing jOPS  Injection  Rate  I
52. ser should set these properties on Controller only as these will be propagated to all  agents  Txls and Backends  correctly  If user sets these properties on Controller side as well as other agents   property values set on Controller will override values set on agent   s side        21  January 2013 30 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       16 2 1  specjbb group count 1    This sets the number of Groups  Since  each Group can only have one Backend  this indirectly sets number of  Backend s  as well  Often  NUMA systems may benefit by running 1 Group per NUMA node  Also  blade servers  may benefit by running at least 1 group per blade server     Note  Remote traffic resulting from transactions spanning across multiple Groups increases with number of  Groups  As a result  setting too many Groups when not needed may result in a lower benchmark score     16 2 2   specjbb txi pergroup count 1    At least one dedicated Txl per group  A Txl cannot issue requests to more than one Group  or Backend   If one Txl  is not sufficient to load a Backend  the user can set more than one Txl per Group     Note  Setting this to a larger value than needed may result in lower score     16 2 3  specjbb forkjoin workers 2    This property sets the thread pool size of Backend agents  Default value is number of processor threads available   In testing  setting this value to twice the number of processor threads available results in better performance     Note  When running multiple Gr
53. stems  but  if there are not enough probes   individual values could be increased using     specjbb customerDriver threads probe     specjbb customerDriver threads service    specjbb customerDriver threads saturate     16 2 8  specjbb mapreducer pool size 2    Controller ForkJoinPool size supporting parallel work of TxInjector Backend agents     16 2 9  Handshake time out    These properties control as how long Controller will wait for agents to respond back        21  January 2013 31 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       specjbb controller handshake timeout 600000   Time period  in milliseconds  for logging status of the initial  Controller  lt   gt  Agent handshaking    specjbb controller handshake period 5000  Time period  in milliseconds  for logging status of the initial Controller   lt   gt  Agent handshaking    16 2 10  Heartbeat    The heartbeat leader receives heartbeats from all agents  These two properties control the frequency and  threshold for heartbeats  This mechanism ensures that all agents are alive and responding     specjbb heartbeat period 10000  How often  in milliseconds  Controller sends heartbeat message to an Agent  checking if it is alive    specjbb heartbeat threshold 100000  How much time  in milliseconds  to wait for heartbeat response from an  Agent     Note  If a system is exhibiting long pauses resulting in heartbeat failures and or submit errors  user should  investigate the cause s  of longer pauses as well as try increasing
54. sts and services to Backend s  as directed by the Controller and measures end to end response  time for issued requests     1 2 3  Backend s   BE      Backend contains business logic code that processes requests and services from Txl  and notifies the Txl that a  request has been processed     1 3  Benchmark components configuration and deployment     Benchmark components Controller  Txl s  and Backend s  can be configured to run inside a single JVM instance or  across multiple JVM instances with each component using its own JVM instance deployed to run across single or  multiple hosts     Inside single JVM Across multiple JVMs    Ctr   Tal D  BE  gt     SPECjbb2013 components can be deployed across multiple JVM configurations  in which there is always one  Controller component and at least one Backend  with each Backend having one or more dedicated Transaction  Injector s   This logical mapping of Backend to TxI s  is called a    Group     A Group can have only one Backend  but  can have one or more Transaction Injectors if one Txl is not able to fully load the Backend  The topology for a  Group can be defined using command line options in the run script  The benchmark can be run in single or multiple  Group s  configurations described below     1 3 1  Configuration  All components inside a single JVM instance    This is the simplest case of deployment with intended goal to encourage scaling inside a single JVM instance        21  January 2013 6 of 35 Copyright    1988 2013 
55. template  C M D  raw and   lt binary log gt  of the run as input to produce default    level 0    HTML report and submission file   raw  If default name  is used for template  C M D  raw  reporter will automatically pick correct template file based on run category else  use     raw  lt raw_file gt     command line option for the Controller launch command to give specific name raw file   Since Controller invokes the reporter  this command line option only needed for Controller  Note  If needed  the    reporter can be manually invoked after the benchmark run           5 2  Edit benchmark configuration  config SPECjbb2013 prop file    Many settings are defined by properties that can be set either in SPECjbb2013 props file or on the command line at  launch  Note that command line property setting overrides the same setting in the properties file        To make it easy  most of the properties are passed from Controller to all other components like TxI s  and  Backend s  after the handshake with these components  User only needs to modify property file being used by  Controller  Note  The property passed by Controller overrides the same being set locally        There are few properties that TxI s  and Backend s  need before handshake during initialization  These properties  need to be set for each component either at launch or in property file     All components of SPECjbb2013 Composite and SPECjbb2013 MultiJVM run in the same directory  As a result all  properties can be defined i
56. tical jOPS  10  Results reports  11  Results using manual reporter invocation  11 1  HW SW details input file with user defined name  11 2  To produce higher level HTML reports    11 3    Regenerate submission raw file and HTML report  11 3 1  Using edited original template file and binary log       11 3 2  Edit submission raw file and re generate HTML    level 0    report without binary log  12  Results file details    12 1   Report summary output for    level 0    HTML  12 1 1  Top section       12 1 2  Benchmark results summary       12 1 3  Overall SUT description       12 1 4  SUT description       12 1 5  max jOPS and critical jOPS details       12 1 6  Number of probes       12 1 7  Request mix accuracy       12 1 8  Rate of non critical failures       12 1 9  Delay between performance status pings       12 1 10  IR PR accuracy       12 1 11  Topology       12 1 12  SUT Configuration       12 1 13  Run Properties       12 1 14  Validation details       12 1 15  Other checks       12 2    Submission raw file format  12 2 1  User editable HW SW Configuration Details       12 2 2  Non Editable Data and SPEC office ONLY Use Section       18  18  18    19  19  19  20  20  20  20  20  20  20  21  21  22  22  22    22  23  23    23    23  23  23  24  24  24  25  25  25  25  25  26  26  26  26  26    26  26  26       21  January 2013 3 of 35 Copyright    1988 2013 SPEC    SPECjbb2013       12 3  Controller log file format  12 4  Controller out details  12 5    Search HBIR Phas
57. tructures corresponding to business logic to ensure a correct state  and accurate execution     6 4  Profiling    Profiling phase is used to do an intrusive profile of the benchmark run  The gathered information can be found in  the advanced report     6 5  Reporter    At the end of benchmark run  Controller invokes the reporter unless command line option     skipReport    was used     Note  Untill the invocation of reporter  no result directory is created and all logs including binary log are in the  current directory     On invocation of reporter  it takes the  lt binary log gt  and template  C M D  raw as input files  A directory in  SPECjbb2013 result  lt binary log name dir gt  report  lt NUM gt   is created all files generated for default    level 0 HTML  report and   raw files are placed here unless command     t  lt result_dir gt     is used  Output report is for    level 0    HTML  unless        lt report level 0 1 2 3 gt     is used  For compliant report    level 0    HTML must be generated     7  Approximate run length  A typical SPECjbb2013 benchmark run takes approximately 2 hours  Approximate time for different phases     e Search HBIR   15 20 minutes for typical system  It can take much longer for larger systems    e RT curve building   90 minutes   e Validation   5 minutes   e Profile   2 minutes   e Report   2 minutes for    level 0    while 30 minutes or more for    level 3    with many Groups    8  Operational validity  In order to create compliant results 
58. ubnet as the controller  Also disable the firewall for all  systems to allow them to communicate through TCP IP  Consult the operating system   s documentation for  specific instructions regarding this procedure     2 3  Minimum hardware requirements    For categories SPECjbb2013 Composite and SPECjbb2013 MultiJVM all components of the benchmark run on the  SUT  For category SPECjbb2013 Distributed  in addition to SUT  a minimum of one Driver system is needed     e SUT  System Under Test  requirements are   o Minimum configuration is single Group and it needs at least 4G of RAM  o Larger memory configurations   gt  24G  may be needed for performance runs  o Minimum configuration is single Group  e Driver system s   only needed for SPECjbb2013 Distributed   o Minimum configuration is Controller and single Tx   Group requiring at least 4G of RAM  o Need 2GB RAM for each additional Txl   o Approximate total RAM needed   2GB Controller   2GB   Number of all TxI s     3  Quick tips    Dedicated Transaction Injectors  Tx    lt     gt  Backend BE  together are called a Group     e A Backend requires at least one Txl but if needed can have more than one Txl mapped to it    e A topology can be defined for this mapping    e One Tx  cannot go across two Backends    e Run category depends on type of Controller invoked   m  composite   multicontroller  distcontroller       The following heap size and GC tips are for guidance purpose only     e Usually for each Backend  a minimum heap sett
    
Download Pdf Manuals
 
 
    
Related Search
    
Related Contents
Home Decorators Collection 1048700210 Instructions / Assembly  Printix Client  Samsung SGH-G600G Керівництво користувача  User manual  USER MANUAL - Braeburn Systems  CMMI Metrics Solution at Qimonda Portugal SA  DINION HD 1080p HDR - Bosch Security Systems  ネコとヒョウ3  ServiceUp Bestimmungen 08_2010_FR  Q-See QSDNV Technical Manual    Copyright © All rights reserved. 
   Failed to retrieve file