Python: przetwarzanie wielordzeniowe?
Czytałem o Pythoniemoduł wieloprocesorowy. Nadal uważam, że nie bardzo rozumiem, co może zrobić.
Powiedzmy, że mam procesor czterordzeniowy i mam listę z 1.000.000 liczb całkowitych i chcę sumę wszystkich liczb całkowitych. Mógłbym po prostu zrobić:
list_sum = sum(my_list)
Ale wysyła to tylko do jednego rdzenia.
Czy jest możliwe, używając modułu wieloprocesorowego, podzielić tablicę w górę i każdy rdzeń otrzyma sumę swojej części i zwróci wartość, aby suma mogła zostać obliczona?
Coś jak:
core1_sum = sum(my_list[0:500000]) #goes to core 1
core2_sum = sum(my_list[500001:1000000]) #goes to core 2
all_core_sum = core1_sum + core2_sum #core 3 does final computation
Każda pomoc byłaby doceniana.