##// END OF EJS Templates
Merge Laurent's fixes for 64 bits and import checks, see full log below.
Merge Laurent's fixes for 64 bits and import checks, see full log below.

File last commit:

r1338:72652d65
r2538:982a6d7a merge
Show More
multiengine2.ipy
38 lines | 1.0 KiB | text/plain | TextLexer
#-------------------------------------------------------------------------------
# Imports
#-------------------------------------------------------------------------------
import time
import numpy
import IPython.kernel.magic
from IPython.kernel import client
from IPython.kernel.error import *
mec = client.MultiEngineClient()
#-------------------------------------------------------------------------------
# Setup
#-------------------------------------------------------------------------------
mec.reset()
# print mec.keys()
mec.activate()
# mec.block=True
mec.get_ids()
n = len(mec)
assert n >= 4, "Not Enough Engines: %i, 4 needed for this script"%n
mec.block=False
pr1 = mec.execute('import time')
pr2 = mec.execute('time.sleep(5)')
pr3 = mec.push(dict(a=10,b=30,c=range(20000),d='The dog went swimming.'))
pr4 = mec.pull(('a','b','d'))
print "Try a non-blocking get_result"
assert pr4.get_result(block=False, default='not done')=='not done'
print "Now wait for all the results"
mec.barrier((pr1,pr2,pr3,pr4))
print "The last pull got:", pr4.r