SPEC Seal of Reviewal SPECjAppServer®2004 Result
Copyright © 2004 Standard Performance Evaluation Corporation
Oracle Application Server 10g Release 10.1.3.2 - Java Edition on Sun Fire T2000
733.22 SPECjAppServer2004 JOPS@Standard
Submitter:
Oracle Corporation
SPEC license # 73 Test date:
Jan-2007
Software Products
Oracle Application Server 10g Release 10.1.3.2 - Java Edition
Java HotSpot(TM) Server VM (build 1.5.0_06-b05) 32 bit
Java HotSpot(TM) Server VM (build 1.5.0_10) 32 bit
Oracle JDBC Driver 10.2.0.2 (Thin)
Oracle Database Enterprise Edition Release 10.2.0.2
Software Configurations
J2EE Application Server
Emulator SW Config
Database SW Config
Driver SW Config #1-#3
Driver SW Config #4-#6
Driver SW Config #7-#8
Hardware Systems
J2EE AppServer HW
Database Server HW
Load Driver and Emulator HW #1-#3
Load Driver HW #4-#6
Load Driver HW #7-#8

System Configuration Diagram

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

SUT Configuration
J2EE Server Nodes: 1   DB Server Nodes: 1
J2EE Server CPUs: 8 cores, 1 chip   DB Server CPUs: 8 cores, 1 chip
J2EE Instances: 1   DB Instances: 1
Other SUT Components:
   Sun SE3510 Array (12x 146GB 15K RPM FC Disk Array) HBA QLogic QLA2342-SUN PCI/PCI-X
   Netgear GS524T 24 port 10/100/1000 Switch

Benchmark Settings
Dealer Injection Rate: 440   Ramp Up Time: 900 seconds
# of Dealer Agents: 32   Ramp Down Time: 300 seconds
# of Manufacturing Agents: 8   Steady State Time: 3,600 seconds
DB Load Injection Rate: 500   Trigger Time: 260 seconds

Detailed Results
Dealer Transaction Mix Count Tx. Mix
Purchase 396,042 24.99%
Manage 396,431 25.01%
Browse 792,519 50.00%
Total # Dealer Transactions 1,584,992
Total # Manufacturing Transactions 1,054,590
Response Times Average Maximum 90th% Reqd
Purchase 0.62 12.91 1.50 2.00
Manage 0.39 12.65 0.90 2.00
Browse 0.81 18.07 2.00 2.00
Manufacturing 2.03 8.16 2.75 5.00
Reproducibility Run (SPECjAppServer2004 JOPS) 733.99

Oracle Application Server 10g Release 10.1.3.2 - Java Edition
Vendor: Oracle Corporation Availability: Mar-2007
CTS Version: 1.4 Date Passed CTS: Jan-2006
OS Name: Solaris 10 11/06 64-bit
EJB Protocol: ORMI

Java HotSpot(TM) Server VM (build 1.5.0_06-b05) 32 bit
Vendor: Sun Microsystems, Inc. Availability: Jan-2006
OS Name: Solaris 10 1/06 64-bit

Java HotSpot(TM) Server VM (build 1.5.0_10) 32 bit
Vendor: Sun Microsystems, Inc. Availability: Nov-2006
OS Name: Solaris 10 11/06 64-bit

Oracle JDBC Driver 10.2.0.2 (Thin)
Vendor: Oracle Corporation Availability: Mar-2006
OS Name: Solaris 10 11/06 64-bit

Oracle Database Enterprise Edition Release 10.2.0.2
Vendor: Oracle Corporation Availability: Mar-2006
OS Name: Solaris 10 6/06 64-bit

J2EE Application Server
J2EE Product: Oracle Application Server 10g Release 10.1.3.2 - Java Edition
JVM Product: Java HotSpot(TM) Server VM (build 1.5.0_10) 32 bit
JDBC Product: Oracle JDBC Driver 10.2.0.2 (Thin)
Hardware: J2EE AppServer HW
# of Instances: 1
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
/usr/bin/priocntl -e -c FX java -server
-Xms3400M -Xmx3400M -Xmn2000m -Xss128k
 -XX:+UseLargePages -XX:LargePageSizeInBytes=4m -XX:+AggressiveHeap
-XX:+UseParallelGC -XX:ParallelGCThreads=32 -verbose:gc -XX:+PrintGCDetails
-XX:+PrintGCTimeStamps -XX:-TraceClassUnloading -XX:+UseParallelOldGC
-Doracle.dms.sensors=none  -Dsun.net.inetaddr.ttl=0
-Dnetworkaddress.cache.ttl=0
-Doc4j.jms.implementation=oc4j.j2ee.jms
Java process started in FX class using /usr/bin/priocntl -e -c FX

Emulator SW Config
JVM Product: Java HotSpot(TM) Server VM (build 1.5.0_06-b05) 32 bit
Web Product: Oracle Application Server 10g Release 10.1.3.2 - Java Edition
Hardware: Load Driver and Emulator HW #1-#3
# of Instances: 1
Notes / Tuning Information
/usr/bin/priocntl -e -c FX java -server
-Xms3g -Xmx3g -Xmn800m -Xss64k -XX:+AggressiveHeap -XX:+UseParallelGC
-XX:ParallelGCThreads=4 -XX:LargePageSizeInBytes=4m -XX:MaxTenuringThreshold=3
-XX:SurvivorRatio=20 -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps
-XX:-TraceClassUnloading -XX:+UseParallelOldGC -Dsun.net.inetaddr.ttl=0
-Dnetworkaddress.cache.ttl=0
Java process started in FX class using /usr/bin/priocntl -e -c FX

Database SW Config
DB Product: Oracle Database Enterprise Edition Release 10.2.0.2
Hardware: Database Server HW
# of Instances: 1
Notes / Tuning Information
db_name=specdb
control_files           = /spec_db/cntrlspecdb
compatible=10.1.0.2.0
cursor_space_for_time = TRUE
db_cache_size = 14000M
undo_tablespace               = undo_ts
db_cache_advice = off
db_8k_cache_size = 3500M
db_4k_cache_size = 5000M
db_block_size = 2048
db_keep_cache_size = 2048M
db_files = 256
dml_locks = 600
_array_update_vector_read_enabled = TRUE
_check_block_after_checksum   = FALSE
_collect_undo_stats           = FALSE
_cursor_cache_frame_bind_memory = TRUE
_db_cache_pre_warm            = FALSE
_lgwr_async_io                = FALSE
_smm_advice_enabled           = FALSE
_undo_autotune                = FALSE
aq_tm_processes               = 0
db_block_checksum             = FALSE
db_files                      = 256
db_writer_processes           = 8
disk_asynch_io                = TRUE
fast_start_mttr_target        = 0
filesystemio_options          = asynch
log_buffer                    = 4194304
log_checkpoint_interval       = 0
log_checkpoints_to_alert      = TRUE
open_cursors                  = 2000
processes                     = 1500
replication_dependency_tracking = FALSE
sessions                      = 1500
shared_pool_size              = 1400m
timed_statistics              = true
statistics_level              = TYPICAL
trace_enabled                 = FALSE
transactions                  = 1500
transactions_per_rollback_segment = 1
undo_management               = AUTO
undo_retention                = 300

Driver SW Config #1-#3
JVM Product: Java HotSpot(TM) Server VM (build 1.5.0_06-b05) 32 bit
Hardware: Load Driver and Emulator HW #1-#3
# of Instances: 3
Notes / Tuning Information
java -server -XX:+AggressiveHeap -XX:+UseParallelGC
-XX:LargePageSizeInBytes=4m -XX:-TraceClassUnloading -Xms2g -Xmx2g
-Xmn600m -XX:+DisableExplicitGC -Xbatch -Xss128k -Dnetworkaddress.cache.ttl=0
-Dsun.net.inetaddr.ttl=0

Driver SW Config #4-#6
JVM Product: Java HotSpot(TM) Server VM (build 1.5.0_06-b05) 32 bit
Hardware: Load Driver HW #4-#6
# of Instances: 3
Notes / Tuning Information
java -server -XX:+AggressiveHeap -XX:+UseParallelGC
-XX:LargePageSizeInBytes=4m -XX:-TraceClassUnloading -Xms2g -Xmx2g
-Xmn600m -XX:+DisableExplicitGC -Xbatch -Xss128k -Dnetworkaddress.cache.ttl=0
-Dsun.net.inetaddr.ttl=0

