Hewlett Packard Enterprise ProLiant DL385 Gen10 Plus v2 488179 SPECjbb2015-MultiJVM max-jOPS
184120 SPECjbb2015-MultiJVM critical-jOPS
Tested by: Hewlett Packard Enterprise Test Sponsor: Hewlett Packard Enterprise Test location: Houston, TX Test date: Feb 20, 2022
SPEC license #: 3 Hardware Availability: Mar-2022 Software Availability: Jan-2022 Publication: Mon Mar 21 09:14:17 EDT 2022
Benchmark Results Summary
 
Overall Throughput RT curve
Overall SUT (System Under Test) Description
VendorHewlett Packard Enterprise
Vendor URLhttp://www.hpe.com/
System SourceSingle Supplier
System DesignationServer Rack
Total Systems1
All SUT Systems IdenticalYES
Total Nodes1
All Nodes IdenticalYES
Nodes Per System1
Total Chips2
Total Cores128
Total Threads256
Total Memory Amount (GB)2048
Total OS Images1
SW EnvironmentNon-virtual
 
Hardware hw_1
NameProLiant DL385 Gen10 Plus v2
VendorHewlett Packard Enterprise
Vendor URLhttp://hpe.com/
AvailableMar-2022
ModelProLiant DL385 Gen10 Plus v2
Form Factor2U Rack
CPU NameAMD EPYC 7773X
CPU Characteristics64 Core, 2.2 GHz, 768 MB L3 Cache(Max. Boost Clock Up to 3.5 GHz)
Number of Systems1
Nodes Per System1
Chips Per System2
Cores Per System128
Cores Per Chip64
Threads Per System256
Threads Per Core2
VersionA42 v2.56 02/10/2022
CPU Frequency (MHz)2200
Primary Cache32 KB I + 32 KB D on chip per core
Secondary Cache512 KB I+D on chip per core
Tertiary Cache768 MB (I+D) on chip per chip
Other CacheNone
Disk3 x 800 GB SSD SAS
File SystemXFS
Memory Amount (GB)2048
# and size of DIMM(s)16 x 128 GB
Memory Details128 GB 4Rx4 PC4-3200AA-L
# and type of Network Interface Cards (NICs)HPE Ethernet 10Gb 2-port
Power Supply Quantity and Rating (W)2 x 1600
Other HardwareNone
Cabinet/Housing/EnclosureNone
Shared DescriptionNone
Shared CommentNone
Notes
  • NA: The test sponsor attests, as of date of publication, that CVE-2017-5754 (Meltdown) is mitigated in the system as tested and documented
  • Yes: The test sponsor attests, as of date of publication, that CVE-2017-5753 (Spectre variant 1) is mitigated in the system as tested and documented
  • Yes: The test sponsor attests, as of date of publication, that CVE-2017-5715 (Spectre variant 2) is mitigated in the system as tested and documented
Other Hardware network_1
NameNone
VendorNone
Vendor URLNone
VersionNone
AvailableNone
BitnessNone
NotesNone
Operating System os_1
NameSUSE Linux Enterprise Server 15 SP2
VendorSUSE
Vendor URLhttp://suse.com/
Version5.3.18.22-default
AvailableJul-2020
Bitness64
NotesNone
Java Virtual Machine jvm_1
NameOracle Java SE 17.0.2
VendorOracle
Vendor URLhttp://www.oracle.com/
VersionJava HotSpot 64-bit Server VM, version 17.0.2
AvailableJan-2022
Bitness64
NotesNone
Other Software other_1
NameNone
VendorNone
Vendor URLNone
VersionNone
AvailableNone
BitnessNone
NotesNone
Hardware
OS Images os_Image_1(1)
Hardware Description hw_1
Number of Systems 1
SW Environment Non-virtual
Tuning
  • Workload Profile=High Performance Compute(HPC)
  • Thermal Configuration=Maximum Cooling
  • Determinism Control=Manual
  • Performance Determinism=Power Deterministic
  • Memory Patrol Scrubbing=Disabled
  • Numa Memory Domains Per Socket(NPS)=Four Memory Domains Per Socket
  • Memory Interleaving Mode=Disabled
  • Last-Level Cache(LLC) As NUMA Node=Enabled
  • L1 Stream HW Prefetcher=Disabled
  • L2 Stream HW Prefetcher=Disabled
  • Minimum Processor Idle Power Core C-State=No C-states
  • Power Regulator=OS Control Mode
