{ "metadata": { "name": "", "signature": "sha256:7f06cba858b90943710f05a2abd418616b336fbf3e90695a4b1119807f2dac79" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "from IPython.parallel import Client\n", "rc = Client()\n", "# create the balanced view object\n", "lview = rc.load_balanced_view()" ], "language": "python", "metadata": { "slideshow": { "slide_start": false } }, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "rc.ids" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "def process_job(filename):\n", " # to avoid importing functions better\n", " # define the function in a module and import it\n", " from time import sleep\n", " sleep(4)\n", " open(filename, 'w').close()\n", " return \"Done \" + filename" ], "language": "python", "metadata": { "slideshow": { "slide_start": false } }, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "!mkdir out\n", "!rm out/*.dat" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "process_job(\"out/test.dat\")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "filenames = [\"out/%d.dat\" % (i+10) for i in range(10)]\n", "print filenames" ], "language": "python", "metadata": { "slideshow": { "slide_start": false } }, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "# default returns immediately\n", "tasks = []\n", "for filename in filenames:\n", " tasks.append(lview.apply_async(process_job, filename))\n", "print tasks[0]\n", "print tasks[0].ready()" ], "language": "python", "metadata": { "slideshow": { "slide_start": false } }, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "print tasks[0].ready()" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }