• Hi Kev,
    " Can anyone explain the discrepancy between max_workers_count and the calculation as I presented it here?"
    You can set the max number of threads manually (basically not recommended) with
    sp_configure N'max worker threads', num_of_threads;
    RECONFIGURE WITH OVERRIDE;

    You can check the actual set value by querying the system  dmv [sys].[configurations]!
    "Why is there such a large amount of THREADPOOL waits when clearly we aren't exhausting the available workers?"
    The reason is “MAXDOP is always specified per operator in the execution plan and not per execution plan”.
    If  [THREADPOOL] waits occure it might be the reason of complex execution plans with lots of parallel operators!

    Microsoft Certified Master: SQL Server 2008
    MVP - Data Platform (2013 - ...)
    my blog: http://www.sqlmaster.de (german only!)