As a general rule of concurrency, you don't want to spend more time chopping up the work than the benefit you get from it. This is why the inherently two channel RIPEMD hash doesn't get implemented with concurrency - it's orders of magnitude slower. Core's implementation isn't really concurrency, it's more like a read-ahead cache. That benefits validation, but reducing CPU starvation, but not download.