-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Description
In a container scenario, depending on orchestration used, it is generally possible for a user to limit CPU quota and level of parallelism.
One does not imply another. That is why there are distinct knobs.
Example: on a machine with 4 cores, it is conceivable to have 8 containers limited to 1/8 of total CPU time for fairness/over-committing, but
- each limited to using 1 CPU at a time. This would favor compute-intensive scenarios.
OR - each having access to all 4 CPUs. This would favor latency sensitive, IO-performing, bursty workloads.
It looks like coreclr may see no distinction between these cases and treat them both as #1.
There is a common pattern where once the quota falls below user-set Core count, we reduce the available Core count to match the quota.
User could ask for reduced parallelism, but did not.
Even if user might be doing this by accident, perhaps that should be respected? Otherwise, if there is a legit need for #2, it cannot be done.