const DefaultParallelism … type Parallelizer … // NewParallelizer returns an object holding the parallelism. func NewParallelizer(p int) Parallelizer { … } // chunkSizeFor returns a chunk size for the given number of items to use for // parallel work. The size aims to produce good CPU utilization. // returns max(1, min(sqrt(n), n/Parallelism)) func chunkSizeFor(n, parallelism int) int { … } // Until is a wrapper around workqueue.ParallelizeUntil to use in scheduling algorithms. // A given operation will be a label that is recorded in the goroutine metric. func (p Parallelizer) Until(ctx context.Context, pieces int, doWorkPiece workqueue.DoWorkPieceFunc, operation string) { … }