मुझे एक ही फ़ंक्शन चलाने में दिलचस्पी है जो समानांतर फैशन में मल्टीप्ल कर्नेल पर तर्कों के विभिन्न मूल्यों के साथ कुछ मोंटे कार्लो मूल्यांकन करता है। मैं यह भी सुनिश्चित करना चाहता हूं कि पूरे फ़ंक्शन कर्नेल में वितरित किए जा रहे फ़ंक्शन के भीतर गणना के बिना उसी कर्नेल पर चलता है। उदाहरण के लिए, मैं एक समारोह (जानबूझ कर सरलीकृत) मान लीजिएगणित में समांतर प्रोग्रामिंग
f[a_, b_] := Module[{}, RandomReal[{a, b}]]
In[1]:= LaunchKernels[]
Out[1]= {KernelObject[1, "local"], KernelObject[2, "local"],
KernelObject[3, "local"], KernelObject[4, "local"],
KernelObject[5, "local"], KernelObject[6, "local"],
KernelObject[7, "local"]}
SeedRandom[795132, Method -> "ParallelGenerator"];
m1 = 1; m2 = 2; m3 = 3; m4 = 4; m5 = 5; m6 = 6; m7 = 7; m8 = 8;
DistributeDefinitions[f, m1, m2, m3, m4, m5, m6, m7, m8];
अब मैं च [एम 1, एम 2], च [एम 3, एम 4], च [M5, M6], च [m7, M8 चलाना चाहते हैं ] एफ [एम 9, एम 10] पांच अलग-अलग कर्नेल पर इन कर्नेलों में कोई सूचना हस्तांतरण नहीं है, यानी, अलग-अलग कर्नेल में यादृच्छिक संख्याओं की एक अलग धारा के साथ।
गणित के भीतर कोई ऐसा कैसे कर सकता है?
मज़ा लोग है, मैं इस एक बाहर बैठा हूँ। –
@ श्री विज़ार्ड: जब आप प्रतिस्पर्धा करने के लिए आसपास नहीं हैं तो यह कोई मजेदार नहीं है :) –