RE: Excessive CPU Utilization with OPS ?

2001-04-23 Thread Gogala, Mladen

You probably have the releasable locking which is much more CPU intensive
then the static (hashed) locking. Try with setting hashed locking on the 
tablespaces that you do not write too often (this assumes that your
reference 
tables like ZIP codes, states, countries or discovered bugs in Microsoft 
Windows are all in the same tablespace or in a separate group of
tablespaces).

-Original Message-
Sent: Monday, April 23, 2001 5:31 AM
To: Multiple recipients of list ORACLE-L


O.P.S. Setup in Benchmark Runs :- 
--

2 DB Servers - ES40 Alpha machines - 4 CPUs , 8 GB RAM - O.S. DEC 5.1 
1st APP Server  - ES40 Alpha machines - 4 CPUs , 8 GB RAM - O.S. DEC 5.1 
2nd APP Server - SUNe420R - 4 CPUs , 4 GB RAM - Solaris 2.6 
3rd APP Server - SUNe420R - 4 CPUs , 4 GB RAM - Solaris 2.6 

ORACLE (on BOTH DB  APP Servers) - 8.1.7.0.0

CASE 1 - Database Brought up on 1 DB Server in SINGLE Instance WITHOUT the
OPS parameters Set
---
ACTION 1 - When Firing 32,000 Transactions using 1200 Concurrent Processes
from 3 APP Servers onto a SINGLE DB Server 

RESULT CPU Utilization = 70 % (on DB Server)

ACTION 2 - When Firing 16,000 Transactions using 600 Concurrent Processes
from the APP Servers onto the SINGLE DB Server 

RESULT CPU Utilization = 40 % (on DB Server)



CASE 2 - SAME Database Brought up with 2 Instances on 2 DB Servers on a 2
Node Cluster by Setting the OPS Parameters 

ACTION  - When Firing 16,000 Transactions using 600 Concurrent Processes
from the APP Servers onto Each of the 2 DB Servers Simultaneously 

RESULT CPU Utilization Again = 70 % on Each of the 2 DB Servers 

Qs. 1 Why is CPU Utilization on 1 Instance of Database WITH OPS so Excessive
( = 70 % ) as Compared to that on a SINGLE Instance NON-OPS Database ( = 40
% ) for the SAME Transactions Volume ?

NOTE - Transactions Volume Constists of 65 % OLTP  35 % Small Batch
Transactions which are More Read Than Computation Intensive 


SVRMGR Rem System wide wait events for non-background processes (PMON, 
SVRMGR Rem SMON, etc).  Times are in hundreths of seconds.  Each one of 
SVRMGR Rem these is a context switch which costs CPU time

SVRMGR select  n1.event Event Name, 
 2 n1.event_count Count,
 3 n1.time_waited Total Time,
 4 round(n1.time_waited/n1.event_count, 2) Avg Time
 5from stats$event n1
 6where n1.event_count  0
 7order by n1.time_waited desc;
Event Name   Count Total TimeAvg Time 
 - - -
SQL*Net message from client5878909 246021256 41.85
row cache lock   33214   1516007 45.64
buffer busy due to global cache 179233   1263079  7.05
enqueue  43631710976  16.3
latch free  380304559890  1.47
global cache cr request 351465485146  1.38
global cache lock null to x  39040257749   6.6
db file sequential read 284104160145   .56
global cache lock open x 44210157445  3.56
buffer busy waits66486102513  1.54
log file sync   191919100685   .52


Prompt TOP 10 WRITE PINGING OBJECTS :-

 INST_ID NAME KIND  FILE# STAT   BLOCKS READ_PINGS
WRITE_PINGS
  --    --
---
   2 NAME_AND_ADD_TABLE   TABLE 7 cr  5 39
37
   2 NAME_AND_ADD_TABLE   TABLE 7 scur2 17
15
   2 LOGIN_TABLE  TABLE 9 scur1 23
13
   2 NEXT_NUMBER_TABLETABLE PART8 cr  1  5