Driver SW Config #7-#8
JVM Product: Java HotSpot(TM) Server VM (build 1.5.0_06-b05) 32 bit
Hardware: Load Driver HW #7-#8
# of Instances: 2
Notes / Tuning Information
java -server -XX:+AggressiveHeap -XX:+UseParallelGC
-XX:LargePageSizeInBytes=4m -XX:-TraceClassUnloading -Xms2g -Xmx2g
-Xmn600m -XX:+DisableExplicitGC -Xbatch -Xss128k -Dnetworkaddress.cache.ttl=0
-Dsun.net.inetaddr.ttl=0

J2EE AppServer HW (SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire T2000 OS Name: Solaris 10 11/06 64-bit
Processor: Sun UltraSPARC T1 Filesystem: UFS
MHz: 1200 Disks: 4x73Gb 10K RPM SAS
# of CPUs: 8 cores, 1 chip, 8 cores/chip (4 threads/core) Network Interface: (4) 1000BaseT Ethernet
Memory (MB): 32768 Other Hardware:
L1 Cache: 16KB(I)+8KB(D) per core # of Systems: 1
L2 Cache: 3MB per chip H/W Available: Nov-2005
Other Cache: OS Available: Nov-2006
Notes / Tuning Information
System Tuning in /etc/system:
set ipge:ipge_tx_ring_size=8192
set ipge:ipge_srv_fifo_depth=16000
set ipge:ipge_reclaim_pending=64
set ipge:ipge_bcopy_thresh=1520
set ip:ip_squeue_fanout=1
set ip:ip_squeue_bind=0
set rlim_fd_max=260000
set rlim_fd_cur=260000
set sq_max_size=0
set ipge:ipge_dvma_thresh=1
e1000g driver used instead of ipge driver
installed e1000g driver patch 123334-04
e1000g0 and e1000g2 used as aggregation for client connections

Database Server HW (SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire T2000 OS Name: Solaris 10 6/06 64-bit
Processor: Sun UltraSPARC T1 Filesystem: Raw device
MHz: 1200 Disks: 2x73Gb 10K RPM SAS
# of CPUs: 8 cores, 1 chip, 8 cores/chip (4 threads/core) Network Interface: (4) 1000 BaseT Ethernet
Memory (MB): 32768 Other Hardware: 2x Sun SE3510 Array (12x 146GB 15K RPM FC Disk Array) HBA QLogic QLA2342-SUN PCI/PCI-X
L1 Cache: 16KB(I)+8KB(D) per core # of Systems: 1
L2 Cache: 3MB per chip H/W Available: Nov-2005
Other Cache: OS Available: Jan-2006
Notes / Tuning Information
System Tuning in /etc/system:
set ip:ip_squeue_bind = 0
set ip:ip_squeue_fanout = 1
set consistent_coloring = 2
set pcie:pcie_aer_ce_mask = 0x1
set sq_max_size = 0
e1000g was used instead of ipge driver
e1000g1 and e1000g2 used as aggregation for client

Load Driver and Emulator HW #1-#3 (non-SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire E6900 OS Name: Solaris 10 6/06
Processor: UltraSPARC IV Filesystem: UFS
MHz: 1200 Disks: 3 x 32GB Ultra320 SCSI
# of CPUs: 48 cores, 24 chips, 2 cores/chip Network Interface: (2) Onboard 1000BaseT Ethernet
Memory (MB): 98304 Other Hardware: (3) PCI-X 1000BaseT ethernet cards
L1 Cache: 64KB(I)+128KB(D) # of Systems: 1
L2 Cache: 16MB H/W Available: Feb-2003
Other Cache: OS Available: Jun-2006
Notes / Tuning Information
System Tuning in /etc/system:
set rlim_fd_max=260000
set rlim_fd_cur=260000
set ce:ce_bcopy_thresh=256
set ce:ce_dvma_thresh=256
set ce:ce_taskq_disable=1
set ce:ce_ring_size=256
set ce:ce_comp_ring_size=1024
set ce:ce_tx_ring_size=4096
This system was divided into 3 equal logical partitions using Solaris Containers.
Two logical partitions are satellite drivers
One logical partition was used as Master driver and emulator

Load Driver HW #4-#6 (non-SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire V1280 OS Name: Solaris 10 6/06
Processor: UltraSPARC III+ Filesystem: UFS
MHz: 900 Disks: 2 x 32GB Ultra320 SCSI
# of CPUs: 12 cores, 12 chips, 1 core/chip Network Interface: (2) Onboard 1000BaseT Ethernet
Memory (MB): 98304 Other Hardware: (1) PCI-X 1000BaseT ethernet cards
L1 Cache: 32KB(I)+64KB(D) # of Systems: 1
L2 Cache: 8MB H/W Available: Feb-2003
Other Cache: OS Available: Jun-2006
Notes / Tuning Information
System Tuning in /etc/system:
set rlim_fd_max=260000
set rlim_fd_cur=260000
set ce:ce_bcopy_thresh=256
set ce:ce_dvma_thresh=256
set ce:ce_taskq_disable=1
set ce:ce_ring_size=256
set ce:ce_comp_ring_size=1024
set ce:ce_tx_ring_size=4096
This system was divided into 3 equal logical partitions using Solaris Containers.
Each logical partition is a satellite driver.

Load Driver HW #7-#8 (non-SUT hardware)
Hardware Vendor: Sun Microsystems, Inc. OS Vendor: Sun Microsystems, Inc.
Model Name: Sun Fire V1280 OS Name: Solaris 10 6/06
Processor: UltraSPARC III+ Filesystem: UFS
MHz: 1200 Disks: 2 x 72GB Ultra320 SCSI
# of CPUs: 12 cores, 12 chips, 1 core/chip Network Interface: (2) Onboard 1000BaseT Ethernet
Memory (MB): 49152 Other Hardware:
L1 Cache: 32KB(I)+64KB(D) # of Systems: 1
L2 Cache: 8MB H/W Available: Feb-2003
Other Cache: OS Available: Jun-2006
Notes / Tuning Information
System Tuning in /etc/system:
set rlim_fd_max=260000
set rlim_fd_cur=260000
set ce:ce_bcopy_thresh=256
set ce:ce_dvma_thresh=256
set ce:ce_taskq_disable=1
set ce:ce_ring_size=256
set ce:ce_comp_ring_size=1024
set ce:ce_tx_ring_size=4096
This system was divided into 2 equal logical partitions using Solaris Containers.
Each logical partition is a satellite driver.

Benchmark Modifications
Schema Modifications:
  Tablespace sizes were increased to support the Injection rate.
  Scripts to create the DB are included in the FDA.
  Table and index initrans were modified.
  The M_INVENTORY, M_WORKORDER and M_PARTS tables were horizontally partitioned.
  Automatic segment space management was used for all tablespaces.
  System managed undo was used.
  Table locks were disabled during the run using disable_locks.sh script.
Load Program Modifications:
   The load program was not modified.

Benchmark Configuration Information
Isolation Requirement Info:
  The following Beans were deployed in READ_COMMITTED mode as per the
  benchmark requirement:
  Mfg      - AssemblyEnt, BomEnt, ComponentEnt, LargeOrderEnt, PartEnt
  Orders   - ItemEnt
  Supplier - SupplierCompEnt, SupplierEnt
  
  All other beans were deployed using pessimistic locking mode such that all
  selects including finders are issued with a FOR UPDATE clause in select
  statement:
  Corp     - CustomerEnt, CustomerInventoryEnt
  Mfg      - InventoryEnt, WorkOrderEnt
  Orders   - OrderEnt, OrderLineEnt
  Supplier - POEnt, POLineEnt, SComponentEnt
  Util     - SequenceEnt
  
  The ItemEnt bean was cached for 20 minute intervals by setting:
  read-only to true, and
  time-to-live to 1200000 (ms)
  in orders-toplink-ejb-jar.xml deployment descriptor.
Durability Requirement Info:
  Data and redo logs were written to RAID 1 volume to provide durability.
  The application servers have pair of mirrored disks (using ZFS) to provide
  durability for server logs and JMS persistence filestore.
Storage Requirement Info:
  A 80 min run at Injection Rate of 440 increased storage by 1.1 GB. This
  extrapolates to 19.8 GB for 24 hours. The system is configured with 730 GB of durable storage.
Argument Passing Semantics:
  Oracle Application Server 10g uses pass-by-value as required by the EJB
  specification.

Bill of Materials

Supplier  Description                                   Product #          Qty
--------  -------------------------------------------   ----------------   ---
                              BILL OF MATERIALS
--------------------------------------------------------------------------------


Supplier        Description                                     Product No.             Qty
--------        ----------------------------------------        ------------------      ---
Sun             Sun Fire T2000, 1x1.2 GHz T1, 32 GB             T20Z108B-32GA2D         2
Sun             Solaris 10 6/06 Media KIT                       SOLZ9-10EC9A7M          2
Sun             SunSpectrum Upgrade: 3Y GOLD, 24x7              W9D-T2000-8-24-3G       2
Sun             QLogic QLA2342-SUN PCI/PCI-X                    375-3363                1
Sun             17" Entry Color Monitor                         X7147A                  1
Sun             PS/2 Keyboard & Mouse                           320-1261                1
Netgear         24 port Gigabit ethernet switch                 GS624T                  1
Sun             73-GB 10000 RPM 2.5 inch SAS Disk Drive         XRA-SS2CD-73G10KZ       2
Sun             Sun StorEdge 3510, 12 x 146GB, 1 RAID
                                                    SE3510-12X146/15K-1RAID-AC-RR       1
Sun             SunSpectum Upgrade: 3Y GOLD, 24x7               W9D-SE3510-24-3G        1
Oracle          Oracle Database 10g Release 2 Enterprise Edition, 
                Partitioning, Per Processor         
                (v10.2)						             		2*	     
Oracle          Oracle Database Server Support Package for 3 years
                (Incident Server Support) 24x7x4                               		1
Oracle          Oracle Application Server 10g Release 10.1.3.2, 
                Java Edition, Per Processor       		                        2*
 	        (v10.1)
Oracle          Oracle Application Server Support Package for 3 years	     		1	
	        (Incident Server Support) 24x7x4 

(*2 = 0.25 * 8)  Explanation:  For a Sun UltraSPARC T1 processors with 4, 
6 or 8 cores at 1.0 gigahertz or 8 cores at 1.2 gigahertz for only those 
servers specified on the Sun Server Table which can be accessed at
http://oracle.com/contracts, shall be determined by multiplying the total 
number of cores by a factor of .25.



Other Benchmark Information
  The xerces implementation version 2.6.2 from xml.apache.org was used as it
  comes packaged with Oracle Application Server 10g.
  
  The driver used the following jndi.properties:
  java.naming.factory.initial=com.evermind.server.rmi.RMIInitialContextFactory
  java.naming.provider.url=ormi://MT:23791/SPECjAppServer
  java.naming.security.principal=oc4jadmin
  java.naming.security.credentials=welcome
  oracle.j2ee.rmi.loadBalance=lookup

General Notes
The only errors in the driver error logs are the application errors
generated by this benchmark.

On the database, incremental checkpointing ensured that no buffer will
remain dirty (in the cache) for more than the allowed time.

Oracle Application Server 10g Release 10.1.3.2 implements Recoverable Last
Resource Commit (RLRC) optimization where one and only one SinglePhaseResource
participates in a global transaction with one or more XAResources. This is
accomplished by emulating an XAResource to represent the 1PC resource. The
transaction manager takes the following steps when it receives a request to commit
a global transaction that includes one emulated XAResource:
1. It invokes a prepare call on each of the 2PC resources.
2. If all of the 2PC resources are successfully prepared, then commit (one-phase)
is called and the commit record is written to the commit-log, on the emulated XA
resource (database) as part of the local transaction.
3. If the 1PC on the emulated XA resource completes successfully, then the
transaction manager calls commit on each of the 2PC resources.
or:
If the 1PC on the emulated XA resource fails, then the transaction manager queries
the commit-log for transaction outcome. If the record exists, 2PC resources are
committed, otherwise 2PC Resources are aborted.
Transaction outcome after a single point of failure is guaranteed by the presence of
the commit-record in the commit log, indicating a successful transaction completion;
while a missing commit-record signifies abort. The commit record is deleted lazily
after the global transaction has committed.

In conjunction with the RLRC implementation, the log-file location specified in the
transaction-manager.xml identifies the location where  the participating resource
managers are recorded. The commit record table name associated with an instance is
specified in the commit-record-table-name attribute, in the Connection-Factory
element of data-sources.xml.


For questions about this result, please contact the submitter: Oracle Corporation
For other inquiries, please contact webmaster@spec.org

Copyright © 2004 Standard Performance Evaluation Corporation

First published at SPEC.org on 17-Jan-2007