Почему параллельные фьючерсы медленнее, чем мой цикл?
Эй, ребята, я хочу ускорить мой код с помощью многопроцессорной обработки с использованием параллельных фьючерсов. Я написал некоторый код для проверки и понимания параллельного будущего и для моделирования моего случая. Но почему-то метод одновременных фьючерсов медленнее, чем цикл..
import concurrent.futures
import time
A = range(0,100000)
B = range(1000,20000)
SumList = []
DiffList = []
SumList2 = []
DiffList2 = []
def Funktion(items):
A, B = items
Sum = A + B
Diff = A-B
return(Sum, Diff)
def Funktion2(A, B):
Sum = A+B
Diff = A-B
return(Sum, Diff)
start1 = time.time()
with concurrent.futures.ProcessPoolExecutor() as executor:
for Sum, Diff in executor.map(Funktion, zip(A, B)):
SumList.append(Sum)
DiffList.append(Diff)
stop1 = time.time()
time1 = stop1 - start1
print('With Executor=', time1)
start2 = time.time()
i = 0
for x in A:
Sum, Diff = Funktion2(A[i], B[i])
SumList2.append(Sum)
DiffList2.append(Diff)
stop2 = time.time()
time2 = stop2 - start2
print('Normal= ', time2)
Результат: с Executor= 5.426360130310059 Normal= 0.08866691589355469
Процесс завершен с кодом выхода 0