Dask delayed: construire un graphe de tâches
objectif
Expliquer et montrer comment composer des fonctions Python en DAG et exécuter en parallèle.
code minimal
import dask
@dask.delayed
def f(x): return x + 1
@dask.delayed
def g(x): return x * 2
@dask.delayed
def h(x, y): return x + y
results = [h(g(i), f(i)) for i in range(10)]
total = dask.delayed(sum)(results)
total.compute()
utilisation
# visualiser le DAG (nécessite graphviz)
# total.visualize("dag.svg")
variante(s) utile(s)
# dask.compute pour déclencher plusieurs calculs
# a, b = dask.compute(total, results[0])
notes
- Delayed est pratique pour paralléliser des fonctions Python pures.
- Utilisez dask.distributed pour un scheduler multi-process/machines.