Importe módulos personalizados en motores IPython.parallel con sync_imports ()
He estado jugando con IPython.parallel y quería usar algunos módulos personalizados, pero no he podido hacerlo como se explica enel libro de cocina utilizandodview.sync_imports()
. Lo único que me ha funcionado fue algo así como
def my_parallel_func(args):
import sys
sys.path.append('/path/to/my/module')
import my_module
#and all the rest
y luego en la principal sólo para
if __name__=='__main__':
#set up dview...
dview.map( my_parallel_func, my_args )
La forma correcta de hacer esto sería, en mi opinión, algo así como
with dview.sync_imports():
import sys
sys.path.append('/path/to/my/module')
import my_module
pero esto produce un error que dice que no hay un módulo llamadomy_module
.
Entonces, ¿cuál es la forma correcta de hacerlo usandodview.sync_imports()
??