from IPython import parallel rc = parallel.Client() dview = rc[:] def ff(x): print(x) return x**2 sync = dview.map_sync(ff,[1,2,3,4]) print('sync res=%r' % sync) async = dview.map_async(ff,[1,2,3,4]) print('async res=%r' % async) async.get() async.stdout print('async output:') async.display_outputs() split_output = [ stdout.splitlines() for stdout in async.stdout ] transposed = zip(*split_output) header = '\t'.join("[%i]" %i for i in dview.targets) print(header) print('-' * 8 * len(dview)) for row in zip(*split_output): print('\t'.join(' %s ' % s for s in row))