Contribute Media
A thank you to everyone who has made this possible: Read More

Interactive Parallel Computing with IPython Part 1

Summary

Learn about interactive parallel computing in IPython.parallel, with examples including parallel image processing, machine learning, and physical simulations. IPython provides an easy way to interact with your multicore laptop or compute cluster.

Description

IPython provides tools for interactive exploration of code and data. IPython.parallel is the part of IPython that enables an interactive model for parallel execution, and aims to make distributing your work on a multicore computer, local clusters or cloud services such as AWS or MS Azure simple and straightforward. The tutorial will cover how to do interactive and asynchronous parallel computing with IPython, and how to get the most out of your IPython cluster. Some of IPython’s novel interactive features will be demonstrated, such as automatically parallelizing code with magics in the IPython Notebook and interactive debugging of remote execution. Examples covered will include parallel image processing, machine learning, and physical simulations, with exercises to solve along the way.

  • Introduction to IPython.parallel
  • Deploying IPython
  • Using DirectViews and LoadBalancedViews
  • The basic model for execution
  • Getting to know your IPython cluster:
  • Working with remote namespaces
  • AsyncResult: the API for asynchronous execution
  • Interacting with incomplete results. Remember, it’s about interactivity
  • Interactive parallel plotting
  • More advanced topics:
  • Using IPython.parallel with traditional (MPI) parallel programs
  • Debugging parallel code
  • Minimizing data movement
  • Task dependencies
  • Caveats and tuning tips for IPython.parallel

Details

Improve this page