High CPU Waits but medium CPU Usage
Hi All,
I'm currently checking one SQL Server after our users complained about poor application performance.
In the Data Collection Report, I can see that most of the waits come from the CPU. However, the average CPU load is just between 30% and 50%. What could be the cause for this?
The queries which generate most of the CPU wait time are SELECTs to a view with around 30 columns (decimals) and 30.000 row and the INSERTS to the tables behind the view. Since the physical ready are 0, I guess the results come all from memory.
How could I reduce the CPU waits? Thanks!
Greetings,
Theodor
>Could you explain why you think that showing CPU utilization as waits is a *good* thing?
In performance analysis you care about reducing the elapsed time. Including CPU use as a wait gives you a unified view of the relative importance of CPU and the other waits. Otherwise you can't know whether to focus on reducing, say lock waits,
IO waits or CPU use.
> I don't see anything to fix!
Yes SOS_SCHEDULER_YEILD and Signal Wait Time are both fine. Those indicate global CPU pressure, ie not having an available CPU to do the work that's ready to be done.
Here the problem is CPU Consumed, which is simply queries chewing up CPU. So look at the queries, find the queries that account for the most CPU and analyze them. Looking for instance for unnecessary table scans on tables in memory, inefficient
joins, running moderately expensive queries too frequently.
I really can't follow that. A wait is when you really are losing elapsed time for external reasons. CPU or reads are what your code really needs to do. Very different categories and should not be added, and that's why they
are tracked separately inside of SQL Server.
OP is asking about 9 millisecond transactions. In most systems I work on, that's already very quick. I've worked on maybe one system in the last few years where the average transaction was faster than that because of the way it was architected
(we called it "chatty"), most OLTP systems I've worked on in recent years are in the 1000++ millisecond ranges and we consider that excellent performance given what we ask of it. If that is reported as a "wait", I could make no sense out of such a report.
As you point out, the DMV report is much more useful.
Fortunately we can break out the numbers and separate the waits from the uses, but I think that SQL Server waits report is highly misleading.
Josh
Similar Messages
-
CPU wait events on ADDM report
Hello,
My Oracle version is:
Connected to Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 Yesterday I was taking a look on an ADDM report and spot the following:
Rationale
SQL statement with SQL_ID "0mgk8gx9hj71d" was executed 777 times and had
an average elapsed time of 42 seconds.
Rationale
Waiting for event "resmgr:cpu quantum" in wait class "Scheduler"
accounted for 34% of the database time spent in processing the SQL
statement with SQL_ID "0mgk8gx9hj71d".After that, I started looking for how ADDM could know that the SQL_ID "0mgk8gx9hj71d" waited 34% on "resmgr:cpu quantum" event. No lucky with that...
The only wait event information related to a given SQL_ID I've found on v$active_session_history (or the AWR persisted table for it), but in the ASH there is no information about CPU wait events like "cpu quantum". When the session is waiting for CPU, there is no event related in v$ash.
So, my question is: where ADDM got the information that the SQL waited 34% of the time on "resmgr:cpu quantum"?
Thanks,
Heitor KirstenHi,
Is a session waiting for CPU resources ("res:cpu quantum") considered as an active session ? Maybe not.
I guess (I made no test) that this maybe the reason why this kind of wait is not shown in the active session history .
Regards
Maurice -
High "CPU + Wait for CPU" event on pl/sql execute operation
I am executing a pl/sql in 256 parallel sessions, on 11G r2 DB (RAC 2 nodes), on a 42core IBM P7 Machine.
PL/sql function opens a cursor on a huge table with around 20M rows and does further processing.
Work-load is equally divided into 256 parallel sessions. 256 parallel sessions are opened by a middle-ware application and each session processes data based on an identifier (there are 256 distinct identifier values).
PL/sql function is comprised of some SQL operations, on which i am experiencing some cluster waits. But CPU + wait for CPU event on pl/sql execute operation is close to 80% of the total execution time.
Top user events:
Event Event Class % Event Avg Active Sessions
CPU + Wait for CPU CPU 80.88 98.15
gc current block 2-way Cluster 3.33 4.05
gc cr block busy Cluster 2.01 2.44
gc cr block 2-way Cluster 1.97 2.39
db file sequential read User I/O 1.81 2.20
Top SQL command type:
SQL Command Type Distinct SQLIDs % Activity Avg Active Sessions
PL/SQL EXECUTE 3 60.99 74.02
SELECT 66 12.90 15.65
INSERT 24 9.89 12.01
UPDATE 9 6.00 7.28
DELETE 2 1.33 1.61Rest of the SQL queries seem to be very optimum, but waits on pl/sql execute operation are causing very low tps.
Can anybody give me some heads-up about where to and what to look for to resolve?
Please let me know if any extra information is required.AWR report :
Header
DB Name DB Id Instance Inst num Startup Time Release RAC
FCR 1304316316 fcrypp1 1 01-12ÔÂ-12 04:12 11.2.0.2.0 YES
Host Name Platform CPUs Cores Sockets Memory (GB)
z4ci2011 AIX-Based Systems (64-bit) 168 42 320.00
Snap Id Snap Time Sessions Cursors/Session
Begin Snap: 40650 01-12ÔÂ-12 06:40:03 1203 5.8
End Snap: 40669 01-12ÔÂ-12 09:50:01 1122 5.3
Elapsed: 189.96 (mins)
DB Time: 22,251.65 (mins)
Load profile
Per Second Per Transaction Per Exec Per Call
DB Time(s): 117.1 19.5 0.00 3.89
DB CPU(s): 16.1 2.7 0.00 0.53
Redo size: 12,759,186.3 2,126,361.0
Logical reads: 181,875.9 30,310.2
Block changes: 54,515.5 9,085.2
Physical reads: 1,340.3 223.4
Physical writes: 8,788.9 1,464.7
User calls: 30.1 5.0
Parses: 26.5 4.4
Hard parses: 0.4 0.1
W/A MB processed: 8.5 1.4
Logons: 0.1 0.0
Executes: 41,176.0 6,862.1
Rollbacks: 1.9 0.3
Transactions: 6.0
Time model statistics
Statistic Name Time (s) % of DB Time
sql execute elapsed time 1,334,935.55 99.99
PL/SQL execution elapsed time 1,180,376.60 88.41
DB CPU 182,904.44 13.7
repeated bind elapsed time 292.83 0.02
sequence load elapsed time 279.75 0.02
parse time elapsed 87.4 0.01
hard parse elapsed time 22.52 0
failed parse elapsed time 5.12 0
connection management call elapsed time 4.61 0
PL/SQL compilation elapsed time 1.91 0
hard parse (sharing criteria) elapsed time 0.49 0
hard parse (bind mismatch) elapsed time 0.39 0
inbound PL/SQL rpc elapsed time 0.1 0
DB time 1,335,099.30
background elapsed time 33,298.67
background cpu time 11,692.76
Operating System Statistics
Statistic Value End Value
AVG_BUSY_TIME 202,428
AVG_IDLE_TIME 936,397
AVG_IOWAIT_TIME 4,124
AVG_SYS_TIME 84,480
AVG_USER_TIME 117,573
BUSY_TIME 34,074,303
IDLE_TIME 157,378,825
IOWAIT_TIME 755,368
SYS_TIME 14,256,010
USER_TIME 19,818,293
LOAD 21 10
OS_CPU_WAIT_TIME 23,770,800
VM_IN_BYTES 20,496
VM_OUT_BYTES 2,086,940,520
PHYSICAL_MEMORY_BYTES 343,597,383,680
NUM_CPUS 168
NUM_CPU_CORES 42
NUM_LCPUS 168
NUM_VCPUS 42
GLOBAL_RECEIVE_SIZE_MAX 41,943,040
GLOBAL_SEND_SIZE_MAX 41,943,040
TCP_RECEIVE_SIZE_DEFAULT 16,384
TCP_RECEIVE_SIZE_MAX 9,223,372,036,854,775,807
TCP_RECEIVE_SIZE_MIN 4,096
TCP_SEND_SIZE_DEFAULT 16,384
TCP_SEND_SIZE_MAX 9,223,372,036,854,775,807
TCP_SEND_SIZE_MIN 4,096
SQL ordered by CPU Time
CPU Time (s) Executions CPU per Exec (s) %Total Elapsed Time (s) %CPU %IO SQL Id SQL Module SQL Text
180,330.13 127 1,419.92 98.59 1,326,401.03 13.60 1.08 04kt8u64udphu BEGIN :1 := ap_ch_eod_shell_en...
8,025.48 9,868,469 0.00 4.39 10,809.88 74.24 9.21 arnkbsnzhha77 ch_txn_shell_115 SELECT * FROM CH_ACCT_MAST WHE...
6,117.64 9,873,495 0.00 3.34 8,557.64 71.49 7.14 8qcryvj294s79 ch_eod_shell_138 UPDATE CH_ACCT_MAST_PAR SET DA...
4,614.71 3,185,313 0.00 2.52 11,130.77 41.46 11.88 b75wwkxw34x2k ch_eod_shell_228 INSERT INTO CH_TMP_XF_GL_TXNS ...
4,374.29 9,866,217 0.00 2.39 5,876.00 74.44 37.88 g22p493ra2zr5 ch_eod_shell_248 UPDATE CH_ACCT_MAST SET BAL_LA...
3,514.57 14,026,451 0.00 1.92 6,274.60 56.01 29.55 7bwhphfnnuqpr ch_eod_shell_59 INSERT INTO CH_ACCT_INT_BREAKU...
3,253.36 3,185,706 0.00 1.78 3,875.42 83.95 9.20 9dq134q9btxq8 ch_eod_shell_74 INSERT INTO CH_ST_CAP_INPUT_TX...
3,131.64 9,875,603 0.00 1.71 5,338.43 58.66 15.55 6xhwk1b37rh1t ch_txn_shell_143 UPDATE CH_ACCT_ATTRIBUTES SET ...
2,954.15 9,878,718 0.00 1.62 5,692.88 51.89 13.22 b4at7uq2hw6r7 ch_sweepin_shell SELECT TRIM(A.COD_PKG) FROM RP...
2,572.01 9,867,277 0.00 1.41 4,605.88 55.84 12.58 54ud0a8tuwwbc ch_txn_shell_17 SELECT * FROM CH_ACCT_ATTRIBUT...
1,941.29 19,730,455 0.00 1.06 5,580.38 34.79 7.02 dx5kng8qu560t ch_txn_shell_59 UPDATE CH_ACTIONS_DUE SET COD_...
1,846.01 9,875,239 0.00 1.01 4,737.66 38.96 12.55 af7f92f13rmy4 ch_txn_shell_85 INSERT INTO CH_ACTIONS_DUE (CO... -
why is it that im lacking cpu power when I'm doing high tasking things but when i run a dinky little game it decides to use all the power possible? its like when i need it its not there and then when i dont its there?
Check here
http://support.apple.com/kb/PH10900http://support.apple.com/kb/PH10900 -
DB CPU wait event is high in AWR
Hello Experts,
Could you please tell me what are the causes of increasing DB CPU wait event ? I mentioned below which i know. please guide me
1. When Buffer cache is more than required then DB CPU wait event occur.
Regards,
SachinSachin.Ichake wrote:
Currently in my database DB CPU has taken 90% DB time . in accordance to resolve it I will gonna follow steps
1. Tune the query which has taken more cpu
2. Decrease Buffer cache size by referring buffer cache advisory.Solve what? You must understand that DB CPU is not shown as a Wait Event but as a Timed Event and so are the other events that are shown in the Top 5 Timed Events category. This is an indication of how much you have used in the comparison of the total DB Time but not necessarily , it's an issue as to do anything in the system, you would need to burn the CPU only. You need to check that how much total CPU time you have with you and then compare it with your DB CPU seconds. In addition to this, you also need to check the CPU consumption from the o/s commands like Top etc. Combining all of such information only would be able to help to understand that whether any tuning needs to be done or not.
Post here the AWR/Statspack report. That would give more clear picture of the things.
Aman.... -
I use Firefox v10.0.2 as default browser on Dell XPS8300 e/w Intel Core i5 & Windows 7 Ultimate and Compaq Presario CQ57 e/w Intel Core i3 & Windows 7 Home. More frequently on the (about 90% of attempts) than the Dell (50% of attempts) Firefox will not display to the screen when I click on icon. When it happens I cannot display other programs. I specifically say display because I believe Firefox has started. To circumvent the problem I installed Process Explorer on both machines and start this program first then click on Firefox icon. When problem occurs I can see Firefox.exe process in Process list; some CPU consumed but, then, no CPU activity. If I click on Firefox icon again another process opens in Process list but with same response - some CPU consumed and then no CPU activity. If I have 2 processes running and kill the 1st process, the 2nd will display and everything from then on is normal. If I do not open a 2nd process but kill the 1st process then click on Firefox icon Firefox is displayed and everything from then on is normal. This problem has occurred since original installation on both new machines. I've updated video drivers in both machines.
Ok, let's see if we can fix this and get it working for you!
First, if you start Firefox in [[safe mode|safe mode]] (restart your computer first, then when you open Firefox, hold down the shift key) does it start up more reliably? This is usually caused by a faulty add-on. If it does help, then restart Firefox, go into the Firefox button, then add-ons, and disable your extensions one by one until you find the trouble maker.
Also, try updating to Firefox 11, it has several bug fixes that might make life easier here.
Just as a few basic troubleshooting steps to make sure we have all the bases covered,
Run all Windows Updates, install all needed service packs, etc.
Update all your plugins (Flash, Java, etc.): [http://www.mozilla.org/plugincheck/ http://www.mozilla.org/plugincheck/].
Download and Install MalwareBytes Anti-Malware, run a full Scan. [http://www.malwarebytes.org/ http://www.malwarebytes.org/]. This helps check that there are no viruses on your computer causing issues. you can uninstall this program after you clean off any infections. -
What is normal range for CPU Wait time Per Dispatch on Hyper-V 2012
Hello.
I am trying to troubleshoot some performance issues with an application that utilizes sql server, which runs in a Hyper-V Guest.
I have found that the ram, cpu, disk i/o all appear to be within normal range.
Before troubleshooting the sql end of things, I wanted to make make sure the vm isn't waiting for cpu time.
In Vmware, the metric for this is " CPU Ready". From what I can tell, the equivilant to this for Hyper-V on server 2012 is:
Hyper-V Hypervisor Virtual processor\CPU Wait time per dispatch.
I have fired this up and been monitoring it and found that the average is around 22,000, maximum 41,000.
The problem is, I have no idea if this is a normal or acceptable range. I can't seem to find any further information on actually interpreting this data, as to what is acceptable and what will cause performance issues etc..
Can anyone help enlighten me further on this?
ThanksHello.
I am trying to troubleshoot some performance issues with an application that utilizes sql server, which runs in a Hyper-V Guest.
I have found that the ram, cpu, disk i/o all appear to be within normal range.
Before troubleshooting the sql end of things, I wanted to make make sure the vm isn't waiting for cpu time.
In Vmware, the metric for this is " CPU Ready". From what I can tell, the equivilant to this for Hyper-V on server 2012 is:
Hyper-V Hypervisor Virtual processor\CPU Wait time per dispatch.
I have fired this up and been monitoring it and found that the average is around 22,000, maximum 41,000.
The problem is, I have no idea if this is a normal or acceptable range. I can't seem to find any further information on actually interpreting this data, as to what is acceptable and what will cause performance issues etc..
Can anyone help enlighten me further on this?
Thanks
Hi,
Hyper-V reports this metric is in nano seconds. So, your average is around 22-41 ms (milliseconds). This is GOOD.
Take this example:
This would be comparable to vCenter VM CPU Ready graph which displays VM CPU Ready time in milliseconds.
Note #1: This measures each virtual core presented to an individual VM. This will be different if you're not using hyper-threading on the host
Note #2: This is scaled to a factor of 0.001, so that the scale on the left is in milliseconds - which is commonly confused with a percentage scale, which is is NOT.
Not to dismiss CPU issues, but generally the first place I look when troubleshooting SQL on a VM is storage access/speed/performance, regardless of what hypervisor is being used. I would verify best practices like putting databases on separate physical
storage that ends up on separate spindles on the storage back end, same for logs, same for temp db, same for temp log,...
Sam Boutros, Senior Consultant, Software Logic, KOP, PA http://superwidgets.wordpress.com (Please take a moment to Vote as Helpful and/or Mark as Answer, where applicable) -
CPU Wait time per dispatch on a Server 2012 R2 Core.
I have a Hyper-V Cluster of 9 Server 2012 R2 core Hosts. I need to measure the CPU wait time, but when I use the remote performance counter a lot of the counters for Hyper-V is missing. How do I monitor this wait time?
Hi Mikroben,
Based on my test , after installing hyper-v role on "Client" then we can see these counters and use it for managing hyper-v server remotely .
Also , please use corresponding "Client" OS to monitor hyper-v server as Brian mentioned .
Best Regards,
Elton Ji
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact [email protected] . -
Help !!!!!!!!!! I upgrade my itunes to 10.5, But, my cpu start to reach 100%, and I cant connect to Itunes store! Morever , I did try something that ppl saying delete all program and reinstall again! It dont work to me! It drive me CRAZY!!!! HELP PLEASE HELP!!!!
It took about an hour to upgrade my iphone. You're also left a couple of times with a blank screen on the iphone whilst it does things in the background which is a bit confusing. Suggest you wait - it starts doing things again (like reload your apps and then your photos etc) after you think it's finished. It's finished only when it says it is.....
-
Query identified as OracleOEM reporting a lot of CPU wait time
We use "Ignite" by Confio to monitor the wait time on our database and I have been watching a query for a while now and it seems to be consuming a lot of resources for what it is doing.
This is the query:
/* OracleOEM */
SELECT m.tablespace_name,
m.used_percent,
(m.tablespace_size - m.used_space)*t.block_size/1024/1024 mb_free
FROM dba_tablespace_usage_metrics m,
dba_tablespaces t,
v$parameter p
WHERE p.name='statistics_level'
AND p.value!='BASIC'
AND t.tablespace_name = m.tablespace_name
And this is the execution plan:
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=152 Cardinality=17 Bytes=2193)
NESTED LOOPS (Cost=152 Cardinality=17 Bytes=2193)
NESTED LOOPS (Cost=152 Cardinality=17 Bytes=2125)
MERGE JOIN (CARTESIAN) (Cost=149 Cardinality=17 Bytes=1785)
HASH JOIN (Cost=2 Cardinality=1 Bytes=49)
FIXED TABLE (FULL) OF X$KSPPI (TABLE (FIXED)) (Cost=1 Cardinality=1 Bytes=31)
FIXED TABLE (FULL) OF X$KSPPCV (TABLE (FIXED)) (Cost=1 Cardinality=1897 Bytes=34146)
BUFFER (SORT) (Cost=148 Cardinality=502 Bytes=28112)
VIEW OF DBA_TABLESPACE_USAGE_METRICS (VIEW) (Cost=147 Cardinality=502 Bytes=28112)
SORT (UNIQUE) (Cost=147 Cardinality=502 Bytes=19122)
UNION-ALL
SORT (AGGREGATE) (Cardinality=1 Bytes=8)
TABLE ACCESS (BY INDEX ROWID) OF RECYCLEBIN$ (TABLE) (Cost=4 Cardinality=389 Bytes=3112)
INDEX (RANGE SCAN) OF RECYCLEBIN$_TS (INDEX) (Cost=1 Cardinality=388)
SORT (AGGREGATE) (Cardinality=1 Bytes=14)
FIXED TABLE (FULL) OF X$KTFBHC (TABLE (FIXED)) (Cost=0 Cardinality=1 Bytes=14)
SORT (AGGREGATE) (Cardinality=1 Bytes=8)
TABLE ACCESS (BY INDEX ROWID) OF RECYCLEBIN$ (TABLE) (Cost=4 Cardinality=389 Bytes=3112)
INDEX (RANGE SCAN) OF RECYCLEBIN$_TS (INDEX) (Cost=1 Cardinality=388)
SORT (AGGREGATE) (Cardinality=1 Bytes=14)
FIXED TABLE (FULL) OF X$KTFBHC (TABLE (FIXED)) (Cost=0 Cardinality=1 Bytes=14)
HASH (GROUP BY) (Cost=89 Cardinality=500 Bytes=19000)
MERGE JOIN (Cost=87 Cardinality=500 Bytes=19000)
TABLE ACCESS (CLUSTER) OF TS$ (CLUSTER) (Cost=86 Cardinality=426 Bytes=9372)
INDEX (FULL SCAN) OF I_TS# (INDEX (CLUSTER)) (Cost=1 Cardinality=1)
SORT (JOIN) (Cost=1 Cardinality=501 Bytes=8016)
FIXED TABLE (FULL) OF X$KTTEFINFO (TABLE (FIXED)) (Cost=0 Cardinality=501 Bytes=8016)
HASH (GROUP BY) (Cost=52 Cardinality=1 Bytes=38)
NESTED LOOPS (Cost=50 Cardinality=1 Bytes=38)
FIXED TABLE (FULL) OF X$KTTEFINFO (TABLE (FIXED)) (Cost=0 Cardinality=251 Bytes=4769)
TABLE ACCESS (CLUSTER) OF TS$ (CLUSTER) (Cost=1 Cardinality=1 Bytes=19)
INDEX (UNIQUE SCAN) OF I_TS# (INDEX (CLUSTER)) (Cost=1 Cardinality=1)
HASH (GROUP BY) (Cost=5 Cardinality=1 Bytes=84)
HASH JOIN (Cost=3 Cardinality=1 Bytes=84)
NESTED LOOPS
NESTED LOOPS (Cost=3 Cardinality=1 Bytes=65)
HASH JOIN (Cost=2 Cardinality=1 Bytes=49)
FIXED TABLE (FULL) OF X$KSPPI (TABLE (FIXED)) (Cost=1 Cardinality=1 Bytes=31)
FIXED TABLE (FULL) OF X$KSPPCV (TABLE (FIXED)) (Cost=1 Cardinality=1899 Bytes=34182)
INDEX (UNIQUE SCAN) OF I_TS1 (INDEX (UNIQUE)) (Cost=1 Cardinality=1)
TABLE ACCESS (BY INDEX ROWID) OF TS$ (CLUSTER) (Cost=1 Cardinality=1 Bytes=16)
FIXED TABLE (FULL) OF X$KTTEFINFO (TABLE (FIXED)) (Cost=0 Cardinality=251 Bytes=4769)
TABLE ACCESS (BY INDEX ROWID) OF TS$ (CLUSTER) (Cost=1 Cardinality=1 Bytes=20)
INDEX (UNIQUE SCAN) OF I_TS1 (INDEX (UNIQUE)) (Cost=1 Cardinality=1)
FIXED TABLE (FIXED INDEX) OF X$KCFISTSA (ind:1) (TABLE (FIXED)) (Cost=0 Cardinality=1 Bytes=4)
My question is two fold... does anybody know where in OEM you can control the execution of this query? I would like to reduce the frequency it is run, or if that is not a good idea does anybody have any ideas from a tuning perspective?
Ignite is reporting 1,440 executions, 621,776,455 buffer gets, and 2 hours of CPU wait time per day.
Thanks in advance,
ZackA typical question for this forum.
We use Oracle, we can't remember which version, and we can't be bothered to post it.
We don't know Oracle, so we use a third party product (Ignite from Confio) to perform redundant monitoring on our databases, which is already being performed by Oracle Enterprise Manager, for free.
Instead of trying to use the products which come with Oracle, we would like to wreck functionality, by tampering with things like frequency, and/or even adjusting Oracle provided queries, consequently invalidating our support contract for Oracle.
And, no, we are not aware, provided the database is doing nothing, queries like this one will automatically surface in the list of top <n> queries.
I would suggest you start to learn Oracle and dump Ignite. It is of no use to monitor your database with two tools, and OEM is fully integrated in Oracle.
Sybrand Bakker
Senior Oracle DBA -
I've deleted all of mail, including trash and sent folders, but my mail usage stays high at around 1.4 gb. What am I missing?
It is possible it just hasn' updated yet.
Try resetting:
Hold the Sleep/Wake and Home buttons and don’t let go until the screen goes dark and the Apple logo appears (no data will be lost) -
but my cpu crashed an everything was erased, i dont know how to reinstall it, it says that my redmeption cone was used under another adobe name, its my buisness cpu, so i honestly dont remeber how we did it before or how to reinstall this again, how do i get my serial number again
1 (800) 833-6687 Adobe Systems, Customer service
-
High Enqueue Waits in Statspack Report
Hi Everybody,
Oracle Version:Oracle9i Enterprise Edition Release 9.2.0.7.0 - 64bit Production
OS:Solaris 64 bit
Statspack Report is showing High Enqueue Waits
Here is a Snapshot.....
STATSPACK report for
DB Name DB Id Instance Inst Num Release Cluster Host
XXXXX 434917312 XXXXX 1 9.2.0.7.0 NO INgenius1
Snap Id Snap Time Sessions Curs/Sess Comment
Begin Snap: 1064 24-Sep-08 06:00:01 1,333 19.6
End Snap: 1065 24-Sep-08 07:00:01 1,344 19.7
Elapsed: 60.00 (mins)
Cache Sizes (end)
~~~~~~~~~~~~~~~~~
Buffer Cache: 1,152M Std Block Size: 8K
Shared Pool Size: 752M Log Buffer: 1,536K
Load Profile
~~~~~~~~~~~~ Per Second Per Transaction
Redo size: 27,771.53 1,196.23
Logical reads: 777.20 33.48
Block changes: 180.58 7.78
Physical reads: 33.25 1.43
Physical writes: 7.51 0.32
User calls: 76.89 3.31
Parses: 23.29 1.00
Hard parses: 0.27 0.01
Sorts: 0.42 0.02
Logons: 0.05 0.00
Executes: 88.69 3.82
Transactions: 23.22
% Blocks changed per Read: 23.23 Recursive Call %: 61.50
Rollback per transaction %: 0.00 Rows per Sort: 738.76
Instance Efficiency Percentages (Target 100%)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Buffer Nowait %: 100.00 Redo NoWait %: 100.00
Buffer Hit %: 96.90 In-memory Sort %: 99.67
Library Hit %: 99.76 Soft Parse %: 98.84
Execute to Parse %: 73.74 Latch Hit %: 99.98
Parse CPU to Parse Elapsd %: 94.38 % Non-Parse CPU: 94.45
Shared Pool Statistics Begin End
Memory Usage %: 86.56 87.54
% SQL with executions>1: 50.57 63.10
% Memory for SQL w/exec>1: 10.02 14.63
Top 5 Timed Events
~~~~~~~~~~~~~~~~~~ % Total
Event Waits Time (s) Ela Time
enqueue 19,553 57,405 98.39
db file sequential read 44,161 384 .66
CPU time 333 .57
log file parallel write 166,602 82 .14
log file sync 67,683 71 .12
Wait Events for DB: XXXXX Instance: XXXXX Snaps: 1064 - 1065
-> s - second
-> cs - centisecond - 100th of a second
-> ms - millisecond - 1000th of a second
-> us - microsecond - 1000000th of a second
-> ordered by wait time desc, waits desc (idle events last)
Avg
Total Wait wait Waits
Event Waits Timeouts Time (s) (ms) /txn
enqueue 19,553 19,540 57,405 2936 0.2
db file sequential read 44,161 0 384 9 0.5
log file parallel write 166,602 0 82 0 2.0
log file sync 67,683 0 71 1 0.8
db file scattered read 6,676 0 54 8 0.1
db file parallel write 1,135 0 7 6 0.0
direct path read 1,117 0 3 3 0.0
SQL*Net more data to client 3,932 0 2 0 0.0
control file parallel write 1,200 0 2 1 0.0
control file sequential read 1,389 0 1 1 0.0
PX Deq: Execute Reply 112 0 0 4 0.0
direct path write 752 0 0 1 0.0
db file parallel read 9 0 0 42 0.0
Background Wait Events for DB: XXXXX Instance: XXXXX Snaps: 1064 - 10
-> ordered by wait time desc, waits desc (idle events last)
Avg Wt Wait
Eq Requests Succ Gets Failed Gets Waits Time (ms) Time (s)
TC 25 24 0 4 32.00 0
TX 84,615 84,605 0 3 8.33 0
HW 118 118 0 2 2.00 0
PS 29 25 4 2 1.00 0
Here frm Statspack Report we can see that enqueue type- TX is taking up most of the resources.......
I want to find out which sql statements are causing this high enqueue waits......
Any Help Appreciated....
Regards,
Prosenjit MukherjeeHi All,
Here is the Statspack Report..........
STATSPACK report for
DB Name DB Id Instance Inst Num Release Cluster Host
XXXXX 434917312 XXXXX 1 9.2.0.7.0 NO XXXXXxxx1
Snap Id Snap Time Sessions Curs/Sess Comment
Begin Snap: 1064 24-Sep-08 06:00:01 1,333 19.6
End Snap: 1065 24-Sep-08 07:00:01 1,344 19.7
Elapsed: 60.00 (mins)
Cache Sizes (end)
~~~~~~~~~~~~~~~~~
Buffer Cache: 1,152M Std Block Size: 8K
Shared Pool Size: 752M Log Buffer: 1,536K
Load Profile
~~~~~~~~~~~~ Per Second Per Transaction
Redo size: 27,771.53 1,196.23
Logical reads: 777.20 33.48
Block changes: 180.58 7.78
Physical reads: 33.25 1.43
Physical writes: 7.51 0.32
User calls: 76.89 3.31
Parses: 23.29 1.00
Hard parses: 0.27 0.01
Sorts: 0.42 0.02
Logons: 0.05 0.00
Executes: 88.69 3.82
Transactions: 23.22
% Blocks changed per Read: 23.23 Recursive Call %: 61.50
Rollback per transaction %: 0.00 Rows per Sort: 738.76
Instance Efficiency Percentages (Target 100%)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Buffer Nowait %: 100.00 Redo NoWait %: 100.00
Buffer Hit %: 96.90 In-memory Sort %: 99.67
Library Hit %: 99.76 Soft Parse %: 98.84
Execute to Parse %: 73.74 Latch Hit %: 99.98
Parse CPU to Parse Elapsd %: 94.38 % Non-Parse CPU: 94.45
Shared Pool Statistics Begin End
Memory Usage %: 86.56 87.54
% SQL with executions>1: 50.57 63.10
% Memory for SQL w/exec>1: 10.02 14.63
Top 5 Timed Events
~~~~~~~~~~~~~~~~~~ % Total
Event Waits Time (s) Ela Time
enqueue 19,553 57,405 98.39
db file sequential read 44,161 384 .66
CPU time 333 .57
log file parallel write 166,602 82 .14
log file sync 67,683 71 .12
Wait Events for DB: XXXXX Instance: XXXXX Snaps: 1064 - 1065
-> s - second
-> cs - centisecond - 100th of a second
-> ms - millisecond - 1000th of a second
-> us - microsecond - 1000000th of a second
-> ordered by wait time desc, waits desc (idle events last)
Avg
Total Wait wait Waits
Event Waits Timeouts Time (s) (ms) /txn
enqueue 19,553 19,540 57,405 2936 0.2
db file sequential read 44,161 0 384 9 0.5
log file parallel write 166,602 0 82 0 2.0
log file sync 67,683 0 71 1 0.8
db file scattered read 6,676 0 54 8 0.1
db file parallel write 1,135 0 7 6 0.0
direct path read 1,117 0 3 3 0.0
SQL*Net more data to client 3,932 0 2 0 0.0
control file parallel write 1,200 0 2 1 0.0
control file sequential read 1,389 0 1 1 0.0
PX Deq: Execute Reply 112 0 0 4 0.0
direct path write 752 0 0 1 0.0
db file parallel read 9 0 0 42 0.0
process startup 6 0 0 44 0.0
SQL*Net break/reset to clien 296 0 0 1 0.0
PX Deq: Signal ACK 3 1 0 33 0.0
latch free 17 4 0 3 0.0
LGWR wait for redo copy 286 0 0 0 0.0
PX Deq: Join ACK 3 0 0 2 0.0
PX Deq: Parse Reply 4 0 0 1 0.0
buffer busy waits 12 0 0 0 0.0
PX Deq Credit: need buffer 4 0 0 0 0.0
PX Deq: Table Q Sample 1 0 0 0 0.0
SQL*Net message from client 204,628 0 4,620,111 22578 2.4
virtual circuit status 120 120 3,516 29297 0.0
PX Idle Wait 753 749 1,470 1953 0.0
SQL*Net more data from clien 20,540 0 3 0 0.2
PX Deq: Execution Msg 128 0 2 13 0.0
SQL*Net message to client 204,628 0 0 0 2.4
Background Wait Events for DB: XXXXX Instance: XXXXX Snaps: 1064 - 10
-> ordered by wait time desc, waits desc (idle events last)
Avg
Total Wait wait Waits
Event Waits Timeouts Time (s) (ms) /txn
log file parallel write 166,634 0 82 0 2.0
db file parallel write 1,134 0 8 7 0.0
control file parallel write 1,200 0 2 1 0.0
control file sequential read 1,327 0 1 1 0.0
db file scattered read 44 0 0 10 0.0
db file sequential read 25 0 0 3 0.0
direct path read 23 0 0 3 0.0
rdbms ipc reply 67 0 0 0 0.0
LGWR wait for redo copy 286 0 0 0 0.0
direct path write 23 0 0 0 0.0
buffer busy waits 2 0 0 0 0.0
rdbms ipc message 86,933 3,437 20,199 232 1.0
pmon timer 1,194 1,194 3,504 2935 0.0
smon timer 17 8 3,239 ###### 0.0
Enqueue activity for DB: XXXXX Instance: XXXXX Snaps: 1064 - 1065
-> Enqueue stats gathered prior to 9i should not be compared with 9i data
-> ordered by Wait Time desc, Waits desc
Avg Wt Wait
Eq Requests Succ Gets Failed Gets Waits Time (ms) Time (s)
TC 25 24 0 4 32.00 0
TX 84,615 84,605 0 3 8.33 0
HW 118 118 0 2 2.00 0
PS 29 25 4 2 1.00 0
End of Report (this is not the entire report,only posted part of it,getting error page when trying to post the entire report)
Regards,
Prosenjit Mukherjee -
High roll wait time, gui time and processing time
Hi all,
We are having a performance issue with the system at the moment. After running ST03N and STAD, we have determined that we are having abnormally high roll-wait, GUI and processing times.
Here are some results from STAD:
CPU time: 2956ms
Processing time: 4417ms
Roll wait time: 1319ms
GUI Time: 2859ms
Can someone direct me towards finding the problem?
If you need more information please let me know. I would post a screenshot if I was able to.
Thanks,
HLHi,
Regarding Performance Of SAP system it will not be possible to Come to conclusion with the one Single data.
GUI time is basically the time spent in front end i.e Your Network load or such time
Coming to CPU time Can you see ST06 what is the CPU Utilization of your system?
Roll Wait time is the time Spent in buffer if you can share us the OS and Memory configuration.
We can Try to tune the Roll memory ( extended memory tuning) so that we can try to reduce the Roll time.
If possible try to find the Top Dialog Response Time Transaction Is it Standard or for Z Programs.
https://cw.sdn.sap.com/cw/docs/DOC-14387
Go through this link you might get clear idea of performance.
Thanks & Regards,
Balaji.S -
High Database Waits of type "other"
I justed added cpu patch 19 to my 11.1.0.7 windows 2008 database. Now I have a large amount of database waiting of type "other". See below.
Investigate the cause for high "unspecified wait event" waits. Refer to Oracle's "Database Reference" for the description of this wait event.
Action Investigate the cause for high "unspecified wait event" waits in Service "SYS$USERS".
Action Investigate the cause for high "unspecified wait event" waits in Module "DBMS_SCHEDULER"
Could stale statistics cause this and if so what is the correct way to gather system statistics. Do I unlock sys schema , gather data dictionary stats, and then lock sys schema?
Other thoughts what might cause this?
Thanks,
KathieHi,
You should run the following.
DBMS_STATS.GATHER_SYSTEM_STATS (
gathering_mode VARCHAR2 DEFAULT 'NOWORKLOAD',
interval INTEGER DEFAULT NULL,
stattab VARCHAR2 DEFAULT NULL,
statid VARCHAR2 DEFAULT NULL,
statown VARCHAR2 DEFAULT NULL);
dbms_stats.gather_system_stats(gathering_mode=>'start');
dbms_stats.gather_system_stats(gathering_mode=>'stop');
System statistics will start gathering afetr you run the command with start option. System stats gathering will stop and may show them locked after you run stop.
NOWORKLOAD: Will capture characteristics of the I/O system. Gathering may take a few minutes and depends on the size of the database. During this period Oracle will estimate the average read seek time and transfer speed for the I/O system. This mode is suitable for the all workloads. Oracle recommends to run GATHER_SYSTEM_STATS ('noworkload') after creation of the database and tablespaces. To fine tune system statistics for the workload use 'START' and 'STOP' or 'INTERVAL' options. If you gather both 'NOWORKLOAD' and workload specific (statistics collected using 'INTERVAL' or 'START' and 'STOP' ), the workload statistics will be used by optimizer. Collected components: cpuspeednw, ioseektim, iotfrspeed.
INTERVAL: Captures system activity during a specified interval. This works in combination with the interval parameter. You should provide an interval value in minutes, after which system statistics are created or updated in the dictionary or stattab. You can use GATHER_SYSTEM_STATS (gathering_mode=>'STOP') to stop gathering earlier than scheduled. Collected components: maxthr, slavethr, cpuspeed, sreadtim, mreadtim, mbrc.
START | STOP: Captures system activity during specified start and stop times and refreshes the dictionary or stattab with statistics for the elapsed period. Interval value is ignored. Collected components: maxthr, slavethr, cpuspeed, sreadtim, mreadtim, mbrc.
interval
Time, in minutes, to gather statistics. This parameter applies only when gathering_mode='INTERVAL'.
Regards
Maybe you are looking for
-
How to set the lifetime properties of a document
Hi Experts, Do somebody know how to set the lifetime attributes "valid from" and "valid to" via java of the lifetime properties? Which java class should I use? Do somebody have an example for this issue maybe? Thanks in advanced! Best Regards, Markus
-
Why is Preview selection greyed out in Font Book?
I have a problem with Font Book - not the first. All my fonts seem to be listed fine, but when I go to the Preview menu, which is currently on the default selection of 'Sample', I cannot select either of the other two options. They are both greyed ou
-
Installed windows XP on Sun ULtra 40, networking on solaris stopped working
Hi, The scenario is following. I have three separet hard drives. On one I have Solaris, on seconed one RHEL 4 and on third one Windows XP 64. The windows and third had drive have been installed last. Before everything was working smoothly. I dual boo
-
How can I make firefox prefill username and password
un and pw are still remembered, I can see them, however Firefox stopped prefilling them and now I have to manually enter them every time.
-
How do I load Adobe ExportPDF to my new desktop computer?
I have a current subscription and need to apply it to my new computer