安装ipyparallel
从4.0开始,IPython parallel现在是名为的独立程序包ipyparallel。您可以使用以下方法安装它:
pip install ipyparallel
或者:
conda install ipyparallel
入门
要将IPython用于并行计算,您需要启动一个控制器实例和一个或多个引擎实例。最初,最好使用ipcluster命令在单个主机上启动控制器和引擎 。要在本地计算机上启动控制器和4个引擎:
以管理员模式打开cmd,输入
ipcluster start -n 4
启动成功后会看见 Engines appear to have started successfully
为确保一切正常,请尝试一下命令
In [1]: import ipyparallel as ipp
In [2]: c = ipp.Client()
In [3]: c.ids
Out[3]: [0, 1, 2, 3]
In [4]: c[:].apply_sync(lambda : "Hello, World")
Out[4]: [ 'Hello, World', 'Hello, World', 'Hello, World', 'Hello, World' ]
传递参数
c[:].push({'cc': 123}) # 传递字典参数
c[:].scatter('hjy', (0, 1, 2, 3)) # 传递元祖参数
c[0:4].apply_async(需要并行运算的函数名,普通参数1,普通参数2) # 传递普通参数
当需要并行运算的函数包含其他的库时
需要加上在并行计算的函数加上装饰器
@ipp.require(库名)
开始运行
result = c[0:4].apply_async(需要并行运算的函数,参数,参数)
for res in result:
pass
获取传递字典和元祖参数
直接用变量名,会显示报错,但是运行时不会报错