SPECjAppServer2004 Result: Sun Java (TM) Systems Application Server 9.0 Platform Edition with Postgres 8.2

SPEC Seal of Reviewal SPECjAppServer®2004 Result
Copyright © 2004 Standard Performance Evaluation Corporation
Sun Java (TM) Systems Application Server 9.0 Platform Edition with Postgres 8.2
778.14 SPECjAppServer2004 JOPS@Standard
Submitter:
Sun Microsystems Inc. SPEC license # 6 Test date:
Jun-2007
Software Products
Sun Java (TM) Systems Application Server 9.0 Platform Edition Update Release 1 Patch 3
Jakarta Tomcat 5.5.16
Java (TM) 2 Platform Standard Edition Development Kit 6.0 32-bit
PostgreSQL JDBC TYPE IV 8.2
PostgreSQL 8.2.4 Software Configurations
J2EE Application Servers
Emulator SW Config
Database SW Config
Driver SW Config Hardware Systems
J2EE AppServer HW
Database Server HW
Load Driver HW Primary (Emulator)
Load Satellite HW

System Configuration Diagram Benchmark
Modifications
Configuration
Bill of Materials
Other Info
General Notes
Full Disclosure Archive


SUT Configuration
J2EE Server Nodes: 3 DB Server Nodes: 1
J2EE Server CPUs: 12 cores, 6 chips (2 cores/chip) DB Server CPUs: 8 cores, 1 chips (8 cores/chip)
J2EE Instances: 3 DB Instances: 1
Other SUT Components:
None

Benchmark Settings
Dealer Injection Rate: 475 Ramp Up Time: 600 seconds
# of Dealer Agents: 4 Ramp Down Time: 300 seconds
# of Manufacturing Agents: 8 Steady State Time: 3,600 seconds
DB Load Injection Rate: 500 Trigger Time: 150 seconds

Detailed Results
Dealer Transaction Mix Count Tx. Mix
Purchase 421,634 25.05%
Manage 420,273 24.97%
Browse 841,415 49.99%
Total # Dealer Transactions 1,683,322
Total # Manufacturing Transactions 1,117,975
Response Times Average Maximum 90th% Reqd
Purchase 0.71 59.96 1.20 2.00
Manage 0.55 55.77 0.90 2.00
Browse 0.86 49.52 1.50 2.00
Manufacturing 2.00 13.25 4.00 5.00
Reproducibility Run (SPECjAppServer2004 JOPS) 779.93

Sun Java (TM) Systems Application Server 9.0 Platform Edition Update Release 1 Patch 3
Vendor: Sun Microsystems, Inc. Availability: Apr-2007
CTS Version: CTS EE 5 Date Passed CTS: Apr-2007
OS Name: Solaris 10 11/06 (64-bit)
EJB Protocol: RMI/IIOP

Jakarta Tomcat 5.5.16
Vendor: Apache Software Foundation Availability: Mar-2006

Java (TM) 2 Platform Standard Edition Development Kit 6.0 32-bit
Vendor: Sun Microsystems, Inc. Availability: Dec-2006
OS Name: Solaris 10 11/06 (64-bit)

PostgreSQL JDBC TYPE IV 8.2
Vendor: PostgreSQL Global Development Group Availability: Aug-2007
OS Name: Solaris 10 11/06 (64-bit)

PostgreSQL 8.2.4
Vendor: PostgreSQL Global Development Group Availability: Apr-2007
OS Name: Solaris 10 11/06 (64-bit)

J2EE Application Servers
J2EE Product: Sun Java (TM) Systems Application Server 9.0 Platform Edition Update Release 1 Patch 3
JVM Product: Java (TM) 2 Platform Standard Edition Development Kit 6.0 32-bit
JDBC Product: PostgreSQL JDBC TYPE IV 8.2
Hardware: J2EE AppServer HW
# of Instances: 3
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: -server -XX:NewRatio=2 -XX:+AggressiveHeap -Xms2560m -Xms2560m
-Xss128k -XX:+DisableExplicitGC -XX:ParallelGCThreads=4
-XX:LargePageSizeInBytes=2m -XX:+UseParallelOldGC
-DAllowManagedFieldsInDefaultFetchGroup=true -XX:-UseBiasedLocking
-XX:CompileThreshold=500 -Dcom.sun.enterprise.server.ss.ASQuickStartup=false
JDBC Pool : max-pool-size=250 steady-pool-size=90 statement_cache=true
prepareThreshold=1 ssl=false
HTTP: request-processing threads=12
JMS: ConnectionPool: max-pool-size=250
MDB Container: max-pool-size=32, steady-pool-size=0
Tunings in default-web.xml:
development=false, genStrAsCharArray=true
ORB: (thread-pool-1) max-thread-pool-size=25

