-------------------------------------------------------------------------------- SPECjAppServer(R)2004 Result Copyright (C) 2004 Standard Performance Evaluation Corporation -------------------------------------------------------------------------------- Sun GlassFish Enterprise Server v2.1 on Sun Fire X2270 with MySQL 5.1 on OpenSolaris 2008.11 -------------------------------------------------------------------------------- 2,925.18 SPECjAppServer2004 JOPS@Standard -------------------------------------------------------------------------------- Submitter: Sun Microsystems Inc. SPEC license # 6 Test date: Mar-2009 -------------------------------------------------------------------------------- SUT CONFIGURATION -------------------------------------------------------------------------------- J2EE Server Nodes: 1 DB Server Nodes: 1 J2EE Server CPUs: 8 cores, 2 chips DB Server CPUs: 8 cores, 2 chips J2EE Instances: 4 DB Instances: 1 Other SUT Components: -------------------------------------------------------------------------------- BENCHMARK SETTINGS -------------------------------------------------------------------------------- Dealer Injection Rate: 1,750 Ramp Up Time: 600 sec # of Dealer Agents: 20 Ramp Down Time: 300 sec # of Manufacturing Agents: 8 Steady State Time: 3,600 sec DB Load Injection Rate: 2,000 Trigger Time: 1,200 sec -------------------------------------------------------------------------------- Detailed Results -------------------------------------------------------------------------------- Dealer Transaction Mix Count Tx. Mix Purchase 1,583,695 25.00% Manage 1,582,369 24.98% Browse 3,167,530 50.01% Total # Dealer Transactions 6,333,594 Total # Manufacturing Transactions 4,197,054 Response Times Average Maximum 90th% Reqd Purchase 0.28 9.54 0.70 2.00 Manage 0.20 11.01 0.50 2.00 Browse 0.33 9.18 0.70 2.00 Manufacturing 1.59 14.49 2.50 5.00 Reproducibility Run (SPECjAppServer2004 JOPS) 2,926.40 -------------------------------------------------------------------------------- SOFTWARE PRODUCTS -------------------------------------------------------------------------------- Sun GlassFish Enterprise Server v2.1 Vendor: Sun Microsystems, Inc. Availability Date: Mar-2009 Date Passed CTS: Feb-2007 CTS Version: CTS EE 5 EJB Protocol: RMI/IIOP OS Name: OpenSolaris 2008.11 64-bit -------------------------------------------------------------------------------- Jakarta Tomcat 5.5.23 Vendor: Apache Software Foundation Availability Date: Aug-2007 -------------------------------------------------------------------------------- Java HotSpot(TM) 64-Bit Server VM on Solaris, version 1.6.0_14 Performance Release Vendor: Sun Microsystems, Inc. Availability Date: Jun-2009 OS Name: OpenSolaris 2008.11 64-bit -------------------------------------------------------------------------------- Java HotSpot(TM) 32-Bit Server VM on Solaris, version 1.6.0_06 Performance Release Vendor: Sun Microsystems, Inc. Availability Date: Jul-2008 OS Name: Solaris 10 10/08 64-bit -------------------------------------------------------------------------------- Java HotSpot(TM) 64-Bit Server VM on Solaris, version 1.6.0_06 Performance Release Vendor: Sun Microsystems, Inc. Availability Date: Jul-2008 OS Name: Solaris 10 10/08 64-bit -------------------------------------------------------------------------------- Connector/J 5.1.5 Vendor: Sun Microsystems, Inc Availability Date: Oct-2007 OS Name: OpenSolaris 2008.11 64-bit -------------------------------------------------------------------------------- MySQL 5.1.30 64-bit Vendor: Sun Microsystems, Inc. Availability Date: Dec-2008 OS Name: OpenSolaris 2008.11 64-bit -------------------------------------------------------------------------------- SOFTWARE CONFIGURATIONS -------------------------------------------------------------------------------- J2EE Application Server J2EE Product: Sun GlassFish Enterprise Server v2.1 JVM Product: Java HotSpot(TM) 64-Bit Server VM on Solaris, version 1.6.0_14 Performance Release JDBC Product: Connector/J 5.1.5 Hardware: J2EE AppServer HW # of Instances: 4 Interfaces: Web Interface for the Dealer Domain Web Interface for the Supplier Domain EJB Interface for the Dealer Domain EJB Interface for the Manufacturing Domain EJB Interface for the Supplier Domain Notes / Tuning Information Tunings in domain.xml: JVM Options: -d64 -server -XX:MaxPermSize=192 -XX:+AggressiveHeap -XX:+AggressiveOpts -Xms3g -Xms3g -Xmn1536m -Xss256k -XX:+UseCompressedOops -XX:+DisableExplicitGC -XX:ParallelGCThreads=8 -XX:LargePageSizeInBytes=2m -XX:+UseParallelOldGC -XX:-UseBiasedLocking -XX:+PerfDataSaveToFile -XX:CompileThreshold=500 JDBC Pool (for EJBs): max-pool-size=150 steady-pool-size=150 cachePrepStmts=true prepStmtCacheSize=512 alwaysSendSetIsolation=false useLocalSessionState=true useServerPreparedStmts=false useReadAheadInput=false elideSetAutoCommits=true useUsageAdvisor=false useReadAheadInput=false useUnbufferedInput=false cacheServerConfiguration=true General Tunings: All Glassfish instances run in the FX class via the priocntl command -------------------------------------------------------------------------------- Emulator SW Config JVM Product: Java HotSpot(TM) 64-Bit Server VM on Solaris, version 1.6.0_06 Performance Release Web Product: Jakarta Tomcat 5.5.23 Hardware: Emulator # of Instances: 1 Notes / Tuning Information JVM Options: -d64 -server -Xms20g -Xmx20g -Xmn2g -Xss256k -XX:+UseConcMarkSweepGC -XX:LargePageSizeInBytes=4m -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:-TraceClassUnloading -XX:PermSize=96m -Dsun.net.inetaddr.ttl=0 -Dnetworkaddress.cache.ttl=0 server.xml: maxThreads=1000 -------------------------------------------------------------------------------- Database SW Config DB Product: MySQL 5.1.30 64-bit Hardware: Database Server HW # of Instances: 1 Notes / Tuning Information MySQL 5.1 Tuning in /etc/my.cnf (included in FDA) [mysqld] sql-mode = IGNORE_SPACE transaction-isolation = READ-COMMITTED max_allowed_packet = 2M max_connections=1000 max_connect_errors=100 table_cache = 6000 read_rnd_buffer_size = 2M sort_buffer_size = 32k thread_cache = 16 query_cache_size = 0M thread_concurrency = 32 max_heap_table_size=200M innodb_data_home_dir = /Data/mysql/var innodb_data_file_path = ibdata1:10000M:autoextend innodb_file_per_table innodb_log_group_home_dir = /Logs/mysql/var/ innodb_checksums = 0 innodb_doublewrite = 0 innodb_buffer_pool_size = 5000m innodb_additional_mem_pool_size = 20M innodb_log_file_size = 1600M innodb_log_buffer_size = 16M innodb_flush_log_at_trx_commit = 1 innodb_lock_wait_timeout = 300 innodb_thread_concurrency = 0 innodb_sync_spin_loops = 40 innodb_locks_unsafe_for_binlog = 1 innodb_max_dirty_pages_pct=15 innodb_support_xa=0 MySQL 5.1 run in the FX class via the priocntl command -------------------------------------------------------------------------------- Driver SW Config - Primary & Satellites JVM Product: Java HotSpot(TM) 32-Bit Server VM on Solaris, version 1.6.0_06 Performance Release Hardware: Load Driver & Satellite # of Instances: 2 Notes / Tuning Information JVM Options: -server -XX:LargePageSizeInBytes=2m -XX:+AggressiveOpt -XX:+DisableExplicitGC -Xmx2048m -Xss128k -Dnetworkaddress.cache.ttl=0 Dsun.net.inetaddr.ttl=0 -Djava.naming.provider.url=iiop://apps:3700 -Djava.naming.provider.url.pkgs=com.sun.enterprise.naming -Dcom.sun.appserv.iiop.endpoints=appzone1:${IIOP_PORT},appzone2:${IIOP_PORT},appzone3:${IIOP_PORT},appzone4:${IIOP_PORT} -Dorg.omg.CORBA.ORBInitialHost=apps -Dorg.omg.CORBA.ORBInitialPort=3700 -Djava.util.logging.config.file=${JAS_HOME}/logging.properties -------------------------------------------------------------------------------- HARDWARE SYSTEMS -------------------------------------------------------------------------------- J2EE AppServer HW (SUT hardware) Hardware Vendor: Sun Microsystems, Inc. Model Name: Sun Fire X2270 Processor: Intel Xeon X5570 (Intel Turbo Boost Technology up to 3.20 GHz) MHz: 2930 # of CPUs: 8 cores, 2 chips, 4 cores/chip, 2 threads/core Memory (MB): 24576 L1 Cache: 32KB(I)+32KB(D) on chip per core L2 Cache: 256 KB I+D on chip per core Other Cache: 8 MB I+D L3 on chip per chip OS Vendor: Sun Microsystems, Inc. OS Name: OpenSolaris 2008.11 64-bit Disks: 4x 500GB SATA disks Network Interface: 2x onboard 1 Gbit NICs, 1x dual port 10Gbit NIC Other Hardware: # of Systems: 1 H/W Available: Apr-2009 O/S Available: Nov-2008 Notes / Tuning Information System Tuning in /etc/system: set ddi_msix_alloc_limit=8 set pcplusmp:apic_multi_msi_max=8 set pcplusmp:apic_msix_max=8 set pcplusmp:apic_intr_policy=1 Network Tuning: ndd -set /dev/tcp tcp_conn_req_max_q 16384 ndd -set /dev/tcp tcp_conn_req_max_q0 16384 ndd -set /dev/tcp tcp_xmit_hiwat 524288 ndd -set /dev/tcp tcp_recv_hiwat 524288 ndd -set /dev/tcp tcp_naglim_def 1 Configuration notes: 2x disks for OS and Solaris Containers. 2x disks appserver logs and JMS persistence filestore. Four application server instances were hosted in 4 separate Solaris Containers. Two Containers were bound to a processor set consisting of 4 cores (1 chip) using the psrset command. The other 2 containers used the default processor set. Each Container on the system was connected to 2 subnets. The first subnet in each container was used for driver access and connected to the 10 Gbit switch. Two containers shared one 10Gbit NIC for this subnet The second subnet in each container was used for database access where 2 containers shared a 1GBit NIC for this subnet. -------------------------------------------------------------------------------- Database Server HW (SUT hardware) Hardware Vendor: Sun Microsystems, Inc. Model Name: Sun Fire X4170 Processor: Intel Xeon X5570 (Intel Turbo Boost Technology up to 3.20 GHz) MHz: 2930 # of CPUs: 8 cores, 2 chips, 4 cores/chip, 2 threads/core Memory (MB): 49152 L1 Cache: 32KB(I)+32KB(D) on chip per core L2 Cache: 256 KB I+D on chip per core Other Cache: 8 MB I+D L3 on chip per chip OS Vendor: Sun Microsystems, Inc. OS Name: OpenSolaris 2008.11 64-bit Disks: 1x146Gb 10K RPM SAS, 1x Sun StorageTek 2540 Network Interface: 2x onboard 1 Gbit NICs, 1x dual port 10Gbit NIC Other Hardware: 1x 4Gb Dual Port PCI-E Fiber Channel card # of Systems: 1 H/W Available: Apr-2009 O/S Available: Nov-2008 Notes / Tuning Information System Tuning in /etc/system: set ddi_msix_alloc_limit=8 set pcplusmp:apic_multi_msi_max=8 set pcplusmp:apic_msix_max=8 set pcplusmp:apic_intr_policy=1 Network Tuning: ndd -set /dev/tcp tcp_conn_req_max_q 16384 ndd -set /dev/tcp tcp_conn_req_max_q0 16384 ndd -set /dev/tcp tcp_xmit_hiwat 131072 ndd -set /dev/tcp tcp_recv_hiwat 131072 ndd -set /dev/tcp tcp_naglim_def 1 One processor set configured with 4 HW threads executing netork interrupt threads. -------------------------------------------------------------------------------- Load Driver & Satellite (non-SUT hardware) Hardware Vendor: Sun Microsystems, Inc. Model Name: Sun SPARC Enterprise M5000 Processor: SPARC64 VI MHz: 2150 # of CPUs: 16 cores, 8 chips, 2 cores/chip, 2 threads/core Memory (MB): 121072 L1 Cache: 128KB(I)+128KB(D) per core L2 Cache: 5MB per chip Other Cache: OS Vendor: Sun Microsystems, Inc. OS Name: Solaris 10 10/08 64-bit Disks: 2 x 73GB Ultra320 SCSI disks Network Interface: 2x Dual Port 10 GbE card Other Hardware: # of Systems: 2 H/W Available: Apr-2007 O/S Available: Oct-2008 Notes / Tuning Information System Tuning in /etc/system: set ip:ip_soft_rings_cnt = 8 Network Tuning: ndd -set /dev/tcp tcp_conn_req_max_q 16384 ndd -set /dev/tcp tcp_conn_req_max_q0 16384 ndd -set /dev/tcp tcp_xmit_hiwat 131072 ndd -set /dev/tcp tcp_recv_hiwat 131072 ndd -set /dev/tcp tcp_naglim_def 1 -------------------------------------------------------------------------------- Emulator (non-SUT hardware) Hardware Vendor: Sun Microsystems, Inc. Model Name: Sun SPARC Enterprise M4000 Processor: SPARC64 VI MHz: 2150 # of CPUs: 8 cores, 4 chips, 2 cores/chip Memory (MB): 65536 L1 Cache: 128KB(I)+128KB(D) per core L2 Cache: 5MB per chip Other Cache: OS Vendor: Sun Microsystems, Inc. OS Name: Solaris 10 10/08 64-bit Disks: 2 x 73GB Ultra320 SCSI disks Network Interface: 1x Dual Port 10Gbit NIC Other Hardware: # of Systems: 1 H/W Available: Apr-2007 O/S Available: Oct-2008 Notes / Tuning Information System Tuning in /etc/system: set ip:ip_soft_rings_cnt = 8 Network Tuning: ndd -set /dev/tcp tcp_conn_req_max_q 16384 ndd -set /dev/tcp tcp_conn_req_max_q0 16384 ndd -set /dev/tcp tcp_xmit_hiwat 131072 ndd -set /dev/tcp tcp_recv_hiwat 131072 ndd -set /dev/tcp tcp_naglim_def 1 -------------------------------------------------------------------------------- BENCHMARK MODIFICATIONS -------------------------------------------------------------------------------- Schema Modifications: Scripts to create the DB are included in the FDA. Extra indexes were created CREATE UNIQUE INDEX M_lo_idx ON M_largeorder (lo_id) CREATE UNIQUE INDEX M_OL_O_idx ON M_largeorder (lo_o_id, lo_ol_id) CREATE INDEX C_custci_idx ON C_customerinventory(ci_customerid); CREATE INDEX O_status_idx ON O_orders (o_status); CREATE INDEX O_oc_os_idx ON O_orders (o_c_id, o_status); Added TABLE TXN_LOG_TABLE to support JMS transaction logging to database Created the primary indexes via the MySQL primary key syntax -------------------------------------------------------------------------------- Load Program Modifications: The load program was not modified BENCHMARK CONFIGURATION INFORMATION -------------------------------------------------------------------------------- Isolation Requirement Info: BEAN SPEC_REQUIREMENT Deployment Corp.CustomerEnt Repeatable Read Sel-4-Upd Corp.CustomerInventoryEnt Repeatable Read Sel-4-Upd Mfg.InventoryEnt Repeatable Read Sel-4-Upd Mfg.WorkOrderEnt Repeatable Read Sel-4-Upd Orders.OrderEnt Repeatable Read Sel-4-Upd Orders.OrderLineEnt Repeatable Read Sel-4-Upd Supplier.POEnt Repeatable Read Sel-4-Upd Supplier.POLineEnt Repeatable Read Sel-4-Upd Supplier.SComponentEnt Repeatable Read Sel-4-Upd Util.SequenceEnt Repeatable Read Sel-4-Upd Mfg.AssemblyEnt Read Committed RC Mfg.BomEnt Read Committed RC Mfg.ComponentEnt Read Committed RC Mfg.LargeOrderEnt Read Committed RC Mfg.PartEnt Read Committed RC Orders.ItemEnt Read Committed RC Supplier.SupplierCompEnt Read Committed RC Supplier.SupplierEnt Read Committed RC The ItemEnt bean was cached for 20 minute intervals by setting is-read-only-bean=true and refresh-period-in-seconds=1200 in the sun-orders.xml deployment descriptor. Only the data inside the bean was cached. -------------------------------------------------------------------------------- Durability Requirement Info: To ensure database durability, RAID 1 (mirror disks) was used for the database files and logs on the Storage Tek 2540 array. Each application server has a pair of disks to create a ZFS mirrored filesystem for the JMS logs to ensure durability for the JMS messages. -------------------------------------------------------------------------------- Storage Requirement Info: A 75 minute run at an injection rate of 1750 increased storage by 6374 MB This extrapolates to 122 GB storage for a 24 hour run. The database was configured with 1752 GB of storage. -------------------------------------------------------------------------------- Argument Passing Semantics: Sun GlassFish Enterprise Server v2.1 uses pass-by-value semantics by default. BILL OF MATERIALS -------------------------------------------------------------------------------- Supplier Description Product No. Qty -------- ------------------------------------------ ------------------ --- Sun Sun Fire X2270 Base X2270-H1-AA 1 Sun Intel Xeon Quad-Core X5570 - 2.93 GHz X8334A 2 Sun 4GB DDR3 Memory Kit - 1333 MHz X8338A 6 Sun 500GB 3.5-inch SATA Drive XRA-ST1CR-500G7K 3 Sun Sun Dual 10GbE XFP SR PCI-Express card X1107A-Z 1 Sun ILOM Server Processor Module X8340A 1 Sun In-Warranty Upgrade: 3YGOLD, 24x7 IWU-X2270-24-3G 1 Sun Sun Fire X4170 Base X4170-S1-AA 1 Sun Intel Xeon Quad-Core X5570 - 2.93 GHz X5861A 2 Sun CPU Heatsink for Sun Fire X4170 Server 5898A 2 Sun 4GB DDR3 Memory Kit - 1066 MHz 5867A 12 Sun 146GB/15K 2.5-inch SAS Drive RA-SS2CF-146G15K 1 Sun Sun Dual 10GbE XFP SR PCI-Express card X1107A-Z 1 Sun 4 Gb PCI-E Dual Port FC/AL card SG-XPCIE2FC-EM4 1 Sun 750W power supply 6333A 1 Sun In-Warranty Upgrade: 3YGOLD, 24x7 IWU-X4170-24-3G 1 Sun Sun StorageTek 2540, 12 x 146GB, 2 RAID XTA2540R01D2E1752 1 Sun SunSpectum Upgrade: 3Y GOLD, 24x7 IWU-ST2540NW-24-3G 1 Sun 17" Entry Color Monitor X7204A 1 Sun XVR-300 Graphics Accelerator X3000A 1 Sun USB Keyboard & Mouse 320-1366 1 Sun Sun GlassFish Enterprise Server V2.1 1 Sun MySQL Connector/J 5.1.5 1 Sun Sun GlassFish Enterprise Server V2.1 Inc Premium Support per CPU for 1 year ASE29-00P-B929 3 Sun MySQL Database 5.1 1 Sun MySQL Enterprise Gold Support 3 for 1 year -------------------------------------------------------------------------------- OTHER BENCHMARK INFORMATION -------------------------------------------------------------------------------- The submission used round-robin DNS for load-balance of all HTTP network requests. The DNS server was hosted on the database server. The submission used multiple endpoints to establish connections to the EJB tier using RMI/IIOP. This submission used the xerces implementation 2.6.2 provided with the Sun GlassFish Enterprise Server v2.1 -------------------------------------------------------------------------------- General Notes -------------------------------------------------------------------------------- The only errors in the driver log files were those that are normally generated by this benchmark. The MySQL Connector/J JDBC Driver is a type 4 driver. XA 2-phase transactions were used to coordinate the interaction between the database server and JMS server using Sun's Last Agent Logging Optimization; the 1PC database transactions and XA logs are written to the database in a single transaction. Database checkpoints during the Measurement Interval were done by using continuous (fuzzy) checkpoints, where MySQL database engine InnoDB flushes modified database pages from the buffer pool in batches. 10 GbE Switch Details: 1x Foundry EdgeIron 8-port 10GbE Switch - Product No. EIF8X10G 8x 10GbE XFP Transceivers - Product No. 10G-XFP-SR -------------------------------------------------------------------------------- For questions about this result, please contact the submitter: Sun Microsystems Inc. For other inquiries, please contact SPEC - Benchmark run on Mon Mar 23 09:52:59 EDT 2009 by SPECjAppServer2004 v1.08 - Result submitted on Wed Mar 25 03:33:29 EDT 2009 - Report generated by SPECjAppServer2004 Reporter v1.03 Copyright (C) 2004 Standard Performance Evaluation Corporation