Shouldn't we parallelize calling the run() ?