This is a situation where we need a benchmark. [As far as I know](https://groups.google.com/forum/#!topic/golang-nuts/j51G7ieoKh4) goroutines get cooperatively scheduled, so if the channel gets full, the runtime will need to wake up the aggregation thread, because nothing else can run. That said, I wouldn't be surprised if training things serially was actually better performance-wise.