Emulator SW Config
JVM Product: Java (TM) 2 Platform Standard Edition Development Kit 6.0 32-bit
Web Product: Jakarta Tomcat 5.5.16
Hardware: Load Driver HW Primary (Emulator)
# of Instances: 1
Notes / Tuning Information
JVM Options: -server -Xmx2048m -Xms2048m -XX:+DisableExplicitGC -Dsun.net.inetaddr.ttl=0 -Dnetworkaddress.cache.ttl=0
Emulator Software Configuration.

Database SW Config
DB Product: PostgreSQL 8.2.4
Hardware: Database Server HW
# of Instances: 1
Notes / Tuning Information
Postgres tuning in postgresql.conf
listen_addresses = *
max_connections = 1000
shared_buffers=3GB
temp_buffers = 1000
max_prepared_transactions = 450
work_mem=100MB
maintenance_work_mem = 512MB
max_fsm_pages = 208000
max_fsm_relations = 10000
vacuum_cost_delay = 50
bgwriter_delay = 200ms
bgwriter_lru_percent=20.0
bgwriter_lru_maxpages=100
bgwriter_all_percent=3
bgwriter_all_maxpages=600
fsync = on
wal_sync_method = fdatasync
full_page_writes = off
wal_buffers = 2300
commit_delay = 10
checkpoint_segments = 256
checkpoint_timeout = 300
checkpoint_warning = 99
enable_seqscan = off
random_page_cost = 1.5
cpu_tuple_cost = 0.001
cpu_index_tuple_cost = 0.0005
cpu_operator_cost = 0.00025
effective_cache_size = 40GB
stats_start_collector = off
default_transaction_isolation = read committed
deadlock_timeout = 1000
Postgres compile flags used GCC for SPARC compilers :-
-fast -O4 -xtarget=ultraT1
Increase Shared Ram for Postgres :-
#projadd -U postgres user.postgres
#projmod -a -K "project.max-sem-ids=(priv,4k,deny)" user.postgres
#projmod -a -K "project.max-shm-memory=(priv,4G,deny)" user.postgres
Postgres was started using libumem :-
LD_PRELOAD=/usr/lib/libumem.so; export LD_PRELOAD
$POSTGRES_HOME/bin/pg_ctl -o -i -D $PGDATA -l /tmp/logfile start
Postgres available from www.postgres.org
Sun GCC for SPARC systems available at http://cooltools.sunsource.net

Driver SW Config
JVM Product: Java (TM) 2 Platform Standard Edition Development Kit 6.0 32-bit
Hardware: Load Driver HW Primary (Emulator)
# of Instances: 2
Notes / Tuning Information
JVM Options: -server -XX:+DisableExplicitGC -Xmx2048m -Xss128k
-Dnetworkaddress.cache.ttl=0 Dsun.net.inetaddr.ttl=0
-Djava.naming.provider.url=iiop://papps:3700
-Djava.naming.provider.url.pkgs=com.sun.enterprise.naming
-Dcom.sun.appserv.iiop.endpoints=papps1:3700,papps2:3700,papps3:3700
-Dorg.omg.CORBA.ORBInitialHost=papps -Dorg.omg.CORBA.ORBInitialPort=3700

