In this post, I am sharing one TSQL script to find top 20 Stored Procedures, which are utilizing more CPU time and degrade the performance of SQL Server.
The database performance optimization is one the most important task for Database Professionals.
We have found that many times SQL Server occupying more CPU resources and at that time it is required to find which stored procedure is occupying more CPU resources.
I am using sys.dm_exec_procedure_stats to find CPU used by all the stored procedures.
SELECT TOP 20
DB_NAME(database_id) AS DatabaseName
,OBJECT_SCHEMA_NAME(object_id,database_id) AS SchemaName
,cached_time AS CachedTime
,last_execution_time AS LastExecutionTime
,execution_count AS TotalNumberOfExecution
,(total_worker_time / execution_count) AS AverageCPUTime
,(total_elapsed_time / execution_count) AS AverageElapsedTime
,(total_logical_reads / execution_count) AS AverageLogicalReads
,(total_logical_writes / execution_count) AS AverageLogicalWrites
,(total_physical_reads / execution_count) AS AveragePhysicalReads
ORDER BY AverageLogicalReads DESC
Please share your ideas and opinions about this topic with me, your contribution will add true value to this topic.
If anyone has doubts on this topic then please do let me know by leaving comments or send me an email.
If you like this post, then please share it with others.
Please follow dbrnd.com, I will share my experience towards the success of Database Research and Development Activity.
I put up a post every day, please keep reading and learning.
Discover Yourself, Happy Blogging !
Anvesh M. Patel.