5
   2 INTEREST_SUMMARY_MOD TABLE 9 scur1  5
5

5 rows selected.

Prompt TOP 10 READ PINGING OBJECTS :-

INST_ID NAME KIND  FILE# STAT   BLOCKS READ_PINGS
WRITE_PINGS
  --    --
---
   2 NAME_AND_ADD_TABLE   TABLE 7 cr  4 29
27
   2 PRINT_QUEUE_TABLETABLE 9 cr  2 25
25
   2 NAME_AND_ADD_TABLE   TABLE 7 scur2 17
15
   2 NEXT_NUMBER_TABLETABLE PART8 cr  1  5
5
   2 INTEREST_SUMMARY_MOD TABLE 9 scur1  5
5

5 rows selected.

Prompt TOP 10 FALSE PINGING OBJECTS :-

 INST_ID NAME KIND  FILE# STAT   BLOCKS READ_PINGS
WRITE_PINGS
  --    --
---
   2 PRINT_QUEUE_TABLETABLE 9 cr  6 81
83
   2 NAME_AND_ADD_TABLE   TABLE

RE: Excessive CPU Utilization with OPS ?

2001-04-23 Thread VIVEK_SHARMA

Gogala

OK , Will Check  Revert Results 
It is True However that we have Set up Releasable Locks Primarily (
gc_releasable_locks=8)

Qs. 1 Oracle lmd process on DB Server is taking About 30% of the CPU During
the Benchmark Run period (of 1 Hour) . How can this be minimized ?

Qs 2 Please Review the Parameters  Correct Whereever 

Common Parameters for Both instances  :-

gc_releasable_locks=8
gc_files_to_locks=1=25000
gc_rollback_locks=0-635=100REACH

db_block_buffers  = 4
shared_pool_size  = 13000   
shared_pool_reserved_size = 2500  
large_pool_size   = 1000 
PARALLEL_SERVER = true
lm_ress=906840
lm_ress=906840
parallel_max_servers= 0
lm_locks=1160260
java_pool_size=1024000

Parameters Differing  for the 2 Individual Instances 
For instance 1 :-
instance_groups=abc
parallel_instance_group=abc

For instance 2 :-
instance_groups=def
parallel_instance_group=def

NOTE - Thus we Have Diabled Inter  Intra Node Parallel Query because in the
Source Code 
we are NOT using PARALLEL Hints or Alter Session Commands 

SVRMGR show sga
Total System Global Area   1425716196 bytes
Fixed Size 103396 bytes
Variable Size  1093722112 bytes
Database Buffers32768 bytes
Redo Buffers  4210688 bytes

