profiling mirai
2.0.0
#198
Replies: 2 comments 10 replies
-
With https://github.com/wlandau/crew/tree/193, I've hit cases where |
Beta Was this translation helpful? Give feedback.
-
FYI: I just created a "sequential" n <- 1e6L
controller <- crew::crew_controller_sequential() # requires development crew
controller$start()
system.time({
for (index in seq_len(n)) {
controller$push(TRUE)
controller$pop()
}
while (controller$nonempty()) {
controller$pop()
}
})
controller$terminate()
#> user system elapsed
#> 135.783 5.871 142.074 The local controller with 1 worker/daemon takes almost 7 minutes, which is still excellent, but the 4-minute overhead is worth noting. n <- 1e6
controller <- crew::crew_controller_local()
controller$start()
system.time({
for (index in seq_len(n)) {
controller$push(TRUE)
controller$pop()
}
while (controller$nonempty()) {
controller$pop()
}
})
controller$terminate()
#> user system elapsed
#> 368.451 58.468 406.116 |
Beta Was this translation helpful? Give feedback.
-
Just thought I'd share a profiling study and data for
mirai
2.0.0. I stress testedmirai
on my M2 MacBook using a workflow with 20 workers and 100000 tasks.Performance overall is fantastic. From the timestamps, it looks like things slow down a bit as the number of submitted tasks increases.
And here is the
pprof
flame graph showing where the code spends most of its time:Beta Was this translation helpful? Give feedback.
All reactions