--------------------------------------------------------------------------------
                          SPECjAppServer(R)2004 Result                          
         Copyright (C) 2004 Standard Performance Evaluation Corporation         
--------------------------------------------------------------------------------
          Sybase Enterprise Application Server 6.0.2 Advanced Edition           
--------------------------------------------------------------------------------

                    652.95 SPECjAppServer2004 JOPS@Standard                     

--------------------------------------------------------------------------------
Submitter: Sybase Inc.
  SPEC license # 82
  Test date: Jun-2007
--------------------------------------------------------------------------------

                               SUT CONFIGURATION                                
--------------------------------------------------------------------------------
J2EE Server Nodes:                     1  DB Server Nodes:                   1
J2EE Server CPUs:       4 cores, 2 chips  DB Server CPUs:     4 cores, 2 chips
J2EE Instances:                        1  DB Instances:                      1

Other SUT Components:
  PowerConnect 5324 Managed Switch
--------------------------------------------------------------------------------

                               BENCHMARK SETTINGS                               
--------------------------------------------------------------------------------
Dealer Injection Rate:               395  Ramp Up Time:                600 sec
# of Dealer Agents:                    1  Ramp Down Time:              300 sec
# of Manufacturing Agents:             1  Steady State Time:         3,600 sec
DB Load Injection Rate:              400  Trigger Time:                600 sec
--------------------------------------------------------------------------------

                                Detailed Results                                
--------------------------------------------------------------------------------
Dealer Transaction Mix                     Count   Tx. Mix
  Purchase                               350,896    24.97%
  Manage                                 351,575    25.02%
  Browse                                 702,898    50.02%
Total # Dealer Transactions            1,405,369

Total # Manufacturing Transactions       945,236

Response Times                           Average   Maximum     90th%      Reqd
  Purchase                                  0.55     30.10      1.10      2.00
  Manage                                    0.42     86.64      0.60      2.00
  Browse                                    0.75     29.23      1.60      2.00
  Manufacturing                             1.14     93.44      1.50      5.00

Reproducibility Run (SPECjAppServer2004 JOPS)    695.73
--------------------------------------------------------------------------------

                               SOFTWARE PRODUCTS                                
--------------------------------------------------------------------------------
Sybase Enterprise Application Server 6.0.2 Advanced Edition
  Vendor:            Sybase Inc.
  Availability Date: Jun-2007
  Date Passed CTS:   Aug-2006
  CTS Version:       1.4
  EJB Protocol:      RMI/IIOP
  OS Name:           Windows Server 2003 (64-bit) Standard Edition
--------------------------------------------------------------------------------
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03) 64-bit
  Vendor:            Sun
  Availability Date: Nov-2006
  OS Name:           Windows Server 2003 (64-bit) Standard Edition
--------------------------------------------------------------------------------
BEA JRockit(R)5.0JDK(R27.1.0-109)(64-bit)
  Vendor:            BEA Systems
  Availability Date: Nov-2006
  OS Name:           Windows Server 2003 (64-bit) Standard Edition x64
--------------------------------------------------------------------------------
iAnywhere JDBC Driver 10.0.1
  Vendor:            iAnywhere
  Availability Date: Apr-2007
  OS Name:           Windows Server 2003 (64-bit) Standard Edition x64
--------------------------------------------------------------------------------
SQLAnywhere 10.0.1 x32
  Vendor:            iAnywhere
  Availability Date: Apr-2007
  OS Name:           Windows Server 2003 (64-bit) Standard Edition
--------------------------------------------------------------------------------

                            SOFTWARE CONFIGURATIONS                             
--------------------------------------------------------------------------------
J2EE Application Server
  J2EE Product:      Sybase Enterprise Application Server 6.0.2 Advanced Edition
  JVM Product:       Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03) 64-bit
  JDBC Product:      iAnywhere JDBC Driver 10.0.1
  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
  JVM Flags:
   -server �XX:CompileThreshold=500 �XX:+PrintCompilation �XX:+UseParallelGC
   �XX:ParallelGCThreads=4 �XX:+UseParallelOldGC �Xms5000m �Xmx5000m
   �XX:NewSize=2500m �XX:MaxPermSize=128m �verbose:gc
   �XX:+PrintGCDetails �XX:+UseLargePages
  
  Refer to attached documents for additional configuration details
  set following environment variable before starting Application Server
  set DJC_USER_JVM_ARGS=-Ddjc.disableExUtil.printStack=true
  
