में विभिन्न श्रमिकों में समान उत्पादन मेरे पास बहुत ही सरल मामले हैं जहां काम करने के लिए कर्मचारियों को तोड़ा जा सकता है और वितरित किया जा सकता है।मल्टीप्रोसेसिंग
Input : [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
0 7
1 7
2 7
5 7
3 7
4 7
6 7
7 7
8 6
9 6
Pool : [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
ही यादृच्छिक संख्या क्यों मुद्रित हो रही है:
import multiprocessing
import numpy as np
import time
def do_calculation(data):
rand=np.random.randint(10)
print data, rand
time.sleep(rand)
return data * 2
if __name__ == '__main__':
pool_size = multiprocessing.cpu_count() * 2
pool = multiprocessing.Pool(processes=pool_size)
inputs = list(range(10))
print 'Input :', inputs
pool_outputs = pool.map(do_calculation, inputs)
print 'Pool :', pool_outputs
उपरोक्त कार्यक्रम निम्नलिखित उत्पादन का उत्पादन: मैं here से एक बहुत ही सरल बहु उदाहरण की कोशिश की? (मेरे पास मेरी मशीन में 4 सीपीयू है)। क्या यह आगे बढ़ने का सबसे अच्छा/सरल तरीका है?
[प्रत्येक प्रक्रिया के लिए अलग यादृच्छिक बीज के साथ का उपयोग करते हुए अजगर बहु] (के संभावित डुप्लिकेट http://stackoverflow.com/questions/9209078/using-python-multiprocessing-with-different- यादृच्छिक-बीज-प्रत्येक-प्रक्रिया के लिए) –
क्या यादृच्छिक संख्याओं का उपयोग करने वाली प्रत्येक प्रक्रिया के लिए यादृच्छिक संख्या सेट करने का कोई तरीका नहीं है? मान लें कि मॉड्यूल यादृच्छिक, numpy, scipy, tensorflow का उपयोग करता है और कौन जानता है और क्या। यह सुनिश्चित करने का एकमात्र तरीका है कि प्रक्रिया में से प्रत्येक के माध्यम से जाने के लिए एक अलग यादृच्छिक बीज है और मैन्युअल रूप से राज्य सेट करें? –