Thanks 

 -Original Message-
 From: Gogala, Mladen [SMTP:[EMAIL PROTECTED]]
 Sent: Monday, April 23, 2001 9:51 PM
 To:   Multiple recipients of list ORACLE-L
 Subject:  RE: Excessive CPU Utilization with OPS ?
 
 You probably have the releasable locking which is much more CPU intensive
 then the static (hashed) locking. Try with setting hashed locking on the 
 tablespaces that you do not write too often (this assumes that your
 reference 
 tables like ZIP codes, states, countries or discovered bugs in Microsoft 
 Windows are all in the same tablespace or in a separate group of
 tablespaces).
 
 -Original Message-
 Sent: Monday, April 23, 2001 5:31 AM
 To: Multiple recipients of list ORACLE-L
 
 
 O.P.S. Setup in Benchmark Runs :- 
 --
 
 2 DB Servers - ES40 Alpha machines - 4 CPUs , 8 GB RAM - O.S. DEC 5.1 
 1st APP Server  - ES40 Alpha machines - 4 CPUs , 8 GB RAM - O.S. DEC 5.1 
 2nd APP Server - SUNe420R - 4 CPUs , 4 GB RAM - Solaris 2.6 
 3rd APP Server - SUNe420R - 4 CPUs , 4 GB RAM - Solaris 2.6 
 
 ORACLE (on BOTH DB  APP Servers) - 8.1.7.0.0
 
 CASE 1 - Database Brought up on 1 DB Server in SINGLE Instance WITHOUT the
 OPS parameters Set
 ---
 ACTION 1 - When Firing 32,000 Transactions using 1200 Concurrent Processes
 from 3 APP Servers onto a SINGLE DB Server 
 
 RESULT CPU Utilization = 70 % (on DB Server)
 
 ACTION 2 - When Firing 16,000 Transactions using 600 Concurrent Processes
 from the APP Servers onto the SINGLE DB Server 
 
 RESULT CPU Utilization = 40 % (on DB Server)
 
 
 
 CASE 2 - SAME Database Brought up with 2 Instances on 2 DB Servers on a 2
 Node Cluster by Setting the OPS Parameters 
 
 ACTION  - When Firing 16,000 Transactions using 600 Concurrent Processes
 from the APP Servers onto Each of the 2 DB Servers Simultaneously 
 
 RESULT CPU Utilization Again = 70 % on Each of the 2 DB Servers 
 
 Qs. 1 Why is CPU Utilization on 1 Instance of Database WITH OPS so
 Excessive
 ( = 70 % ) as Compared to that on a SINGLE Instance NON-OPS Database ( =
 40
 % ) for the SAME Transactions Volume ?
 
 NOTE - Transactions Volume Constists of 65 % OLTP  35 % Small Batch
 Transactions which are More Read Than Computation Intensive 
 
 
 SVRMGR Rem System wide wait events for non-background processes (PMON, 
 SVRMGR Rem SMON, etc).  Times are in hundreths of seconds.  Each one of 
 SVRMGR Rem these is a context switch which costs CPU time
 
 SVRMGR selectn1.event Event Name, 
  2   n1.event_count Count,
  3   n1.time_waited Total Time,
  4   round(n1.time_waited/n1.event_count, 2) Avg Time
  5from stats$event n1
  6where n1.event_count  0
  7order by n1.time_waited desc;
 Event Name   Count Total TimeAvg Time 
  - - -
 SQL*Net message from client5878909 246021256 41.85
 row cache lock   33214   1516007 45.64
 buffer busy due to global cache 179233   1263079  7.05
 enqueue  43631710976  16.3
 latch free  380304559890  1.47
 global cache cr request 351465485146  1.38
 global cache lock null to x  39040257749   6.6
 db file sequential read 284104160145   .56
 global cache lock open x 44210

RE: Excessive CPU Utilization with OPS ?

2001-04-23 Thread Gogala, Mladen

You should set your lm_locks parameter according to the instructions 
for your specific platform and try putting all locks into releasable 
mode first, by setting the number of locks to 0 in gc_files_to_locks

-Original Message-
Sent: Monday, April 23, 2001 2:46 PM
To: Multiple recipients of list ORACLE-L


Gogala

OK , Will Check  Revert Results 
It is True However that we have Set up Releasable Locks Primarily (
gc_releasable_locks=8)

Qs. 1 Oracle lmd process on DB Server is taking About 30% of the CPU During
the Benchmark Run period (of 1 Hour) . How can this be minimized ?

Qs 2 Please Review the Parameters  Correct Whereever 

Common Parameters for Both instances  :-

gc_releasable_locks=8
gc_files_to_locks=1=25000
gc_rollback_locks=0-635=100REACH

db_block_buffers  = 4
shared_pool_size  = 13000   
shared_pool_reserved_size = 2500  
large_pool_size   = 1000 
PARALLEL_SERVER = true
lm_ress=906840
lm_ress=906840
parallel_max_servers= 0
lm_locks=1160260
java_pool_size=1024000

Parameters Differing  for the 2 Individual Instances 
For instance 1 :-
instance_groups=abc
parallel_instance_group=abc

For instance 2 :-
instance_groups=def
parallel_instance_group=def

