unless Im misreading this (which is possible), you're pulling the number of workers from workerPattern outside the loop. which means it can only be happening once. which means the number can't be changing. which means there's no ramping going on in this function?