The architecture of parallel computing in IPython has three main components. These components are part of the parallel package of IPython. The architecture of IPython parallel computing is depicted in the following figure:
The three main components of IPython parallel computing are client, controller, and engines. The controller component is composed of two subcomponents: HUB and SCHEDULERS. It allows client interaction with engines through two main interfaces: direct interface and load-balanced interface.
Various components and concepts related to the IPython parallel computing architecture will be discussed in this subsection. The components are the IPython engine, the IPython controller (the hub and schedulers), and the IPython clients and views.