Como somar um loop em paralelo usando multiprocessamento em Python

Estou tendo dificuldades para entender como usar o módulo de multiprocessamento do Python.

Eu tenho uma soma de1 paran Onden=10^10, que é muito grande para caber em uma lista, o que parece ser o objetivo de muitos exemplos on-line usando o multiprocessamento.

Existe uma maneira de "dividir" o intervalo em segmentos de um determinado tamanho e executar a soma de cada segmento?

Por exemplo

def sum_nums(low,high):
    result = 0
    for i in range(low,high+1):
        result += i
    return result

E eu quero calcularsum_nums(1,10**10) dividindo-o em muitossum_nums(1,1000) + sum_nums(1001,2000) + sum_nums(2001,3000)... e assim por diante. Eu sei que existe uma forma fechadan(n+1)/2 mas finja que não sabemos disso.

Aqui está o que eu tentei

import multiprocessing

def sum_nums(low,high):
    result = 0
    for i in range(low,high+1):
        result += i
    return result

if __name__ == "__main__":
    n = 1000 
    procs = 2 

    sizeSegment = n/procs

    jobs = []
    for i in range(0, procs):
        process = multiprocessing.Process(target=sum_nums, args=(i*sizeSegment+1, (i+1)*sizeSegment))
        jobs.append(process)

    for j in jobs:
        j.start()
    for j in jobs:
        j.join()

    #where is the result?

questionAnswers(3)

yourAnswerToTheQuestion