--------------------------------------------------------------------------------
Emulator SW Config
  J2EE Product:      Sybase Enterprise Application Server 6.0.2 Advanced Edition
  JVM Product:       Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03) 64-bit
  Hardware:          Load Driver HW
  # of Instances:    1

Notes / Tuning Information
  JVM Flags:
  -Xms4M -Xmx512M -XX:+UseLargePages
--------------------------------------------------------------------------------
Database SW Config
  DB Product:        SQLAnywhere 10.0.1 x32
  Hardware:          Database Server HW
  # of Instances:    1

Notes / Tuning Information
  DB startup command:
  dbsrv10.exe -c3500m -ch3500m -gm300 -gn150 -gr120 specdb.db
--------------------------------------------------------------------------------
Driver SW Config
  JVM Product:       BEA JRockit(R)5.0JDK(R27.1.0-109)(64-bit)
  Hardware:          Load Driver HW
  # of Instances:    1

Notes / Tuning Information
  -Xms4096M -Xmx4096M
  
  org.specj.jappserver.driver.http.HttpResponseParser.class was modified in the driver.
  Modification was to handle uppercase hex digits (A-F) in chunked encoding
  Please refer to attached source code and updated driver jar file
--------------------------------------------------------------------------------

                                HARDWARE SYSTEMS                                
--------------------------------------------------------------------------------
J2EE AppServer HW (SUT hardware)
  Hardware Vendor:   Dell
  Model Name:        PowerEdge 2900
  Processor:         Intel Xeon processor 5160
  MHz:               3000
  # of CPUs:         4 cores, 2 chips, 2 cores/chip
  Memory (MB):       16384
  L1 Cache:          32KB(I)+32KB(D) on chip, per core
  L2 Cache:          4MB on chip, shared
  Other Cache:       
  OS Vendor:         Microsoft Inc.
  OS Name:           Windows Server 2003 (64-bit) Standard Edition
  Disks:             1x73GB
  Network Interface: (2) 1000BaseT Ethernet
  Other Hardware:    
  # of Systems:      1
  H/W Available:     Jul-2006
  O/S Available:     Mar-2005

Notes / Tuning Information
  Using regedit.exe modify Registery contents:
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  
  property: MaxUserPort
  type: reg_dword
  value: 65534
  value type: decimal
  
  property: TcpTimedWaitDelay
  type: reg_dword
  value: 30
  value type: decimal
  
  Using Control Panel/System/Advanced setup:
  - Processor scheduling optimized for Programs
  - Memory usage optimized for Programs
  - Virtual page file of 24GB
  
  Using Local Area Connection Properties for Network Adapter set:
  Maximize data throughput for network applications
  
  Start ODBCManager using command odbcad32.exe
  On User DSN page select Add button
  On ODBC tab put the "DataSource name" as specdb
  On Database tab put "Server Name" and "Database Name" as specdb
  On Network tab Select TCP/IP and configure parameter "HOST=<db hostname>
  
  To support Large Pages on Windows make following config changes
  1.	select Control Panel -> Administrative Tools -> Local Security Policy
  2.	select Local Policies -> User Rights Assignment
  3.	double click "Lock pages in memory", add users and/or groups
  4.	reboot the machine
  
--------------------------------------------------------------------------------
Database Server HW (SUT hardware)
  Hardware Vendor:   Dell
  Model Name:        PowerEdge 2900
  Processor:         Intel Xeon processor 5160
  MHz:               3000
  # of CPUs:         4 cores, 2 chips, 2 cores/chip
  Memory (MB):       16384
  L1 Cache:          32KB(I)+32KB(D) on chip, per core
  L2 Cache:          4MB on chip, shared
  Other Cache:       
  OS Vendor:         Microsoft
  OS Name:           Windows Server 2003 (64-bit) Standard Edition x64
  Disks:             8x146GB SAS 15K
  Network Interface: (2) 1000 BaseT Ethernet
  Other Hardware:    
  # of Systems:      1
  H/W Available:     Jul-2006
  O/S Available:     Mar-2005

