Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase ««1234»»»

CXPACKET wait type Expand / Collapse
Author
Message
Posted Tuesday, October 21, 2008 5:54 PM


SSCarpal Tunnel

SSCarpal TunnelSSCarpal TunnelSSCarpal TunnelSSCarpal TunnelSSCarpal TunnelSSCarpal TunnelSSCarpal TunnelSSCarpal TunnelSSCarpal Tunnel

Group: General Forum Members
Last Login: 2 days ago @ 8:43 PM
Points: 4,128, Visits: 5,836
chileu17 (10/21/2008)
Sorry SqlGuru I think I couldn't explain to you my question. I do understand your point, BUT how do I implement what you are talking about?More indexes?new transactions?I know that the most probable answer is that it depends on every case right lol well I have a dedicated server with no other apps running on it. It runs on Windows server 2003 with a HD of 150 gb with a redundant SAN. We have installed a RAID 5 on it please any suggestions are welcome. Thanks in advance again.


Hmm, I thought that "add more RAM" and "add more physical spindles" was pretty self-explanatory. :D

It really is that simple though. Get data through the CPUs more quickly (which RAM and IO perf boost will do) and CXPACKETwaits drop down.

Other things: cut read requirements by a) better indexing b) refactoring query to reduce data pulled/accessed, lower maxdop (already covered in depth), ensure all IO config options are set right between sql server and SAN (HBA [queue depth?, cache ratios and size?), SAN cache, drivers up to date?, etc). There are other things as well.

Best is to get a pro to come in and give your system a performance review. We have hardly touched the surface here.


Best,

Kevin G. Boles
SQL Server Consultant
SQL MVP 2007-2012
TheSQLGuru at GMail
Post #589519
Posted Wednesday, October 22, 2008 6:03 PM
SSCommitted

SSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommitted

Group: General Forum Members
Last Login: Yesterday @ 2:42 PM
Points: 1,851, Visits: 3,575
Well-tuned queries - in an OLTP system - genarally should not parallellize. This is almost certainly a case of a suboptimally tuned system.

Is auto-updatestats, auto-createstats turned on for your databases?

Do you regularly carry out index defragmentation?

Are your queries properly indexed (as was already mentioned)?

Is your tempdb properly configured?

These are some of the questions to consider.


__________________________________________________________________________________

Turbocharge Your Database Maintenance With Service Broker: Part 2
Turbocharge Your Database Maintenance With Service Broker: Part 1
Real-Time Tracking of Tempdb Utilization Through Reporting Services
Monitoring Database Blocking Through SCOM 2007 Custom Rules and Alerts
Preparing for the Unthinkable - a Disaster/Recovery Implementation
Post #590191
Posted Wednesday, October 22, 2008 6:11 PM
SSCommitted

SSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommitted

Group: General Forum Members
Last Login: Yesterday @ 2:42 PM
Points: 1,851, Visits: 3,575
Also, gather some of your largest tables, those most actively queried in your system.

Do "sp_helpindex tblName" to get a list of indexes for each table.

Run "DBCC SHOW_STATISTICS ('tblName', 'idxName')" on the tables and select indexes.

Is the Rows Sampled equal to the Total Rows in the index?

If not, you may want to run "UPDATE STATISTICS tblName WITH FULLSCAN" to ensure stats is maintained on the table on the basis of the full data distribution (as opposed to a subset sample). I have often found this to solve my performance problems.


__________________________________________________________________________________

Turbocharge Your Database Maintenance With Service Broker: Part 2
Turbocharge Your Database Maintenance With Service Broker: Part 1
Real-Time Tracking of Tempdb Utilization Through Reporting Services
Monitoring Database Blocking Through SCOM 2007 Custom Rules and Alerts
Preparing for the Unthinkable - a Disaster/Recovery Implementation
Post #590194
Posted Tuesday, June 30, 2009 6:35 AM
SSC Veteran

SSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC VeteranSSC Veteran

Group: General Forum Members
Last Login: Wednesday, April 02, 2014 7:02 AM
Points: 214, Visits: 439
WE had an IO problem on RAID 5. Change to RAID 1 0 if possible. It will improve IO alot. Add more physical drives to the SAN drive. Put the log files on a different SAN drive with different physical drives.

