1

Below is the scenario:

Scenario 1: I got two workload groups assigned in the same resource pool with MAX CPU 20%. In the event of CPU bottleneck, the limit will come into effect with 10% each workload group?

Scenario 2: I got two workload groups assigned with two different resource pool with MAX CPU 10% each. In the event of CPU bottleneck, each resource pool/workload group will get 10% each?

Is it both scenario will get the same resource allocation?

2

Yes, those two scenarios will result in the same resource allocation - in theory.

In scenario 1, if there is CPU pressure, the two workloads running in the "20% resource pool" will share that CPU "equally." How equally they are able to share the 20% can depend on a lot of things that are workload specific, given how SQL Server's scheduling algorithms work.

In scenario 2, if there is CPU pressure, the two workloads running in the "10% resource pool"s will each get a minimum of 10% of CPU time.

You have a better chance of a "fair" split of CPU in scenario 2, but scenario 1 could work depending on your specific workload.

  • Hi Josh, if i got one more scenario: multiple databases in the same workload group and assigned to the same resource pool (let say 20% max CPU), those databases will share the 20% equally as similarly to your answer on scenario 1? thanks! – Yong Aug 28 at 5:42
  • @Yong Interesting question! Workload groups are bound to sessions, not databases. So the behavior will be exactly the same as #1. Resource Governor doesn't care that one session is accessing DatabaseA and the other is accessing DatabaseB. – Josh Darnell Aug 28 at 13:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.