<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: SQL SERVER &#8211; Reducing CXPACKET Wait Stats for High Transactional Database</title>
	<atom:link href="http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/</link>
	<description>Personal Notes of Pinal Dave</description>
	<lastBuildDate>Fri, 17 May 2013 15:26:57 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: SQL SERVER &#8211; Weekly Series &#8211; Memory Lane &#8211; #007 &#171; SQL Server Journey with SQL Authority</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-393523</link>
		<dc:creator><![CDATA[SQL SERVER &#8211; Weekly Series &#8211; Memory Lane &#8211; #007 &#171; SQL Server Journey with SQL Authority]]></dc:creator>
		<pubDate>Sat, 15 Dec 2012 01:31:44 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-393523</guid>
		<description><![CDATA[[...] Reducing CXPACKET Wait Stats for High Transactional Database The subject is very complex and I have done my best to simplify the concept. In simpler words, when a parallel operation is created for SQL Query, there are multiple threads for a single query. Each query deals with a different set of the data (or rows). Due to some reasons, one or more of the threads lag behind, creating the CXPACKET Wait Stat. Threads which came first have to wait for the slower thread to finish. The Wait by a specific completed thread is called CXPACKET Wait Stat. [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Reducing CXPACKET Wait Stats for High Transactional Database The subject is very complex and I have done my best to simplify the concept. In simpler words, when a parallel operation is created for SQL Query, there are multiple threads for a single query. Each query deals with a different set of the data (or rows). Due to some reasons, one or more of the threads lag behind, creating the CXPACKET Wait Stat. Threads which came first have to wait for the slower thread to finish. The Wait by a specific completed thread is called CXPACKET Wait Stat. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SQL SERVER &#8211; Weekly Series &#8211; Memory Lane &#8211; #003 &#171; SQL Server Journey with SQL Authority</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-375254</link>
		<dc:creator><![CDATA[SQL SERVER &#8211; Weekly Series &#8211; Memory Lane &#8211; #003 &#171; SQL Server Journey with SQL Authority]]></dc:creator>
		<pubDate>Sat, 17 Nov 2012 01:31:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-375254</guid>
		<description><![CDATA[[...] Reducing CXPACKET Wait Stats for High Transactional Database While engaging in a performance tuning consultation for a client, a situation occurred where they were facing a lot of CXPACKET Waits Stats. The client asked me if I could help them reduce this huge number of wait stats. I usually receive this kind of request from other client as well, but the important thing to understand is whether this question has any merits or benefits, or not. I discusses the same in this article &#8211; a bit long but insightful for sure. [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Reducing CXPACKET Wait Stats for High Transactional Database While engaging in a performance tuning consultation for a client, a situation occurred where they were facing a lot of CXPACKET Waits Stats. The client asked me if I could help them reduce this huge number of wait stats. I usually receive this kind of request from other client as well, but the important thing to understand is whether this question has any merits or benefits, or not. I discusses the same in this article &#8211; a bit long but insightful for sure. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bidhan</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-133221</link>
		<dc:creator><![CDATA[Bidhan]]></dc:creator>
		<pubDate>Fri, 06 May 2011 16:22:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-133221</guid>
		<description><![CDATA[Plesae omit the first post.]]></description>
		<content:encoded><![CDATA[<p>Plesae omit the first post.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bidhan</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-133220</link>
		<dc:creator><![CDATA[Bidhan]]></dc:creator>
		<pubDate>Fri, 06 May 2011 16:20:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-133220</guid>
		<description><![CDATA[Designing a new SQL Server instace that will support a web applicaion, the application is running on 32 nodes.
The server has 128 GB memory and 16 processor cores. The application contains 2 databases and supports both OLAP and OLTP workloads.
On testing some queries run extremely slow and some very fast.
To ensure that the server process database queires as fast as possible.
What should I do for BEST answer?

A. Execute  exec sp_configure &#039;maximum degree of parallesism&#039;, 1

B. Execute  exec sp_configure &#039;maximum degree of parallesism&#039;, 8

C. Use SQL Profiler to identify queries tha experience CXPACKET wait. Add (OPTION MAXDOP 1) to each query.

D. Use SQL Profiler to identify queries tha experience CXPACKET wait. Add (OPTION MAXDOP 8) to each query.

Please answer the question.
Thank you,
Bidhan]]></description>
		<content:encoded><![CDATA[<p>Designing a new SQL Server instace that will support a web applicaion, the application is running on 32 nodes.<br />
The server has 128 GB memory and 16 processor cores. The application contains 2 databases and supports both OLAP and OLTP workloads.<br />
On testing some queries run extremely slow and some very fast.<br />
To ensure that the server process database queires as fast as possible.<br />
What should I do for BEST answer?</p>
<p>A. Execute  exec sp_configure &#8216;maximum degree of parallesism&#8217;, 1</p>
<p>B. Execute  exec sp_configure &#8216;maximum degree of parallesism&#8217;, 8</p>
<p>C. Use SQL Profiler to identify queries tha experience CXPACKET wait. Add (OPTION MAXDOP 1) to each query.</p>
<p>D. Use SQL Profiler to identify queries tha experience CXPACKET wait. Add (OPTION MAXDOP 8) to each query.</p>
<p>Please answer the question.<br />
Thank you,<br />
Bidhan</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Manoj Bhopale</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-122193</link>
		<dc:creator><![CDATA[Manoj Bhopale]]></dc:creator>
		<pubDate>Mon, 07 Mar 2011 06:10:17 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-122193</guid>
		<description><![CDATA[Hi Pinal,
Can you tell, what is the difference between setting MAXDOP to 0 and Setting it to no. of CPUs in the server?

-Manoj]]></description>
		<content:encoded><![CDATA[<p>Hi Pinal,<br />
Can you tell, what is the difference between setting MAXDOP to 0 and Setting it to no. of CPUs in the server?</p>
<p>-Manoj</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: prasad</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-104441</link>
		<dc:creator><![CDATA[prasad]]></dc:creator>
		<pubDate>Thu, 09 Dec 2010 11:12:12 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-104441</guid>
		<description><![CDATA[Hello Pinal,

This was wonderful article and comments.                    Really appreciate it.]]></description>
		<content:encoded><![CDATA[<p>Hello Pinal,</p>
<p>This was wonderful article and comments.                    Really appreciate it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SQLAuthority News – Download Whitepaper – Understanding and Controlling Parallel Query Processing in SQL Server Journey to SQL Authority with Pinal Dave</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-100232</link>
		<dc:creator><![CDATA[SQLAuthority News – Download Whitepaper – Understanding and Controlling Parallel Query Processing in SQL Server Journey to SQL Authority with Pinal Dave]]></dc:creator>
		<pubDate>Tue, 16 Nov 2010 01:31:34 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-100232</guid>
		<description><![CDATA[[...] recently article SQL SERVER – Reducing CXPACKET Wait Stats for High Transactional Database has received many good comments regarding MAXDOP 1 and MAXDOP 0. I really enjoyed reading the [...]]]></description>
		<content:encoded><![CDATA[<p>[...] recently article SQL SERVER – Reducing CXPACKET Wait Stats for High Transactional Database has received many good comments regarding MAXDOP 1 and MAXDOP 0. I really enjoyed reading the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sqlscripter</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-100043</link>
		<dc:creator><![CDATA[sqlscripter]]></dc:creator>
		<pubDate>Mon, 15 Nov 2010 16:22:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-100043</guid>
		<description><![CDATA[Good practice is if you have 8 phy CPU dual cored SQL would see 16. Setting the MAX DOP to 8 would be a good number to see if things settle down with the CX Packet waits.]]></description>
		<content:encoded><![CDATA[<p>Good practice is if you have 8 phy CPU dual cored SQL would see 16. Setting the MAX DOP to 8 would be a good number to see if things settle down with the CX Packet waits.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Snehal Trivedi</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99905</link>
		<dc:creator><![CDATA[Snehal Trivedi]]></dc:creator>
		<pubDate>Mon, 15 Nov 2010 04:14:07 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99905</guid>
		<description><![CDATA[Sir, Pl kindly let me know when r u going to arrange the meet at Gandhinagar?]]></description>
		<content:encoded><![CDATA[<p>Sir, Pl kindly let me know when r u going to arrange the meet at Gandhinagar?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Snehal Trivedi</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99903</link>
		<dc:creator><![CDATA[Snehal Trivedi]]></dc:creator>
		<pubDate>Mon, 15 Nov 2010 04:00:05 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99903</guid>
		<description><![CDATA[Thanks u all masters. I got what i want from above explanations.]]></description>
		<content:encoded><![CDATA[<p>Thanks u all masters. I got what i want from above explanations.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Leonard</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99833</link>
		<dc:creator><![CDATA[Chris Leonard]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 20:54:57 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99833</guid>
		<description><![CDATA[As long as I&#039;m on this thread, I&#039;ll speak up in favor of MAXDOP 1 on a *real* OLTP system.  I mentioned that our group manages servers that turn about 1.5B transactions per day.  About 1B of that is on servers that have MAXDOP = 1, and I&#039;m going to switch it on the others as soon as I can.  I don&#039;t think you should ever go parallel without intending to, at least not until you have a server with a *lot* (as in 64 or more) processors.  The protection offered by MAXDOP 1 is, in my opinion, much more valuable than what you give up in exchange (like the ability to run DBCC in parallel). 

In the interest of full disclosure, I&#039;ll mention that Adam Machanic disagrees with this, and suggests that OLTP should &quot;lean toward&quot; MAXDOP 2, but to me this is just opening up the door to parallel plans that you don&#039;t want to happen, and which will take cycles away from well-behaved queries.  It also would encourage people to write code that needs to go parallel.  With MAXDOP 1 as our server setting, we need to request other MAXDOP settings explicitly in our code, and that&#039;s good because that means it will be obvious to the code reviewer that the query is intended to go parallel.

For OLAP / Reporting / DSS (there&#039;s an old TLA) and similar systems, I agree that MAXDOP 0 could be appropriate, but again, that allows one rogue process to take over your server.  Setting MAXDOP equal to the number of cores (or half the number of cores) and overriding that only when you need more is another strategy that could work.  For those servers, I think it really depends on whether it&#039;s OK with you to have individual requests chewing up all your schedulers at once.

Cheers,
Chris]]></description>
		<content:encoded><![CDATA[<p>As long as I&#8217;m on this thread, I&#8217;ll speak up in favor of MAXDOP 1 on a *real* OLTP system.  I mentioned that our group manages servers that turn about 1.5B transactions per day.  About 1B of that is on servers that have MAXDOP = 1, and I&#8217;m going to switch it on the others as soon as I can.  I don&#8217;t think you should ever go parallel without intending to, at least not until you have a server with a *lot* (as in 64 or more) processors.  The protection offered by MAXDOP 1 is, in my opinion, much more valuable than what you give up in exchange (like the ability to run DBCC in parallel). </p>
<p>In the interest of full disclosure, I&#8217;ll mention that Adam Machanic disagrees with this, and suggests that OLTP should &#8220;lean toward&#8221; MAXDOP 2, but to me this is just opening up the door to parallel plans that you don&#8217;t want to happen, and which will take cycles away from well-behaved queries.  It also would encourage people to write code that needs to go parallel.  With MAXDOP 1 as our server setting, we need to request other MAXDOP settings explicitly in our code, and that&#8217;s good because that means it will be obvious to the code reviewer that the query is intended to go parallel.</p>
<p>For OLAP / Reporting / DSS (there&#8217;s an old TLA) and similar systems, I agree that MAXDOP 0 could be appropriate, but again, that allows one rogue process to take over your server.  Setting MAXDOP equal to the number of cores (or half the number of cores) and overriding that only when you need more is another strategy that could work.  For those servers, I think it really depends on whether it&#8217;s OK with you to have individual requests chewing up all your schedulers at once.</p>
<p>Cheers,<br />
Chris</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pinaldave</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99832</link>
		<dc:creator><![CDATA[pinaldave]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 20:41:21 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99832</guid>
		<description><![CDATA[Let us meet up soon at Gandhinagar.]]></description>
		<content:encoded><![CDATA[<p>Let us meet up soon at Gandhinagar.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pinaldave</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99831</link>
		<dc:creator><![CDATA[pinaldave]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 20:41:01 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99831</guid>
		<description><![CDATA[You are very correct Robert]]></description>
		<content:encoded><![CDATA[<p>You are very correct Robert</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pinaldave</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99830</link>
		<dc:creator><![CDATA[pinaldave]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 20:40:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99830</guid>
		<description><![CDATA[Yeah absolutely, in fact talking to you all the time helped me to come up with this article.]]></description>
		<content:encoded><![CDATA[<p>Yeah absolutely, in fact talking to you all the time helped me to come up with this article.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pinaldave</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99829</link>
		<dc:creator><![CDATA[pinaldave]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 20:40:10 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99829</guid>
		<description><![CDATA[Hello Chris Sir,

First of all - you are very much correct and have grasped the intention. Thanks for your comment, I think this will clear it up if there is any confusion.

Coordinator thread is very important and it waits for incomplete thread. I have earlier dug into that and here is the bit explanation on the subject : http://blog.sqlauthority.com/2010/07/11/sql-server-parallelism-row-per-processor-row-per-thread-thread-0/

Again, as I said, I had great fun attending your sessions. I learned a lot from you to apply to my clients. Meeting you was very good experience and only fortunate will have it.

Many thanks,

Kind Regards,
Pinal]]></description>
		<content:encoded><![CDATA[<p>Hello Chris Sir,</p>
<p>First of all &#8211; you are very much correct and have grasped the intention. Thanks for your comment, I think this will clear it up if there is any confusion.</p>
<p>Coordinator thread is very important and it waits for incomplete thread. I have earlier dug into that and here is the bit explanation on the subject : <a href="http://blog.sqlauthority.com/2010/07/11/sql-server-parallelism-row-per-processor-row-per-thread-thread-0/" rel="nofollow">http://blog.sqlauthority.com/2010/07/11/sql-server-parallelism-row-per-processor-row-per-thread-thread-0/</a></p>
<p>Again, as I said, I had great fun attending your sessions. I learned a lot from you to apply to my clients. Meeting you was very good experience and only fortunate will have it.</p>
<p>Many thanks,</p>
<p>Kind Regards,<br />
Pinal</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nakul Vachhrajani</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99768</link>
		<dc:creator><![CDATA[Nakul Vachhrajani]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 16:48:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99768</guid>
		<description><![CDATA[Hello, Pinal!

As always, great article! I would like to highlight a particular rule of thumb that we use with our Enterprise product. (I agree with you that the correct answer is &quot;it depends&quot;, but at least for our systems, the below seems to be working, making it a golden rule for us).

Snehal: This is what might help you also.

Our system has it&#039;s roots as a legacy system from the days of flat-file database systems (about 20 years ago). It has grown over the years to now use SQL 2008 R2. The point behind mentioning this bit of history is that most of our queries are tuned on running against a single processor. Our warehouse product is, of course a &quot;modern&quot; product (developed in the days of SQL 2000) and quite a few of the OLAP queries are tuned for sound multi-processor performance. 
As a general rule, because our OLTP and OLAP systems are deployed on different physical machines (not only different SQL instances), we tend to recommend that the MAXDOP on the OLTP system be 1 and that on the OLAP be 0.
Doing vice-versa would toast the performance of both systems, as is the case with Snehal.

Snehal: If your reporting and OLTP systems are fused and/or cannot be separated, I would say that your reporting stored procedures should be modified to use MAXDOP 0. The server level setting should be 1.

Thanks &amp; Regards,
Nakul Vachhrajani.]]></description>
		<content:encoded><![CDATA[<p>Hello, Pinal!</p>
<p>As always, great article! I would like to highlight a particular rule of thumb that we use with our Enterprise product. (I agree with you that the correct answer is &#8220;it depends&#8221;, but at least for our systems, the below seems to be working, making it a golden rule for us).</p>
<p>Snehal: This is what might help you also.</p>
<p>Our system has it&#8217;s roots as a legacy system from the days of flat-file database systems (about 20 years ago). It has grown over the years to now use SQL 2008 R2. The point behind mentioning this bit of history is that most of our queries are tuned on running against a single processor. Our warehouse product is, of course a &#8220;modern&#8221; product (developed in the days of SQL 2000) and quite a few of the OLAP queries are tuned for sound multi-processor performance.<br />
As a general rule, because our OLTP and OLAP systems are deployed on different physical machines (not only different SQL instances), we tend to recommend that the MAXDOP on the OLTP system be 1 and that on the OLAP be 0.<br />
Doing vice-versa would toast the performance of both systems, as is the case with Snehal.</p>
<p>Snehal: If your reporting and OLTP systems are fused and/or cannot be separated, I would say that your reporting stored procedures should be modified to use MAXDOP 0. The server level setting should be 1.</p>
<p>Thanks &amp; Regards,<br />
Nakul Vachhrajani.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: RobertPearl</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99759</link>
		<dc:creator><![CDATA[RobertPearl]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 15:59:42 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99759</guid>
		<description><![CDATA[I would be wary of setting MAXDOP=1, effectively turning it off at the server level.  Instead, as Pinal suggested, tune your queries - Parallelism may be caused by missing indexes, and changing the execution path, in the instance where huge table scans occur.

In a hybrid environment (reads and writes) you may want to adjust the maxdop settings accordingly, IF it becomes an issue - exactly monitoring the waitstats for high occurrence of CXPACKETS.  HTH

- RP]]></description>
		<content:encoded><![CDATA[<p>I would be wary of setting MAXDOP=1, effectively turning it off at the server level.  Instead, as Pinal suggested, tune your queries &#8211; Parallelism may be caused by missing indexes, and changing the execution path, in the instance where huge table scans occur.</p>
<p>In a hybrid environment (reads and writes) you may want to adjust the maxdop settings accordingly, IF it becomes an issue &#8211; exactly monitoring the waitstats for high occurrence of CXPACKETS.  HTH</p>
<p>- RP</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Feodor Georgiev</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99738</link>
		<dc:creator><![CDATA[Feodor Georgiev]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 13:12:32 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99738</guid>
		<description><![CDATA[Keep in mind that you can set up the parallelism on a global (server instance level), on query level and also on a query level. Also, keep in mind that you can override the server parallelism setting at any time, i.e. if you set the global parallelism setting to 1, you can still execute some queries by using multiple CPUs. 
Here is an article I wrote about this. http://www.sqlservice.se/allmant/and-some-more-about-parallelism/

Also, keep in mind that if you have a mixed workload on the same instance it is best to find the correct setting for the threshold of parallelism and not the Degree of parallelism, but this is a whole different subject. 

Also, as Snehal is asking, in a case where you have a system with a mixed workload, it would be a good idea to consider segregation of the workload. I usually put systems with different workload types on different instances, or even on virtual machines. I design them like that to begin with because it is easier to manage.]]></description>
		<content:encoded><![CDATA[<p>Keep in mind that you can set up the parallelism on a global (server instance level), on query level and also on a query level. Also, keep in mind that you can override the server parallelism setting at any time, i.e. if you set the global parallelism setting to 1, you can still execute some queries by using multiple CPUs.<br />
Here is an article I wrote about this. <a href="http://www.sqlservice.se/allmant/and-some-more-about-parallelism/" rel="nofollow">http://www.sqlservice.se/allmant/and-some-more-about-parallelism/</a></p>
<p>Also, keep in mind that if you have a mixed workload on the same instance it is best to find the correct setting for the threshold of parallelism and not the Degree of parallelism, but this is a whole different subject. </p>
<p>Also, as Snehal is asking, in a case where you have a system with a mixed workload, it would be a good idea to consider segregation of the workload. I usually put systems with different workload types on different instances, or even on virtual machines. I design them like that to begin with because it is easier to manage.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Leonard</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99689</link>
		<dc:creator><![CDATA[Chris Leonard]]></dc:creator>
		<pubDate>Sun, 14 Nov 2010 05:29:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99689</guid>
		<description><![CDATA[Hi Pinal,

It was nice to meet you this week in Seattle.  I have one comment on this post:

&quot;Note that CXPACKET Wait is done by completed thread and not the one which are unfinished.&quot;

Specifically, it is the coordinator / boss thread that registers CXPACKET waits.  The child / worker threads do not experience this wait state.  The coordinator will always experience this wait as long as at least one child has not yet completed.

Cheers,
Chris]]></description>
		<content:encoded><![CDATA[<p>Hi Pinal,</p>
<p>It was nice to meet you this week in Seattle.  I have one comment on this post:</p>
<p>&#8220;Note that CXPACKET Wait is done by completed thread and not the one which are unfinished.&#8221;</p>
<p>Specifically, it is the coordinator / boss thread that registers CXPACKET waits.  The child / worker threads do not experience this wait state.  The coordinator will always experience this wait as long as at least one child has not yet completed.</p>
<p>Cheers,<br />
Chris</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Snehal Trivedi</title>
		<link>http://blog.sqlauthority.com/2010/11/13/sql-server-reducing-cxpacket-wait-stats-for-high-transactional-database/#comment-99461</link>
		<dc:creator><![CDATA[Snehal Trivedi]]></dc:creator>
		<pubDate>Sat, 13 Nov 2010 04:16:08 +0000</pubDate>
		<guid isPermaLink="false">http://blog.sqlauthority.com/?p=10850#comment-99461</guid>
		<description><![CDATA[You r exactly right Sir, but by setting maxdop to 1 in a hybrid workload ( reporting + oltp ) as in almost cases it will hurt performance. So would it be better to set maxdop to half the no. of cpu to control the wait stat?]]></description>
		<content:encoded><![CDATA[<p>You r exactly right Sir, but by setting maxdop to 1 in a hybrid workload ( reporting + oltp ) as in almost cases it will hurt performance. So would it be better to set maxdop to half the no. of cpu to control the wait stat?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
