SQL Server Performance Tuning

Increasing Cost Threshold For Parallelism May Improve Your SQL Server Performance

Updated
3 min read
Written by
Mark Varnas

What is the CTP in SQL Server?

The cost threshold for parallelism (CTP) is the setting that controls at what point a SQL Server query can “go parallel” using multiple CPU cores.

Why should you not use the default value?

Adjusting the cost threshold for parallelism can make a significant performance improvement by a simple on the fly change. You can often resolve CPU, RAM, and disk bottlenecks.

Microsoft set the CTP to 5 by default in the 1990s when they were developing SQL Server 2000.

Defaults aren’t reasonable when based on hardware that’s more than 20 years old!

When query goes parallel, you don’t necessarily want it to use all the CPU cores, as one bad query will impact everything SQL Server is doing.

Also, the default value mostly can cause a large number of fast queries to run in parallel, that would be faster if they run serially.

How to set the cost threshold for parallelism

Given the speed and size of today’s hardware, a better value is 45 or 50 for the cost threshold for parallelism.

In some instances, you may still see high CPU usage and excessive CXPACKET wait types even after setting CTP. In this case, you may need to drill a little deeper and may also need to evaluate your MAXDOP setting.

How to change the CTP default value using SSMS

  1. Right-click on the instance name and select Properties.
  2. Click on the “Advanced” page and set the new value to Cost Threshold for Parallelism.

How to change it with T-SQL script

sp_configure 'show advanced options'
	,1;GO

RECONFIGURE;GO

sp_configure 'cost threshold for parallelism'
	,50;GO

RECONFIGURE;GO

More information

Speak with a SQL Expert

In just 30 minutes, we will show you how we can eliminate your SQL Server headaches and provide 
operational peace of mind

Article by
Mark Varnas
Founder | CEO | SQL Veteran
Hey, I'm Mark, one of the guys behind Red9. I make a living performance tuning SQL Servers and making them more stable.

Discover More

SQL Server Health Check SQL Server Migrations & Upgrades SQL Server Performance Tuning SQL Server Security SQL Server Tips

Discover what clients are saying about Red9

Red9 has incredible expertise both in SQL migration and performance tuning.

The biggest benefit has been performance gains and tuning associated with migrating to AWS and a newer version of SQL Server with Always On clustering. Red9 was integral to this process. The deep knowledge of MSSQL and combined experience of Red9 have been a huge asset during a difficult migration. Red9 found inefficient indexes and performance bottlenecks that improved latency by over 400%.

Rich Staats 5 stars
Rich Staats
Cloud Engineer
MetalToad

Always willing to go an extra mile

Working with Red9 DBAs has been a pleasure. They are great team players and have an expert knowledge of SQL Server database administration. And are always willing to go the extra mile to get the project done.
5 stars
Evelyn A.
Sr. Database Administrator

Boosts server health and efficiency for enhanced customer satisfaction

Since adding Red9 to the reporting and DataWarehousing team, Red9 has done a good job coming up to speed on our environments and helping ensure we continue to meet our customer's needs. Red9 has taken ownership of our servers ensuring they remain healthy by monitoring and tuning inefficient queries.
5 stars
Andrew F.
Datawarehousing Manager
See more testimonials