สำหรับ C ++ เราสามารถใช้ OpenMP เพื่อทำการเขียนโปรแกรมแบบขนาน อย่างไรก็ตาม OpenMP จะไม่ทำงานสำหรับ Python ฉันควรทำอย่างไรถ้าฉันต้องการขนานบางส่วนของโปรแกรมไพ ธ อนของฉัน
โครงสร้างของรหัสอาจพิจารณาเป็น:
solve1(A)
solve2(B)
ที่ไหนsolve1
และsolve2
มีสองฟังก์ชั่นอิสระ วิธีการเรียกใช้รหัสนี้ในแบบคู่ขนานแทนในลำดับเพื่อลดเวลาทำงาน? หวังว่าใครบางคนสามารถช่วยฉันได้ ขอบคุณมากล่วงหน้า รหัสคือ:
def solve(Q, G, n):
i = 0
tol = 10 ** -4
while i < 1000:
inneropt, partition, x = setinner(Q, G, n)
outeropt = setouter(Q, G, n)
if (outeropt - inneropt) / (1 + abs(outeropt) + abs(inneropt)) < tol:
break
node1 = partition[0]
node2 = partition[1]
G = updateGraph(G, node1, node2)
if i == 999:
print "Maximum iteration reaches"
print inneropt
โดยที่ setinner และ setouter เป็นฟังก์ชันอิสระสองฟังก์ชัน นั่นคือสิ่งที่ฉันต้องการขนาน ...