IPython’s Direct-Interface

Erstellen eines DirectView

[1]:
import ipyparallel as ipp
rc = ipp.Client()
[2]:
rc = ipp.Client(profile='default')
[3]:
rc.ids
[3]:
[0, 1, 2, 3]

Verwenden aller Engines:

[4]:
dview = rc[:]

map()-Funktion

Python’s builtin map()-Funktion kann auf eine Sequenz von Elementen angewendet werden und üblicherweise einfach zu parallelisieren.

Beachtet bitte, dass die DirectView-Version von map() kein automatisches Load-Balancing macht. Hierfür müsst ihr ggf. LoadBalancedView verwenden.

[5]:
serial_result = list(map(lambda x:x**10, range(32)))
[6]:
parallel_result = dview.map_sync(lambda x: x**10, range(32))
[7]:
serial_result == parallel_result
[7]:
True