Why am I not getting the parallelism/concurrency I expected?