Get Cached SQL Plans That Consumed The Most Cumulative CPU

  1. --Run the following query to get the TOP 50 cached plans that consumed the most cumulative CPU  
  2. --All times are in microseconds  
  3. SELECT TOP 50 qs.creation_time, qs.execution_count, qs.total_worker_time as total_cpu_time, qs.max_worker_time as max_cpu_time,  
  4. qs.total_elapsed_time, qs.max_elapsed_time, qs.total_logical_reads, qs.max_logical_reads, qs.total_physical_reads,  
  5. qs.max_physical_reads,t.[text], qp.query_plan, t.dbid, t.objectid, t.encrypted, qs.plan_handle, qs.plan_generation_num  
  6. FROM sys.dm_exec_query_stats qs  
  7. CROSS APPLY sys.dm_exec_sql_text(plan_handle) AS t  
  8. CROSS APPLY sys.dm_exec_query_plan(plan_handle) AS qp  
  9. ORDER BY qs.total_worker_time DESC