Parallel execution versus concurrency