Notes None
OS Image os_Image_1
JVM Instances jvm_Ctr_1(1), jvm_Backend_1(16), jvm_TxInjector_1(16)
OS Image Description os_1
Tuning
  • ulimit -n 1024000
  • tuned-adm profile throughput-performance
  • echo 960000 > /proc/sys/kernel/sched_rt_runtime_us
  • echo 40000000 > /proc/sys/kernel/sched_latency_ns
  • echo 40000 > /proc/sys/kernel/sched_migration_cost_ns
  • echo 800000000 > /proc/sys/kernel/sched_min_granularity_ns
  • echo 200000000 > /proc/sys/kernel/sched_wakeup_granularity_ns
  • echo 9000 > /proc/sys/kernel/sched_nr_migrate
  • echo 10000 > /proc/sys/vm/dirty_expire_centisecs
  • echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
  • echo 40 > /proc/sys/vm/dirty_ratio
  • echo 10 > /proc/sys/vm/dirty_background_ratio
  • echo 10 > /proc/sys/vm/swappiness
  • echo 2097152 > /proc/sys/vm/max_map_count
  • echo 0 > /proc/sys/kernel/numa_balancing
  • echo 0 > /proc/sys/vm/numa_stat
  • echo always > /sys/kernel/mm/transparent_hugepage/enabled
  • echo always > /sys/kernel/mm/transparent_hugepage/defrag
  • cpupower -c all frequency-set -g performance
Notes None
JVM Instance jvm_Ctr_1
Parts of Benchmark Controller
JVM Instance Description jvm_1
Command Line

-Xms2g -Xmx2g -Xmn1536m -XX:+UseParallelGC -XX:ParallelGCThreads=2

Tuning

Used numactl to interleave memory on all CPUs

  • numactl --interleave=all
Notes None
JVM Instance jvm_Backend_1
Parts of Benchmark Backend
JVM Instance Description jvm_1
Command Line

-Xms31g -Xmx31g -Xmn30g -XX:AllocatePrefetchInstr=2 -XX:+UseParallelGC -XX:LargePageSizeInBytes=2m -XX:-UseAdaptiveSizePolicy -XX:+AlwaysPreTouch -XX:+UseLargePages -XX:SurvivorRatio=26 -XX:TargetSurvivorRatio=95 -XX:MaxTenuringThreshold=15 -XX:ParallelGCThreads=32 -XX:-UseDynamicNumberOfCompilerThreads -XX:-UseDynamicNumberOfGCThreads -XX:+UseTransparentHugePages -XX:MaxInlineSize=900 -XX:FreqInlineSize=900 -XX:LoopUnrollLimit=30 -XX:InlineSmallCode=3k -XX:AutoBoxCacheMax=5000 -XX:AllocatePrefetchDistance=128 -XX:AllocatePrefetchLines=9 -XX:AllocateInstancePrefetchLines=3 -XX:TLABAllocationWeight=5 -XX:ThreadStackSize=512 -XX:TLABSize=4m -XX:CompileThresholdScaling=50

Tuning

Used numactl to affinitize each Backend JVM to physical cores in a NUMA node.

  • numactl --physcpubind=0-7,128-135 --localalloc
  • numactl --physcpubind=8-15,136-143 --localalloc
  • numactl --physcpubind=16-23,144-151 --localalloc
  • numactl --physcpubind=24-31,152-159 --localalloc
  • numactl --physcpubind=32-39,160-167 --localalloc
  • numactl --physcpubind=40-47,168-175 --localalloc
  • numactl --physcpubind=48-55,176-183 --localalloc
  • numactl --physcpubind=56-63,184-191 --localalloc
  • numactl --physcpubind=64-71,192-199 --localalloc
  • numactl --physcpubind=72-79,200-207 --localalloc
  • numactl --physcpubind=80-87,208-215 --localalloc
  • numactl --physcpubind=88-95,216-223 --localalloc
  • numactl --physcpubind=96-103,224-231 --localalloc
  • numactl --physcpubind=104-111,232-239 --localalloc
  • numactl --physcpubind=112-119,240-247 --localalloc
  • numactl --physcpubind=120-127,248-255 --localalloc
Notes None
JVM Instance jvm_TxInjector_1
Parts of Benchmark TxInjector
JVM Instance Description jvm_1
Command Line

-Xms2g -Xmx2g -Xmn1536m -XX:+UseParallelGC -XX:ParallelGCThreads=2

Tuning

Used numactl to affinitize each Transaction Injector JVM to physical cores in a NUMA node.

  • numactl --physcpubind=0-7,128-135 --localalloc
  • numactl --physcpubind=8-15,136-143 --localalloc
  • numactl --physcpubind=16-23,144-151 --localalloc
  • numactl --physcpubind=24-31,152-159 --localalloc
  • numactl --physcpubind=32-39,160-167 --localalloc
  • numactl --physcpubind=40-47,168-175 --localalloc
  • numactl --physcpubind=48-55,176-183 --localalloc
  • numactl --physcpubind=56-63,184-191 --localalloc
  • numactl --physcpubind=64-71,192-199 --localalloc
  • numactl --physcpubind=72-79,200-207 --localalloc
  • numactl --physcpubind=80-87,208-215 --localalloc
  • numactl --physcpubind=88-95,216-223 --localalloc
  • numactl --physcpubind=96-103,224-231 --localalloc
  • numactl --physcpubind=104-111,232-239 --localalloc
  • numactl --physcpubind=112-119,240-247 --localalloc
  • numactl --physcpubind=120-127,248-255 --localalloc