Notes / Tuning Information
  Using regedit.exe modify Registery contents:
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  
  property: MaxUserPort
  type: reg_dword
  value: 65534
  value type: decimal
  
  property: TcpTimedWaitDelay
  type: reg_dword
  value: 30
  value type: decimal
  
  Using Control Panel/System/Advanced setup:
  - Processor scheduling optimized for Programs
  - Memory usage optimized for Programs
  - Virtual page file of 24GB
  
  Using Local Area Connection Properties for Network Adapter set:
  Maximize data throughput for network applications
  
  To support Large Pages on Windows make following config changes
  1.	select Control Panel -> Administrative Tools -> Local Security Policy
  2.	select Local Policies -> User Rights Assignment
  3.	double click "Lock pages in memory", add users and/or groups
  4.	reboot the machine
  
--------------------------------------------------------------------------------
Load Driver HW (non-SUT hardware)
  Hardware Vendor:   Dell
  Model Name:        PowerEdge 6850
  Processor:         Dual Core Intel Xeon 7041 (4 HW threads/chip)
  MHz:               3072
  # of CPUs:         4 cores, 2 chips, 2 cores/chip
  Memory (MB):       16384
  L1 Cache:          12KB(I)+16KB(D) on chip, per core
  L2 Cache:          2048KB(I+D) on chip, per core
  Other Cache:       
  OS Vendor:         Microsoft
  OS Name:           Windows Server 2003 (64-bit) Standard Edition
  Disks:             1x73GB
  Network Interface: 2x(2)1000BaseT
  Other Hardware:    
  # of Systems:      1
  H/W Available:     Feb-2005
  O/S Available:     Mar-2005

Notes / Tuning Information
  Using regedit.exe modify Registery contents:
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  
  property: MaxUserPort
  type: reg_dword
  value: 65534
  value type: decimal
  
  property: TcpTimedWaitDelay
  type: reg_dword
  value: 30
  value type: decimal
  
  Using Control Panel/System/Advanced setup:
  - Processor scheduling optimized for Programs
  - Memory usage optimized for Programs
  - Virtual page file of 24GB
  
  Using Local Area Connection Properties for Network Adapter set:
  Maximize data throughput for network applications
  
  Start ODBCManager using command odbcad32.exe
  On User DSN page select Add button
  On ODBC tab put the "DataSource name" as specdb
  On Database tab put "Server Name" and "Database Name" as specdb
  On Network tab Select TCP/IP and configure parameter "HOST=<db hostname>
  
  To support Large Pages on Windows make following config changes
  1.	select Control Panel -> Administrative Tools -> Local Security Policy
  2.	select Local Policies -> User Rights Assignment
  3.	double click "Lock pages in memory", add users and/or groups
  4.	reboot the machine
  
--------------------------------------------------------------------------------

                            BENCHMARK MODIFICATIONS                             
--------------------------------------------------------------------------------
Schema Modifications:
  1) Additional table ref_tv table was created
     to support the use of tableVersion for "reference" table
  
  2) Column order of primary key for S_purchase table was modified to
     (pol_po_id, pol_number) to avoid table scan. This change does
     not affect the index semantics or index node storage size.
  
  3) Column order of primary key for M_bom table was modified to
     put b_line_no before b_comp_id. This would be the Sybase
      recommended schema for such an index (to avoid inefficient
     index scans for cases where you want to find the BOM rows
     for a particular b_assembly_id and b_line_no). Due to the fact
     that this table is cached in this submission, this change is 100%
     performance neutral (for the submitted results). This change does
     not affect the index semantics or index node storage size.
  
  4) Explicit "null" and "not null" indicators added where they were absent
     (as the default for Sybase ASE databases is "not null" whereas the
     DB load script assumes columns can be "null" by default).
  
     The automated tool that was used for this also reordered the columns
     effectively randomly (due to Java HashMap distribution of column names
     in the internal data structures used by the schema generation tool).
  
  5) Added two extra indexes on M_largeorder to avoid inefficient queries.
  
  6) version column added to all tables for optimistic concurrency.
  
  7) o_version column added to C_customer to support parent versioning.
  
  8) for_update column added to some tables for exclusive locking.
  
  9) Database triggers were added for versioning and cache invalidation
     (these triggers are not active when the application server accesses
     the database, they are to ensure that ad-hoc database updates from
     other applications will retain database integrity).
  
  10) Added to schema to set max_cursor_count and max_statement_count to 0
  
  Please refer to attached Schema for details.