NOTE - Thus we Have Diabled Inter  Intra Node Parallel Query because in the
Source Code 
we are NOT using PARALLEL Hints or Alter Session Commands 

SVRMGR show sga
Total System Global Area   1425716196 bytes
Fixed Size 103396 bytes
Variable Size  1093722112 bytes
Database Buffers32768 bytes
Redo Buffers  4210688 bytes

Thanks 

 -Original Message-
 From: Gogala, Mladen [SMTP:[EMAIL PROTECTED]]
 Sent: Monday, April 23, 2001 9:51 PM
 To:   Multiple recipients of list ORACLE-L
 Subject:  RE: Excessive CPU Utilization with OPS ?
 
 You probably have the releasable locking which is much more CPU intensive
 then the static (hashed) locking. Try with setting hashed locking on the 
 tablespaces that you do not write too often (this assumes that your
 reference 
 tables like ZIP codes, states, countries or discovered bugs in Microsoft 
 Windows are all in the same tablespace or in a separate group of
 tablespaces).
 
 -Original Message-
 Sent: Monday, April 23, 2001 5:31 AM
 To: Multiple recipients of list ORACLE-L
 
 
 O.P.S. Setup in Benchmark Runs :- 
 --
 
 2 DB Servers - ES40 Alpha machines - 4 CPUs , 8 GB RAM - O.S. DEC 5.1 
 1st APP Server  - ES40 Alpha machines - 4 CPUs , 8 GB RAM - O.S. DEC 5.1 
 2nd APP Server - SUNe420R - 4 CPUs , 4 GB RAM - Solaris 2.6 
 3rd APP Server - SUNe420R - 4 CPUs , 4 GB RAM - Solaris 2.6 
 
 ORACLE (on BOTH DB  APP Servers) - 8.1.7.0.0
 
 CASE 1 - Database Brought up on 1 DB Server in SINGLE Instance WITHOUT the
 OPS parameters Set
 ---
 ACTION 1 - When Firing 32,000 Transactions using 1200 Concurrent Processes
 from 3 APP Servers onto a SINGLE DB Server 
 
 RESULT CPU Utilization = 70 % (on DB Server)
 
 ACTION 2 - When Firing 16,000 Transactions using 600 Concurrent Processes
 from the APP Servers onto the SINGLE DB Server 
 
 RESULT CPU Utilization = 40 % (on DB Server)
 
 
 
 CASE 2 - SAME Database Brought up with 2 Instances on 2 DB Servers on a 2
 Node Cluster by Setting the OPS Parameters 
 
 ACTION  - When Firing 16,000 Transactions using 600 Concurrent Processes
 from the APP Servers onto Each of the 2 DB Servers Simultaneously 
 
 RESULT CPU Utilization Again = 70 % on Each of the 2 DB Servers 
 
 Qs. 1 Why is CPU Utilization on 1 Instance of Database WITH OPS so
 Excessive
 ( = 70 % ) as Compared to that on a SINGLE Instance NON-OPS Database ( =
 40
 % ) for the SAME Transactions Volume ?
 
 NOTE - Transactions Volume Constists of 65 % OLTP  35 % Small Batch
 Transactions which are More Read Than Computation Intensive 
 
 
 SVRMGR Rem System wide wait events for non-background processes (PMON, 
 SVRMGR Rem SMON, etc).  Times are in hundreths of seconds.  Each one of 
 SVRMGR Rem these is a context switch which costs CPU time
 
 SVRMGR selectn1.event Event Name, 
  2   n1.event_count Count,
  3   n1.time_waited Total Time,
  4   round(n1.time_waited/n1.event_count, 2) Avg Time
  5from stats$event n1
  6where n1.event_count  0
  7order by n1.time_waited desc;
 Event Name   Count Total TimeAvg Time 
  - - -
 SQL*Net message from client5878909 246021256 41.85
 row cache lock   33214   1516007 45.64
 buffer busy due to global cache 179233   1263079  7.05
 enqueue  43631710976  16.3
 latch free  380304