2011-10-30 73 views
1

我想獲得在Linux機器上工作的ipython並行編程(Rocks/CentOS 5.4,Python 2.7.2,IPython 0.11)。安裝沒有問題,但是,我無法使用ipcluster/ipython執行任何命令。IPython並行計算不能正常工作

即,我嘗試了以下命令。在ipcluster方面:

/share/apps/Python-2.7/bin/ipcluster start --n=4 

ipython方面:

[[email protected] ~]$ /share/apps/Python-2.7/bin/ipython 
Python 2.7.2 (default, Oct 18 2011, 15:35:37) 
Type "copyright", "credits" or "license" for more information. 

IPython 0.11 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

In [1]: from IPython.parallel import Client 

In [2]: rc=Client() 

In [3]: dview=rc[:] 

In [4]: ar=dview.apply_async(lambda x: x + 3, 7) 

In [5]: ar.get() 

之後的最後一個命令永不再來一個答案(有效掛起)。

如何才能讓ipython並行處理工作?

回答

0

嘗試定義一個函數,而不是lambda函數。

+0

剛試過指定配置文件。沒什麼區別。 –

1

想你的例子在Ubuntu 11.10,蟒蛇2.7.2,IPython的0.11(PIP與安裝)和它的作品:

In [5]: ar.get() 
Out[5]: [10, 10, 10, 10] 

你可能想嘗試運行IPython的測試套件並行模塊並查看它在哪裏失敗:

iptest -v IPython.parallel 

在我的機器上所有97個測試通過。

0

ipcluster對使用的配置文件(配置文件)說了些什麼?

嘗試在客戶機()創建

Create(profile='myprofile') 

Create(profile="default_profile')