__init__.py
56 lines
| 1.6 KiB
| text/x-python
|
PythonLexer
/ ipython_parallel / __init__.py
Min RK
|
r21079 | """The IPython ZMQ-based parallel computing interface.""" | ||
MinRK
|
r4018 | |||
Min RK
|
r21079 | # Copyright (c) IPython Development Team. | ||
# Distributed under the terms of the Modified BSD License. | ||||
MinRK
|
r4018 | |||
MinRK
|
r3644 | |||
MinRK
|
r3779 | import os | ||
MinRK
|
r4248 | import warnings | ||
MinRK
|
r3661 | import zmq | ||
MinRK
|
r7312 | from IPython.config.configurable import MultipleInstanceError | ||
MinRK
|
r4248 | |||
Min RK
|
r21070 | from ipython_kernel.pickleutil import Reference | ||
MinRK
|
r3665 | |||
MinRK
|
r3673 | from .client.asyncresult import * | ||
from .client.client import Client | ||||
from .client.remotefunction import * | ||||
from .client.view import * | ||||
from .controller.dependency import * | ||||
MinRK
|
r7483 | from .error import * | ||
from .util import interactive | ||||
MinRK
|
r3673 | |||
MinRK
|
r6893 | #----------------------------------------------------------------------------- | ||
# 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. | ||||
""" | ||||
MinRK
|
r9372 | from IPython.kernel.zmq.kernelapp import IPKernelApp | ||
Min RK
|
r20860 | from ipython_parallel.apps.ipengineapp import IPEngineApp | ||
MinRK
|
r7312 | |||
# first check for IPKernelApp, in which case this should be a no-op | ||||
# because there is already a bound kernel | ||||
if IPKernelApp.initialized() and isinstance(IPKernelApp._instance, IPKernelApp): | ||||
return | ||||
MinRK
|
r6893 | if IPEngineApp.initialized(): | ||
MinRK
|
r7312 | try: | ||
app = IPEngineApp.instance() | ||||
except MultipleInstanceError: | ||||
pass | ||||
else: | ||||
return app.bind_kernel(**kwargs) | ||||
raise RuntimeError("bind_kernel be called from an IPEngineApp instance") | ||||
MinRK
|
r6893 | |||
MinRK
|
r3665 | |||