<br><br><div class="gmail_quote">On Wed, Oct 5, 2011 at 23:31, Markus Baden <span dir="ltr">&lt;<a href="mailto:markus.baden@gmail.com">markus.baden@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

Hi list,<br><br>I&#39;m trying to use IPython together with our High Performance Computing facilties at NUS. The jobs are distributed via LSF, so I intend to follow the discussion on setting up IPython with LSF [1]. Before using the LSF setup I wanted to test things by just having remote engines on their computer, controlled by a local controller on my laptop.<br>


<br>However, I have the problem that there is no shared network drive between the computers that are used for submitting the jobs (which would run the engines) and my laptop. So far I was able to get a local ipcontroller running and remote ipengines that show up as connected. However c[:].apply_snyc(lambda: &#39;Hello World&#39;) did not work.<br>


<br>Here is what I did:<br><br>- ipython profile create --parallel  --profile=hpc_test<br>- set c.HubFactory.ip = &#39;*&#39; in ipcontroller_config.py<br>- run on laptop ipcontroller --profile=hpc_test&amp;<br>- create hpc_test profile on remote computer<br>


- transfer ipcontroller-engine.json from laptop to remote computer<br>- run ipengine --profile=hpc_test on remote computer, which led the ipcontroller on my laptop to acknowledge that an engine was connected<br>- on local machine start ipython, c = Client(profile=&#39;hpc_test&#39;)<br>


- c.ids shows the correct ids, but c[:].apply_snyc(lambda: &#39;Hello World&#39;)  just hangs<br><br>Since I am totally new to this, I&#39;m super confused and don&#39;t know where to proceed from here. Somehow I was expecting that I have to tell the engine over which protocol to talk to the controller. I was intending to use ssh for that, but somehow I could connect engines without even specifying this.<br>

</blockquote><div><br></div><div>If you specified &#39;ip=*&#39;, that means you instructed the controller to listen on all interfaces. If the machines are visible to each other, then there is no need to use SSH tunnels.  The ip=* is not always reliable with zeromq, so sometimes using 0.0.0.0 instead (which means the same thing) works better.</div>

<div><br></div><div>It&#39;s also possible that specifying the external IP itself will be necessary, depending on your network.</div><div><br></div><div>When you use the 0.0 or * IP, then IPython uses a &#39;location&#39; value, to determine what IP to use, and whether the controller is local or not.  You can see this value in the ipcontroller-engine.json, and you can set it with the `--location` argument, if IPython&#39;s guess is wrong.</div>

<div><br>If you want to be using SSH tunnels, then you typically specify this at the controller, with &#39;--enginessh=[user@]&lt;server&gt;&#39;, but it is only necessary if ports are not visible from one machine to another.</div>

<div><br></div><div>The main things to look at are the listening ports (the &#39;Hub * addrs&#39; controller log output, and the &#39;location&#39; value in ipcontroller-engine.json.  When debugging, adding the &#39;--debug&#39; flag to ipcontroller and ipengine may help enlighten things.</div>

<div><br></div><div>-MinRK</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>Could somebody point me in the right direction, on where to proceed from here on? Any hints are greatly appreciated.<br><br>Thanks a lot,<br><br>Markus<br><br>[1] <a href="http://thread.gmane.org/gmane.comp.python.ipython.user/6487" target="_blank">http://thread.gmane.org/gmane.comp.python.ipython.user/6487</a><br>


<br>_______________________________________________<br>
IPython-User mailing list<br>
<a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
<br></blockquote></div><br>