J2EE AppServer HW (SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire X4200 M2 OS Name: Solaris 10 11/06 (64-bit)
Processor: AMD Opteron 2220 SE Filesystem: UFS
MHz: 2800 Disks: 2x73Gb 10K RPM
# of CPUs: 4 cores, 2 chips, 2 cores/chip Network Interface: (4) 1000BaseT Ethernet
Memory (MB): 8192 Other Hardware:
L1 Cache: 64KB(I)+16KB(D) per core # of Systems: 3
L2 Cache: 1MB per core H/W Available: Sep-2006
Other Cache: OS Available: Nov-2006
Notes / Tuning Information

Database Server HW (SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire T2000 Server OS Name: Solaris 10 11/06 (64-bit)
Processor: UltraSPARC T1 Filesystem: UFS
MHz: 1200 Disks: 2x73Gb 10K RPM Ultra320 SCSI
# of CPUs: 8 cores, 1 chip, 8 cores/chip (4 threads/core) Network Interface: (4) Onboard 1000BaseT Ethernet
Memory (MB): 16376 Other Hardware: 1 SUN-StorageTEK 2540 (12x146GB 15000 RPM, 2 x raid controller)
L1 Cache: 16KB(I)+8KB(D) per core # of Systems: 1
L2 Cache: 3MB per chip H/W Available: Jan-2007
Other Cache: OS Available: Nov-2006
Notes / Tuning Information
UFS options for /disk1: noatime,forcedirectio,nologging
UFS Options for /log: noatime,forcedirectio,nologging
System Tuning in /etc/system :
set pcie:pcie_aer_ce_mask=0x1
set autoup=900
set tune_t_fsflushr=1
set rlim_fd_max=260000
set rlim_fd_cur=260000
set maxphys=1048576
set ip:ip_squeue_fanout= 1
set ip:ip_squeue_bind = 0
set disable_ism_large_pages = 0x34
Network tuning in /etc/rc3.d/S99network
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

Load Driver HW Primary (Emulator) (non-SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire V40z OS Name: Solaris 10 1/06 (64-bit)
Processor: AMD Opteron 850 Filesystem: UFS
MHz: 2400 Disks: 2 x 36GB
# of CPUs: 4 cores, 4 chips, 1 core/chip Network Interface: (2) Onboard 1000BaseT Ethernet
Memory (MB): 8192 Other Hardware: Netgear 24-port Gigabit Switch Model GS524T
L1 Cache: 64KB(I)+64KB(D) # of Systems: 2
L2 Cache: 1MB H/W Available: Jul-2004
Other Cache: OS Available: Jan-2006
Notes / Tuning Information

Load Satellite HW (non-SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire V40z OS Name: Solaris 10 1/06 (64-bit)
Processor: AMD Opteron 850 Filesystem: UFS
MHz: 2400 Disks: 2 x 36GB
# of CPUs: 4 cores, 4 chips, 1 core/chip Network Interface: (2) Onboard 1000BaseT Ethernet
Memory (MB): 8192 Other Hardware: Netgear 24-port Gigabit Switch Model GS524T
L1 Cache: 64KB(I)+64KB(D) # of Systems: 2
L2 Cache: 1MB H/W Available: Jul-2004
Other Cache: OS Available: Jan-2006
Notes / Tuning Information

Benchmark Modifications
Schema Modifications:
 Scripts to create the DB are included in the FDA.
 fill factor was modified on tables
 
 Added TABLE TXN_LOG_TABLE to support JMS transaction logging to database
 Added primary keys to tables
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)
 were used for the database files and logs maintained
 on the Sun StorageTek 2540 Array.
 The caches in the Array are battery backed (72 hours)
 
 Each application server has a pair of mirrored disks
 (using Sun Fire integrated raid controller utility) to provide
 durability for the JMS messages.
Storage Requirement Info:
 The 85 minute run for this submission required less than 4GB of database storage.
 This extrapolates to less than 70GB for a 24 hour period.
 The Sun StorageTek 2540 Array drive capacity is 876GB of available storage when configured for RAID 1.
Argument Passing Semantics:
 Sun Java Systems Application Server 9.0 Platform Edition uses pass-by-value semantics by default.

Bill of Materials
Supplier Description Product # Qty
-------- ---------------------------------------- ------------------ ---
Sun	 Sun Fire X4200 M2 (2x2220 SE ,2X73GB)	 A87-KPZ22H8GCBA 3
Sun	 Solaris 10 RTU			 		 3
Sun 	 SunSpectrum Upgrade: 3YGOLD, 24x7	 W9D-A65-24-3G	 3
Sun	 Sun Fire T2000, 1x1.2 GHz, 16 GB mem	 T20Z108B-16GA2G 1
Sun 4 Gb Dual FC PCI-X Host Bus Adapter SG-XPCI2FC-QF4 1
Sun 	 SunSpectrum Upgrade: 3YGOLD, 24x7	 W9D-T2000-8-24-3G 	 1
Sun StorageTek 2540, 12 x 146GB, 12*RAID XTA2540R01A2E1752 1
Sun SunSpectum Upgrade: 3Y GOLD, 24x7	 W9D-ST2540-24-3G	 1
Sun 17" Entry Color Monitor X7204A 1
Sun USB Keyboard 320-1271 1
Sun USB Mouse 320-2632 1
Sun Sun Java System Application Server	 
	 Platform Edition 9.0 
Sun Sun Java System Application Server	 SJSAS-PE9F-1PR	 18
	 Platform Edition 9.0 
	 Premium Support per CPU for 1 year
PostgreSQL PostgreSQL 8.2 Database 
EnterpriseDB PostgreSQL support (premium) 3

Other Benchmark Information
 The submission used round-robin DNS for load-balance of
 all HTTP network requests. The DNS server was hosted
 on one of the application servers.
 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 Java System Application Server 9.0 Platform Edition.
 The emulator used xerces implementation 2.7.1 provided with the Jakarta
 Tomcat 5.5.16
 

General Notes
The only errors in the driver log files were those that are normally generated by this benchmark .
The Postgres JDBC driver is a Type 4 JDBC driver
Recoverable 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 transaction log records are
written to the database in a single transaction.
Database checkpoints during the Measurement Interval were done
 every 300 secs as per checkpoint=300 in the postgresql.conf


For questions about this result, please contact the submitter: Sun Microsystems Inc.
For other inquiries, please contact webmaster@spec.org

Copyright © 2004 Standard Performance Evaluation Corporation

First published at SPEC.org on 07-Jul-2007

AltStyle によって変換されたページ (->オリジナル) /