-
-
Notifications
You must be signed in to change notification settings - Fork 75
Open
Description
Main problem is that adding more workers to the pool is ineffective since there are no unassigned tasks.
I suppose this might be done to reduce scheduling latency. If it is, it would be useful to be able to control the amount of overprovisioning for cases when one intend to add more workers (e.g. as jobs are started on a cluster).
julia> using Distributed, Dagger
julia> addprocs(5, exeflags="--project=test")
5-element Vector{Int64}:
2
3
4
5
6
julia> @everywhere begin using Dagger, Distributed
function expensivejob(i)
@info "Started task $i on $(myid())"
while true end
end
end
julia> ts = delayed(vcat)([delayed(expensivejob)(i) for i in 1:200]...);
julia> collect(ts)
[ Info: Started task 2 on 3
[ Info: Started task 7 on 3
[ Info: Started task 12 on 3
[ Info: Started task 17 on 3
[ Info: Started task 22 on 3
[ Info: Started task 27 on 3
...
[ Info: Started task 180 on 6
[ Info: Started task 185 on 6
[ Info: Started task 190 on 6
[ Info: Started task 195 on 6
[ Info: Started task 200 on 6