Supermicro Hyper A+ Server AS -2125HS-TNR 592109 SPECjbb2015-MultiJVM max-jOPS
255136 SPECjbb2015-MultiJVM critical-jOPS
Tested by: Supermicro Test Sponsor: Supermicro Test location: San Jose, California Test date: October 07, 2024
SPEC license #: 001176 Hardware Availability: Nov-2022 Software Availability: Aug-2024 Publication: Thu Nov 7 15:30:46 EST 2024
Benchmark Results Summary
 
Overall Throughput RT curve
Overall SUT (System Under Test) Description
VendorSupermicro
Vendor URLhttps://www.supermicro.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)1536
Total OS Images1
SW EnvironmentNon-virtual
 
Hardware hw_1
NameHyper A+ Server AS -2125HS-TNR
VendorSupermicro
Vendor URLhttps://www.supermicro.com
AvailableNov-2022
ModelH13DSH
Form Factor2U
CPU NameAMD EPYC 9554
CPU Characteristics64 core, 3.1GHz, 256MB L3 Cache (Max. Boost Clock up to 3.75GHz)
Number of Systems1
Nodes Per System1
Chips Per System2
Cores Per System128
Cores Per Chip64
Threads Per System256
Threads Per Core2
Version1.9a 06/21/2024
CPU Frequency (MHz)3100
Primary Cache32KB(I)+32KB(D) per core
Secondary Cache1MB (I+D) per core
Tertiary Cache256MB (I+D) on chip per chip
Other CacheNone
Disk1 x 480 GB NVMe PCIe Gen4.0
File Systembtrfs
Memory Amount (GB)1536
# and size of DIMM(s)24 x 64GB
Memory Details64GB 2Rx4 PC5-38400R
# and type of Network Interface Cards (NICs)1 x 1 GbE NIC
Power Supply Quantity and Rating (W)1 x 1600w
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 SP6
VendorSUSE
Vendor URLhttp://suse.com/
Version6.4.0-150600.23.17-default
AvailableAug-2024
Bitness64
NotesNone
Java Virtual Machine jvm_1
NameOracle Java SE 22.0.2
VendorOracle
Vendor URLhttp://oracle.com/
VersionJava HotSpot 64-bit Server VM, version 22.0.2
AvailableJul-2024
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

BIOS Settings:

  • NUMA nodes per socket = NPS4
  • L1 Stream HW Prefetcher = Disable
  • L2 Stream HW Prefetcher = Disable
  • Determinism Control = Manual
  • Determinism Enable = Power
  • TDP Control = Manual
  • TDP = 400
  • Package Power Limit Control = Manual
  • Package Power Limit = 400

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

  • cpupower -c all frequency-set -g performance
  • tuned-adm profile throughput-performance
  • ulimit -n 1024000

  • echo 960000 > /proc/sys/kernel/sched_rt_runtime_us
  • echo 800000000 > /proc/sys/kernel/sched_latency_ns
  • echo 40000 > /proc/sys/kernel/sched_migration_cost_ns
  • echo 410000000 > /proc/sys/kernel/sched_min_granularity_ns
  • echo 2000000 > /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 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

Notes None
JVM Instance jvm_Ctr_1
Parts of Benchmark Controller
JVM Instance Description jvm_1
Command Line

-Xms3g -Xmx3g -Xmn2g -XX:+UseParallelGC -XX:ParallelGCThreads=1 -XX:CICompilerCount=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 -Xmn29g -XX:AllocatePrefetchInstr=2 -XX:+UseParallelGC -XX:ParallelGCThreads=16 -XX:LargePageSizeInBytes=2m -XX:-UseAdaptiveSizePolicy -XX:+AlwaysPreTouch -XX:+UseLargePages -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=95 -XX:MaxTenuringThreshold=15 -XX:InlineSmallCode=11k -XX:MaxGCPauseMillis=100 -XX:LoopUnrollLimit=200 -XX:+UseTransparentHugePages -XX:TLABAllocationWeight=2 -XX:ThreadStackSize=140 -XX:CompileThresholdScaling=120 -XX:CICompilerCount=4 -XX:AutoBoxCacheMax=32 -XX:OnStackReplacePercentage=100 -XX:TLABSize=1m -XX:MinTLABSize=1m -XX:-ResizeTLAB -XX:TLABWasteTargetPercent=1 -XX:TLABWasteIncrement=1 -XX:YoungPLABSize=1m -XX:OldPLABSize=1m

Tuning