--------------------------------------------------------------------------------
Load Program Modifications:
  No modifications done

                      BENCHMARK CONFIGURATION INFORMATION                       
--------------------------------------------------------------------------------
Isolation Requirement Info:
  For full documentation of configuration properties, see Config/docs/com.sybase.djc.ant.SetPropertiesTask.html.
  CustomerEnt
      isolationLevel is RepeatableReadWithCache
      using versionColumn for optimistic concurrency
      also using allowVerifyWithCache (this relies on database trigger)
  
  CustomerInventoryEnt
      isolationLevel is RepeatableReadWithCache
      using parentVersion and versionColumn for optimistic concurrency
  
  AssemblyEnt
      isolationLevel is ReadCommittedWithCache
      using tableVersion for optimistic concurrency
  
  BomEnt
      isolationLevel is ReadCommittedWithCache
      using tableVersion for optimistic concurrency
  
  ComponentEnt
      isolationLevel is ReadCommittedWithCache
      using tableVersion for optimistic concurrency
  
  InventoryEnt
      isolationLevel is RepeatableReadWithCache
      using versionColumn for optimistic concurrency
      also using allowVerifyWithCache (this relies on database trigger)
  
  LargeOrderEnt
      isolationLevel is ReadCommitted
  
  PartEnt
      isolationLevel is ReadCommitted
  
  WorkOrderEnt
      isolationLevel is RepeatableReadWithCache
      using versionColumn for optimistic concurrency
  
  ItemEnt
      isolationLevel is ReadCache
      using cacheTimeout for cache invalidation
  
  OrderEnt
      isolationLevel is RepeatableReadWithCache
      using parentVersion and versionColumn for optimistic concurrency
      also using allowVerifyWithCache (this relies on database trigger)
  
  OrderLineEnt
      isolationLevel is RepeatableReadWithCache
      using parentVersion and versionColumn for optimistic concurrency
  
  POEnt
      isolationLevel is RepeatableReadWithCache
      using versionColumn for optimistic concurrency
  
  POLineEnt
      isolationLevel is RepeatableReadWithCache
      using versionColumn for optimistic concurrency
  
  SComponentEnt
      isolationLevel is RepeatableReadWithCache
      using versionColumn for optimistic concurrency
      also using allowVerifyWithCache (this relies on database trigger)
  
  SupplierCompEnt
      isolationLevel is ReadCommittedWithCache
      using tableVersion for optimistic concurrency
  
  SupplierEnt
      isolationLevel is ReadCommittedWithCache
      using tableVersion for optimistic concurrency
  
  SequenceEnt
      isolationLevel is RepeatableRead
      using selectWithUpdateLock for pessimistic lock
  
  PartEnt
      isolationLevel is ReadCommitted
      using tableVersion for optimistic concurrency
--------------------------------------------------------------------------------
Durability Requirement Info:
  Database Server Hardware is configured as Dual Raid array and redo logs are duplicated on on both raid array disks.
  J2EE Application Server does not have any such requirement (JMS messages are stored in the database)
--------------------------------------------------------------------------------
Storage Requirement Info:
  A 60 minute run at Injection rate of 420
  increased Storage by 1105.63 MB.
  Extrapolating for 24 hours we need
  26535 MB. System is configured with
  584GB of hard drive.
--------------------------------------------------------------------------------
Argument Passing Semantics:
  Sybase Enterprise Application Server 6.0.2 uses Pass-by-value as required by the EJB Specifications

                               BILL OF MATERIALS                                
--------------------------------------------------------------------------------

Supplier    Description                                   Product #         Qty
--------  -------------------------------------------   ----------------    ---
Sybase      Enterprise Application Server v6.0.2          60872              1
            Enterprise Support:
            3 Years 24x7 Support with Response time of
            less then 30 minutes
iAnywhere   SQLAnywhere 10.0.1                            19861              1
            Enterprise Support:
            3 Years 24x7 Support with Response time of
            less then 30 minutes
Dell        Dual Core Xeon Processor 5160 4MB Cache,      222-3395           2 
            3.00GHz, 1333MHz FSB, PE 2900
Dell        Dual Core Xeon 2nd Processor 5160,            311-6232           2
            4MB Cache, 3.00GHz 1333MHz FSB, PE 2900 
