March 15, 2011 at 9:08 am
Hello all,
What are some considerations or best practices for parallelism on a reporting server. I seem to be having problems with large reports using up all the processors (of which there are 16), and creating blocks and time-outs for items in the queue.
Thanks,
DK
March 15, 2011 at 9:18 am
My recommendation for a server with 16 CPUs is no more than half, so:
sp_configure 'max degree of parallelism',8
reconfigure with override
If you examine the wait stats on your server, I suspect parallel query wait (CXPACKET) will be your highest. Try lowering the MaxDOP, resetting the wait stats and monitor.
March 15, 2011 at 9:27 am
nivek-224024,
Thanks for the quick reply! It was extremely helpful.
DK
March 15, 2011 at 9:55 am
Even on a reporting server you might want to consider changing the defaul threshold for parallelism to a higher number. I wouldn't go as high as on an OLTP system, but the default value of 5 is a little low That could help.
"The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
- Theodore Roosevelt
Author of:
SQL Server Execution Plans
SQL Server Query Performance Tuning
March 15, 2011 at 10:11 am
Grant,
Thanks for the advice, I am still working it out. Why wouldn't you set it as high as a OLTP? Sorry if that was too open-ended.
DK
March 15, 2011 at 11:01 am
Well, on an OLTP system, typically the cost of splitting the query across several CPUs, executing, then bringing the results back together would actually be a more expensive (time mainly) operation than simply executing on one processor.
OLTP queries typically request smaller sets of data. Larger, long-running queries can typically benefit from some parallel query execution, but even that is on a case-by-case basis, in my opinion.
March 15, 2011 at 11:46 am
nivek-224024,
Thanks for the explanation.
DK
March 15, 2011 at 11:47 am
I'd say Nivek summed it up fairly well there.
"The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
- Theodore Roosevelt
Author of:
SQL Server Execution Plans
SQL Server Query Performance Tuning
March 15, 2011 at 12:00 pm
Anyway you should set it if you don't want a single query eating up all your cpu capacity. ( a risk when leaving it at the default 0 )
Johan
Learn to play, play to learn !
Dont drive faster than your guardian angel can fly ...
but keeping both feet on the ground wont get you anywhere :w00t:
- How to post Performance Problems
- How to post data/code to get the best help[/url]
- How to prevent a sore throat after hours of presenting ppt
press F1 for solution, press shift+F1 for urgent solution 😀
Need a bit of Powershell? How about this
Who am I ? Sometimes this is me but most of the time this is me
March 15, 2011 at 1:05 pm
Thanks to all for your time. I appreciate your comments.
DK
Viewing 10 posts - 1 through 9 (of 9 total)
You must be logged in to reply to this topic. Login to reply