Usando multiprocessamento para localizar caminhos de rede

Atualmente, estou usando a função networkx * all_simple_paths * para localizar todos os caminhos dentro de uma rede G, para um determinado conjunto de nós de origem e de destino.

Em redes maiores / mais densas, esse processo é incrivelmente intenso.

Eu gostaria de saber se o multiprocessamento poderia ser usado neste problema, e se alguém tinha alguma idéia de como isso poderia ser implementado, através da criação de um Pool etc.

import networkx as nx

G = nx.complete_graph(8)
sources = [1,2]
targets = [5,6,7]

for target in targets:
    for source in sources:
        for path in nx.all_simple_paths(G, source=source, target=target, cutoff=None):
            print(path)

Muito obrigado antecipadamente por qualquer sugestão que possa ter!

questionAnswers(2)

yourAnswerToTheQuestion