Dell        16GB 533MHz (8x2GB), Dual Ranked DIMMs        311-5735           2
Dell        Broadcom TCP/IP Offload EngineNot Enabled     430-1765           2
Dell        146GB, SAS, 3.5-inch 15K RPM Hard Drive       341-3031           8
Dell        73GB, SAS, 3.5-inch 15K RPM Hard Drive        341-3029           1
Dell        PERC 5/i, Integrated Controller Card          341-3018           2
Dell        Intel PRO 1000PT Cu, Dual PortPCIe, NIC       430-0959           2
Dell        6X DVD-ROM for PowerEdge 2900                 313-4312           2
Dell        Bezel for Rack Configuration PE 2900          313-3914           2
Dell        Electronic Documentation and                  310-7402           2
            OpenManage CD Kit, PE2900
Dell        Integrated SAS/SATA RAID                      341-3000           1
            10 PERC 5/i Integrated
Dell        73GB, SAS, 3.5-inch 15K RPM Hard Drive        341-3029           1
Dell        Integrated SAS/SATA RAID 1 PERC 5/i           341-2998           1
            Integrated
Dell        Rack Chassis with Sliding Rapid/Versa         310-7488           2
            Rails, Universal for PowerEdge 2900
Dell        GOLD Enterprise Support:                      960-9252           2
            7x24 Escalation Manager, 
            Hw/Sw Tech Phone Support, 
            Enterprise Command Center, 3Yr 
Dell        GOLD Enterprise Support:                      970-4770           2
            4 Hour 7x24 Onsite Service with
            Emergency Dispatch, Init  YR
Dell        Dell Hardware Warranty Plus Onsite            984-1467           2
            Service Initial YR
Dell        GOLD Enterprise Support:                      960-9002           2
            4 Hour 7x24 Onsite Service with 
            Emergency Dispatch, 2YR Ext
Dell        SHIPPING AND HANDLING,                        009-4364           2
            WORKSTATIONS,OPTIPLEX,
            LATITUDEand SERVERS
Dell        Redundant Power Supply with Y-Cord            310-7405           2
            for PowerEdge 2900
Dell        Dell Hardware Warranty, Extended 3 YR         984-1469           1
Microsoft   Windows Server 2003 Standard Edition          P73-01418          2
            (64-bit), With 3 years Software 
            Assurance included



--------------------------------------------------------------------------------

                          OTHER BENCHMARK INFORMATION                           
--------------------------------------------------------------------------------
  This submission uses Xerces implementation 2.8.0 which is provided with Sybase Enterprise Application Server 6.0.2
--------------------------------------------------------------------------------

                                 General Notes                                  
--------------------------------------------------------------------------------
 The errors in the driver log files were those that are
 normally generated by this benchmark, optimistic concurrency rollback,
 and communication failures
 
 SQLAnywhere is configured to run checkpoints to ensure
 that no updates remained unflushed longer then allowed time.
 Enterprise Application Server is configured to cache data into memory.
 Triggers are provided from DB to reflect any change of data on the DB.
 Cache size is configured using configuration files. The configuration
 files are attached with the results
 
 Errors in loline.err and plannedline.err and emulator.err
 due to first read on a newly opened socket sometimes (under
 high load) returning -1, even though the server hasn't
 closed the socket. Also on client, socket write errors and
 connections reset by peer due to server's first read on newly
 opened socket failing (resulting in server closing the socket
 because it thinks the client has gone). Our best explanation
 of this is the JVM or Windows OS being unable to handle the
 occasional new socket connection within some time period when
 the server is particularly heavily loaded (during ramp-up
 in particular).
 
 Errors in dealer.err due to optimistic concurrency failure.
 (transaction rolled back as a result of version conflict).
 Some transaction rollbacks can result in NullPointerExceptions
 in the driver, due to it not expecting the rollbacks.
--------------------------------------------------------------------------------

For questions about this result, please contact the submitter: Sybase Inc.
For other inquiries, please contact SPEC

- Benchmark run on Mon Jun 25 13:21:57 EDT 2007
  by SPECjAppServer2004 v1.05
- Result submitted on Wed Jul  4 03:03:00 EDT 2007
- Report generated by SPECjAppServer2004 Reporter v1.03

Copyright (C) 2004 Standard Performance Evaluation Corporation