[IPython-User] Using IPython as a Batch Queue

Erik Petigura eptune@gmail....
Sat Jan 21 14:33:26 CST 2012


Dear IPython,

I want to execute many embarrassingly parallel processes.  The way I am doing it is the following:

1. Generate scripts 

  $> ls -lth *.py
  -rwx------  1 petigura  staff   181B Jan 20 15:08 grid0000.py*

                    <snip>

  -rwx------  1 petigura  staff   184B Jan 20 15:08 grid2730.py*

2. Run them in a load balanced way in the following manner.  

  def srun(s):
      """
      Convert a script to a python call + log
      """
      log = s.split('.')[0]+'.log'
      return subprocess.call( 'python %s > %s' % (s,log) ,shell=True )

  view.map(srun,Scripts,block=True)

I've run into a couple of problems:

Periodically, one of my cores drops out.  However, when I go back and run it from the shell

   $> python script.py

it completes.  Is there something that could be hanging the view.map?  One of the reasons why I split my jobs up was is if a script fails, subprocess just passes a 1 and presumably view.map would just go on to the next job.

Also, I have a hard time stopping the cluster.  Doing 

   $> ipcluster stop

Doesn't work.  What I've been doing is listing all the ipengines and stoping them with the kill command.

Thanks in advance for help/advice!

Erik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/ipython-user/attachments/20120121/449b3e83/attachment.html 


More information about the IPython-User mailing list