Notes None
max-jOPS = jOPS passed before the First Failure
Pass/Fail Pass Pass Fail Fail Fail
jOPS 482694 488179 493664 499150 504635
critical-jOPS = Geomean ( jOPS @ 10000; 25000; 50000; 75000; 100000; SLAs )
Response time percentile is 99-th
SLA (us) 10000 25000 50000 75000 100000 Geomean
jOPS 128901 139871 189238 233119 266030 184120
  Percentile
  10-th 50-th 90-th 95-th 99-th 100-th
500us 5485 / 10970 - / 5485 - / 5485 - / 5485 - / 5485 - / 5485
1000us 21941 / 27426 5485 / 10970 - / 5485 - / 5485 - / 5485 - / 5485
5000us 422357 / 427842 356535 / 362021 82277 / 87763 71307 / 76792 54852 / 60337 - / 5485
10000us 427842 / 433328 383961 / 389446 290713 / 296199 230377 / 235862 126159 / 131644 16455 / 5485
25000us 438813 / 444298 416872 / 422357 362021 / 367506 312654 / 318139 137129 / 142614 16455 / 5485
50000us 438813 / 444298 422357 / 427842 378476 / 383961 329110 / 334595 186495 / 191981 16455 / 5485
75000us 444298 / 449783 427842 / 433328 383961 / 389446 345565 / 351050 230377 / 235862 16455 / 5485
100000us 444298 / 449783 433328 / 438813 383961 / 389446 356535 / 362021 263288 / 268773 16455 / 5485
200000us 460753 / 466239 444298 / 449783 416872 / 422357 394932 / 389446 362021 / 367506 65822 / 43881
500000us 482694 / 488179 466239 / 471724 449783 / 455268 444298 / 449783 433328 / 389446 362021 / 367506
1000000us 488179 / - 482694 / 488179 477209 / 482694 471724 / 477209 466239 / 389446 438813 / 389446
Probes jOPS / Total jOPS
Request Mix Accuracy
Note
(Actual % in the Mix - Expected % in the Mix) must be within:
'Main Tx' limit of +/-5.0% for the requests whose expected % in the mix is >= 10.0%
'Minor Tx' limit of +/-1.0% for the requests whose expected % in the mix is < 10.0%
There were no non-critical failures in Response Time curve building
Delay between status pings
IR/PR Accuracy
This section lists properties only set by user
Property Name Default Controller Group1.Backend.beJVM Group1.TxInjector.txiJVM1 Group10.Backend.beJVM Group10.TxInjector.txiJVM1 Group11.Backend.beJVM Group11.TxInjector.txiJVM1 Group12.Backend.beJVM Group12.TxInjector.txiJVM1 Group13.Backend.beJVM Group13.TxInjector.txiJVM1 Group14.Backend.beJVM Group14.TxInjector.txiJVM1 Group15.Backend.beJVM Group15.TxInjector.txiJVM1 Group16.Backend.beJVM Group16.TxInjector.txiJVM1 Group2.Backend.beJVM Group2.TxInjector.txiJVM1 Group3.Backend.beJVM Group3.TxInjector.txiJVM1 Group4.Backend.beJVM Group4.TxInjector.txiJVM1 Group5.Backend.beJVM Group5.TxInjector.txiJVM1 Group6.Backend.beJVM Group6.TxInjector.txiJVM1 Group7.Backend.beJVM Group7.TxInjector.txiJVM1 Group8.Backend.beJVM Group8.TxInjector.txiJVM1 Group9.Backend.beJVM Group9.TxInjector.txiJVM1
specjbb.comm.connect.client.pool.size 256 128 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256
specjbb.comm.connect.selector.runner.count 0 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
specjbb.comm.connect.timeouts.connect 60000 900000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000
specjbb.comm.connect.timeouts.read 60000 800000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000
specjbb.comm.connect.timeouts.write 60000 800000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000 60000
specjbb.comm.connect.worker.pool.max 256 128 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120 120
specjbb.comm.connect.worker.pool.min 1 32
specjbb.controller.rtcurve.warmup.step 0.1 0.7
specjbb.customerDriver.threads 64 {saturate=96}
specjbb.forkjoin.workers 256 {Tier1=220, Tier2=16, Tier3=32}
specjbb.group.count 1 16
specjbb.mapreducer.pool.size 256 32
specjbb.txi.pergroup.count 1 1
View table in csv format
 
Level: COMPLIANCE
Check Agent Result
Check properties on compliance All PASSED
 
Level: CORRECTNESS
Check Agent Result
Compare SM and HQ Inventory All PASSED
High-bound (max attempted) is 548516 IR
High-bound (settled) is 518703 IR