Also get your SAN provider to diagnose the SAN. We have a cache problem that fills up on the controller and then slows the SAN performance drastically.

This will all improve your IO capabilities.


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
I see stupid people
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Post #744356
Posted Monday, July 20, 2009 7:21 AM
Valued Member

Valued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued Member

Group: General Forum Members
Last Login: 2 days ago @ 1:57 AM
Points: 61, Visits: 383
I've seen this problem more often on SQL 2005 than on SQL 2000 instances, but I must agree servers tend to get more cores everyday. On some instances used mainly for OLTP I set the maximum number of processors per query to one, thereby effectively disableing parallel queries. This sometimes improves both query performance and throughput but it is not an options if you want to perform some serious reporting on a server.

But there is no general solution. I/O seems to be the bottleneck but in some cases I could greatly reduce query execution time (and CXPACKET waits) by using the OPTION LOOP JOIN. No two cases are the same and if a SAN is involved, things are getting more complicated because most SAN experts are not used to the demands of SQL server regarding caching, write order, and many other aspects of disk I/O. Getting a SQL server up to speed on a SAN is far from simple, and requires a specialist with knowledge and experience on both subjects.

As mentioned by others, up-to-date statistics won't ever harm your queries. More memory does not always improve performance; a very large table might still not fit into memory, and thus a table scan on this table might still require massive disk I/O. In this case profiling will offer you some insight in missing indexes that could increase performance, but as always, it depends ...
Post #755748
Posted Monday, January 04, 2010 6:10 PM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Wednesday, January 09, 2013 5:22 PM
Points: 1, Visits: 45
I'm having similar issues on a report i'm working on which does a lot of select into temorary tables before it does the final select that returns the results. I tried changing the MAXPOD to 2 and then 4 (out of a total of 8) for every single select in my stored procedure but have had no luck yet. Could be because of my use of temporary tables to hold results? Any other suggestions for getting rid of CXPACKET wait type?
Post #841814
Posted Monday, January 04, 2010 11:53 PM


SSC-Forever

SSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-Forever

Group: General Forum Members
Last Login: Today @ 7:25 AM
Points: 41,528, Visits: 34,443
Please post new questions in a new thread in future.

If you look while the query is running, there will be at least one thread that doesn't have a cxpacket, that has a different wait type. Whatever that is is what's holding the query up. What is it?

I usually recommend generic performance tuning (tune the query, tune the indexes) before panicking over CXPackets. It's quit common to see them on non-optimised queries.



Gail Shaw
Microsoft Certified Master: SQL Server 2008, MVP
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass

Post #841862
Posted Wednesday, January 06, 2010 7:43 AM
Old Hand

Old HandOld HandOld HandOld HandOld HandOld HandOld HandOld Hand

Group: General Forum Members
Last Login: Yesterday @ 4:57 AM
Points: 398, Visits: 1,711
they're also common when your server has ran out of VAS (Virtual Address Space)

Chris

Blog:- chrisjarrintaylor.co.uk
Twitter:- @SQLGeordie
Post #842807
Posted Wednesday, January 06, 2010 8:06 AM


SSC-Forever

SSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-Forever

Group: General Forum Members
Last Login: Today @ 7:25 AM
Points: 41,528, Visits: 34,443
Swirl, please explain that?


Gail Shaw
Microsoft Certified Master: SQL Server 2008, MVP
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass

Post #842826
Posted Wednesday, January 06, 2010 8:12 AM
Old Hand

Old HandOld HandOld HandOld HandOld HandOld HandOld HandOld Hand

Group: General Forum Members
Last Login: Yesterday @ 4:57 AM
Points: 398, Visits: 1,711
I wrote a blog regarding issues i was having with that:
http://www.sqlservercentral.com/blogs/christaylor/archive/2009/05/04/sql-server-cpu-s-at-100-anyone-checked-the-vas-virtual-address-space.aspx

I have however just realised i've negated to include in the blog the fact that we got a lot of CXPacket wait types when we hit this issue.



Chris

Blog:- chrisjarrintaylor.co.uk
Twitter:- @SQLGeordie
Post #842837
« Prev Topic | Next Topic »

Add to briefcase ««1234»»»

Permissions Expand / Collapse