Used numactl to affinitize each Backend JVM to 8 Core / 16 Threads

  • Group1: --physcpubind=0-7,128-135 --localalloc
  • Group2: --physcpubind=8-15,136-143 --localalloc
  • Group3: --physcpubind=16-23,144-151 --localalloc
  • Group4: --physcpubind=24-31,152-159 --localalloc
  • Group5: --physcpubind=32-39,160-167 --localalloc
  • Group6: --physcpubind=40-47,168-175 --localalloc
  • Group7: --physcpubind=48-55,176-183 --localalloc
  • Group8: --physcpubind=56-63,184-191 --localalloc
  • Group9: --physcpubind=64-71,192-199 --localalloc
  • Group10: --physcpubind=72-79,200-207 --localalloc
  • Group11: --physcpubind=80-87,208-215 --localalloc
  • Group12: --physcpubind=88-95,216-223 --localalloc
  • Group13: --physcpubind=96-103,224-231 --localalloc
  • Group14: --physcpubind=104-111,232-239 --localalloc
  • Group15: --physcpubind=112-119,240-247 --localalloc
  • Group16: --physcpubind=120-127,248-255 --localalloc

Notes None
JVM Instance jvm_TxInjector_1
Parts of Benchmark TxInjector
JVM Instance Description jvm_1
Command Line

-Xms3g -Xmx3g -Xmn2g -XX:+UseParallelGC -XX:ParallelGCThreads=1 -XX:CICompilerCount=2

Tuning

Used numactl to affinitize each Transaction Injector JVM to 8 Core/16 Threads

  • Group1: --physcpubind=0-7,128-135 --localalloc
  • Group2: --physcpubind=8-15,136-143 --localalloc
  • Group3: --physcpubind=16-23,144-151 --localalloc
  • Group4: --physcpubind=24-31,152-159 --localalloc
  • Group5: --physcpubind=32-39,160-167 --localalloc
  • Group6: --physcpubind=40-47,168-175 --localalloc
  • Group7: --physcpubind=48-55,176-183 --localalloc
  • Group8: --physcpubind=56-63,184-191 --localalloc
  • Group9: --physcpubind=64-71,192-199 --localalloc
  • Group10: --physcpubind=72-79,200-207 --localalloc
  • Group11: --physcpubind=80-87,208-215 --localalloc
  • Group12: --physcpubind=88-95,216-223 --localalloc
  • Group13: --physcpubind=96-103,224-231 --localalloc
  • Group14: --physcpubind=104-111,232-239 --localalloc
  • Group15: --physcpubind=112-119,240-247 --localalloc
  • Group16: --physcpubind=120-127,248-255 --localalloc

Notes None
max-jOPS = jOPS passed before the First Failure
Pass/Fail Pass Pass Pass Fail Fail
jOPS 578951 585530 592109 598688 605267
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 152961 206142 278710 325190 378291 255136
  Percentile
  10-th 50-th 90-th 95-th 99-th 100-th
500us 6579 / 13158 6579 / 13158 - / 6579 - / 6579 - / 6579 - / 6579
1000us 65790 / 72369 19737 / 26316 13158 / 19737 6579 / 13158 6579 / 13158 - / 6579
5000us 447371 / 453950 157896 / 164475 98685 / 105264 92106 / 98685 78948 / 85527 6579 / 13158
10000us 467108 / 473687 414476 / 421055 282897 / 289476 210528 / 217107 157896 / 138159 19737 / 13158
25000us 473687 / 480266 453950 / 460529 388160 / 394739 348686 / 355265 223686 / 171054 19737 / 13158
50000us 480266 / 486845 467108 / 473687 414476 / 421055 388160 / 381581 302634 / 236844 19737 / 13158
75000us 486845 / 493424 473687 / 480266 434213 / 440792 414476 / 407897 361844 / 276318 19737 / 13158
100000us 493424 / 500003 480266 / 486845 447371 / 453950 434213 / 440792 401318 / 355265 111843 / 13158
200000us 526319 / 532898 493424 / 500003 480266 / 486845 473687 / 480266 467108 / 407897 282897 / 98685
500000us 592109 / - 559214 / 565793 526319 / 532898 513161 / 519740 506582 / 513161 434213 / 98685
1000000us 592109 / - 592109 / - 578951 / 585530 578951 / 585530 565793 / 572372 480266 / 440792
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 150 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170 256 170
specjbb.comm.connect.selector.runner.count 0 10 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5 20 5
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 150 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200 256 200
specjbb.comm.connect.worker.pool.min 1 16 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32
specjbb.controller.maxir.maxFailedPoints 3 1
specjbb.customerDriver.threads 64 {probe=120, saturate=120, service=70}
specjbb.forkjoin.workers 256 {Tier1=350, Tier2=20, Tier3=40}
specjbb.group.count 1 16
specjbb.mapreducer.pool.size 256 10
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 657899 IR
High-bound (settled) is 622124 IR