2011-10-30 8 views
1

Linuxマシンで動作するipython並列プログラミングを取得しようとしています(Rocks/CentOS 5.4、Python 2.7.2、IPython 0.11)。インストールに問題はありませんでしたが、ipcluster/ipythonを使用してコマンドを実行することはできません。IPython並列計算が動作しない

つまり、次のコマンドを試しました。 ipython

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

ipcluster側の最後のコマンドは、決して答えて戻ってくるん

[[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

ラムダ関数ではなく、関数を定義してみてください。

+0

ちょうど試してみました)(クライアントにプロファイルを指定してみてください。違いはありません。 –

1

は0.11 ipython、Ubuntuの11.10、Pythonの2.7.2にあなたの例を試してみました(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')