Book Image

Mastering IPython 4.0

By : Thomas Bitterman, Dipanjan Deb
Book Image

Mastering IPython 4.0

By: Thomas Bitterman, Dipanjan Deb

Overview of this book

IPython is an interactive computational environment in which you can combine code execution, rich text, mathematics, plots, and rich media. This book will get IPython developers up to date with the latest advancements in IPython and dive deep into interactive computing with IPython. This an advanced guide on interactive and parallel computing with IPython will explore advanced visualizations and high-performance computing with IPython in detail. You will quickly brush up your knowledge of IPython kernels and wrapper kernels, then we'?ll move to advanced concepts such as testing, Sphinx, JS events, interactive work, and the ZMQ cluster. The book will cover topics such as IPython Console Lexer, advanced configuration, and third-party tools. By the end of this book, you will be able to use IPython for interactive and parallel computing in a high-performance computing environment.
Table of Contents (18 chapters)
Mastering IPython 4.0
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
6
Works Well with Others – IPython and Third-Party Tools
Index

ZeroMQ and IPython


ZeroMQ is more than a messaging library for parallel environments: IPython has moved to using ZeroMQ as its internal messaging infrastructure. In this section, we will provide further details on the operation of IPython in terms of the ZeroMQ mechanisms underlying it.

To do this, we will introduce some additional socket types, describe how they interact to enable some of IPython's parallel components, and finish up with some use cases employing those components. While this section cannot hope to cover all the details of the IPython parallel architecture, it is hoped that these examples will provide the user with a basic understanding of the underlying mechanisms.

ZeroMQ socket types

ZeroMQ supports a large number of different socket types, 14 at last count (version 4.2.0). The preceding section provided an overview of some of the important types, but a discussion of the IPython architecture requires at least cursory knowledge of some advanced socket types:

  • DEALER: This is...