Использование многопроцессорного модуля для распараллеливания задач

 import multiprocessing

def fib(n):
    """computing the Fibonacci in an inefficient way
    was chosen to slow down the CPU."""
    if n <= 2:
        return 1
    else:
        return fib(n-1)+fib(n-2) 
p = multiprocessing.Pool() 
print(p.map(fib,[38,37,36,35,34,33]))

# Out: [39088169, 24157817, 14930352, 9227465, 5702887, 3524578]

 

Поскольку выполнение каждого вызова fib происходит параллельно, время выполнения полного примера 1,8 × быстрее , чем если бы сделано последовательным образом на двойной процессор.

Python 2.2+