"""The IPython ZMQ-based parallel computing interface. Authors: * MinRK """ #----------------------------------------------------------------------------- # Copyright (C) 2011 The IPython Development Team # # Distributed under the terms of the BSD License. The full license is in # the file COPYING, distributed as part of this software. #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- # Imports #----------------------------------------------------------------------------- import os import warnings import zmq from IPython.zmq import check_for_zmq if os.name == 'nt': min_pyzmq = '2.1.7' else: min_pyzmq = '2.1.4' check_for_zmq(min_pyzmq, 'IPython.parallel') from IPython.utils.pickleutil import Reference from .client.asyncresult import * from .client.client import Client from .client.remotefunction import * from .client.view import * from .util import interactive from .controller.dependency import * #----------------------------------------------------------------------------- # Functions #----------------------------------------------------------------------------- def bind_kernel(**kwargs): """Bind an Engine's Kernel to be used as a full IPython kernel. This allows a running Engine to be used simultaneously as a full IPython kernel with the QtConsole or other frontends. This function returns immediately. """ from IPython.parallel.apps.ipengineapp import IPEngineApp if IPEngineApp.initialized(): app = IPEngineApp.instance() else: raise RuntimeError("Must be called from an IPEngineApp instance") return app.bind_kernel(**kwargs)