जीएनयू साथ
समानांतर आप क्या करेंगे:
parallel script-to-run.sh input/ output/ {} ::: {0..99}
-P8
में जोड़ें यदि आप प्रति CPU कोर एक नौकरी चलाने के लिए चाहते हैं।
xargs
के विपरीत यह सही चीज करेगा, भले ही इनपुट में स्पेस, ', या "(यहां मामला नहीं है)। यह भी सुनिश्चित करता है कि अलग-अलग नौकरियों के आउटपुट को मिश्रित नहीं किया जाता है, इसलिए यदि आप उस आउटपुट का उपयोग करें जिसकी आपको गारंटी है कि आपको दो अलग-अलग नौकरियों से आधा लाइन नहीं मिल जाएगी।
जीएनयू समानांतर एक सामान्य समांतरता है और उसी मशीन पर समानांतर में या कई मशीनों पर नौकरियां चलाने में आसान बनाता है जिनके पास आपके पास एसएसएच पहुंच है।
जीएनयू समानांतर बजाय एक नई प्रक्रिया जब spawns:
आप 32 विभिन्न नौकरियों आप 4 सीपीयू पर चलाना चाहते हैं, तो parallelize करने के लिए एक सीधे आगे रास्ता प्रत्येक CPU पर 8 नौकरियों को चलाने के लिए है एक खत्म - सीपीयू सक्रिय रखने और समय इस प्रकार की बचत:
स्थापना
यदि आपके वितरण के लिए जीएनयू समानांतर पैक नहीं किया गया है, तो आप व्यक्तिगत स्थापना कर सकते हैं, जिसके लिए रूट पहुंच की आवश्यकता नहीं है। यह 10 सेकंड में ऐसा करके किया जा सकता है:
(wget -O - pi.dk/3 || curl pi.dk/3/ || fetch -o - http://pi.dk/3) | bash
के लिए अन्य स्थापना विकल्पों को देखने के http://git.savannah.gnu.org/cgit/parallel.git/tree/README
जानें
अधिक उदाहरण देखें: http://www.gnu.org/software/parallel/man.html
घड़ी परिचय वीडियो: https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1
टट के माध्यम से चलो orial: समर्थन प्राप्त करने के ईमेल सूची के लिए http://www.gnu.org/software/parallel/parallel_tutorial.html
साइन अप करें: https://lists.gnu.org/mailman/listinfo/parallel
स्रोत
2015-02-06 08:21:59
उपयोग जीएनयू समानांतर – Barmar
है यही कारण है कि मैं शुरू में करना चाहता था, लेकिन xargs का सहारा लेना क्योंकि मैं विंडोज पर कर रहा हूँ था। मैं विंडोज – Olivier
पर जीएनयू समानांतर चलने में सक्षम नहीं था क्या वह स्क्रिप्ट स्वयं कॉल कर रही है या आपने यहां पूछा था जब आपने नामों को भ्रमित कर दिया था? –