Question :
Does sys.dm_exec_procedure_stats
.total_worker_time
include signal waits or only time spent by procedure on scheduler?
The reason of question – when number of cores was increased on the server signal waits
decreased as expected, but total_worker_time
/execution_count
has dropped too.
Answer :
Neal Hambly in his post at SQL Server SOS_SCHEDULER_YIELD Wait Type includes this comment (highlights are mine):
If you have long running queries, especially when in conjunction with
high signal wait times, it may be an indication of CPU pressure.Reviewing the system performance will show if the CPUs are showing
signs of CPU pressure, and reducing workload through performance
tuning or other steps can help reduce the workloads being performed by
SQL Server.
Certainly adding more cores will change the amount of pressure each CPU must face. So, it seems quite reasonable that more processors will reduce the pressure on each CPU, which in turn provides better CPU throughput.