Parsl/parsl

is scaling strategy 4a unnecessary?

benclifford opened this issue · 0 comments

Scaling strategy case 4a scales up by 1 block in certain circumstances.

it triggers after case 2b which is a different scale-up-by-many-blocks, which overlaps in many situations: so in many situations, case 2b will fire in prefererence to 4a.

What are the situations when case 2b will fire?

I think only when parallelism is 0, there are no blocks running, and there are active tasks. But in the parallelism = 0 case, it is arguable that parsl shouldn't be doing any scaling: it should be running only min_blocks blocks, always.

Adding 1 block is probably not the right thing to be doing here - the scaling code should be (but I don't think actually does) maintain min_blocks at all times (whether there are tasks or not), whatever the load - see #3071 for some more discussion relevant to this.