ব্যাকগ্রাউন্ডে একাধিক কাজ করা একক মেশিনের একাধিক কোর ব্যবহার করার একটি ভাল উপায়। parallel
তবে আপনাকে আপনার নেটওয়ার্কের একাধিক সার্ভারগুলিতে কাজ ছড়িয়ে দেওয়ার অনুমতি দেয়। থেকে man parallel
:
GNU সমান্তরাল এক বা একাধিক কম্পিউটার ব্যবহার করে সমান্তরালে কাজ সম্পাদনের জন্য একটি শেল টুল । সাধারণ ইনপুট হ'ল ফাইলগুলির তালিকা, হোস্টের একটি তালিকা, ব্যবহারকারীর একটি তালিকা, ইউআরএলগুলির একটি তালিকা, বা টেবিলের তালিকা।
এমনকি কোনও একক কম্পিউটারে চলার সময়ও parallel
কীভাবে আপনার কাজগুলিকে সমান্তরাল করা যায় তার চেয়ে অনেক বেশি নিয়ন্ত্রণ আপনাকে দেয়। man
পৃষ্ঠা থেকে এই উদাহরণটি নিন :
To convert *.wav to *.mp3 using LAME running one process per CPU core
run:
parallel lame {} -o {.}.mp3 ::: *.wav
ঠিক আছে, আপনি একই সঙ্গে করতে পারে
for i in *wav; do lame "$i" -o "${i%.wav}.mp3" & done
যাইহোক, এটি দীর্ঘ এবং আরও জটিল এবং আরও গুরুত্বপূর্ণ, .wav
ফাইল রয়েছে যতগুলি কাজ চালু করবে । আপনি যদি এটি কয়েক হাজার ফাইলে চালান তবে এটি সম্ভবত একটি সাধারণ ল্যাপটপটি হাঁটুতে আনতে পারে। parallel
অন্যদিকে, সিপিইউ কোর প্রতি একটি কাজ চালু করবে এবং সবকিছু সুন্দর এবং পরিচ্ছন্ন রাখবে।
মূলত, parallel
আপনার কাজগুলি কীভাবে পরিচালিত হয় এবং কতগুলি উপলভ্য সংস্থান তাদের ব্যবহার করা উচিত তা সূক্ষ্ম করার সুযোগ দেয়। আপনি যদি সত্যিই এই সরঞ্জামটির শক্তি দেখতে চান তবে এর ম্যানুয়ালটি দেখুন বা খুব কমপক্ষে, এটি যে উদাহরণগুলি উপস্থাপন করে।
সমান্তরালের সাথে তুলনা করার জন্য সরল ব্যাকগ্রাউন্ডিং সত্যিকারের ধরণের স্তরের কাছে নেই। যেমন থেকে কীভাবে parallel
আলাদা হয় xargs
, জিএনইউ জনতা এখানে একটি দুর্দান্ত ব্রেকডাউন দেয় । আরও কিছু স্পষ্ট বিষয় হ'ল:
- xargs বিশেষ অক্ষরগুলির সাথে খারাপভাবে ডিল করে (যেমন স্থান, 'এবং ")।
- xargs সমান্তরালভাবে প্রদত্ত সংখ্যক কাজ চালাতে পারে, তবে সমান্তরালে সিপু-কোর জব সংখ্যা চালানোর পক্ষে কোনও সমর্থন নেই।
- xargs আউটপুটকে দলবদ্ধ করার জন্য কোনও সমর্থন নেই, সুতরাং আউটপুট একসাথে চলতে পারে, উদাহরণস্বরূপ একটি লাইনের প্রথম অর্ধেকটি একটি প্রক্রিয়া থেকে এবং রেখার শেষ অর্ধেক অন্য প্রক্রিয়া থেকে from
- xargs আউটপুট ক্রম রাখার জন্য কোন সমর্থন নেই, অতএব xargs ব্যবহার করে সমান্তরালভাবে কাজ চালানো হলে প্রথম কাজ শেষ হওয়া পর্যন্ত দ্বিতীয় কাজের আউটপুট স্থগিত করা যাবে না।
- xargs দূরবর্তী কম্পিউটারে কাজ চালানোর জন্য কোনও সমর্থন নেই।
- প্রসঙ্গ প্রতিস্থাপনের জন্য xargs এর কোনও সমর্থন নেই, সুতরাং আপনাকে আর্গুমেন্ট তৈরি করতে হবে।
parallel
সিনট্যাক্সটিকে ঘৃণা করি , মুখস্ত করার জন্য কীবোর্ড-ফেসরোলের আরও একটি নতুন ব্র্যান্ড। তবে আমি অনুমান করি যে কোর / জব জুড়ে অটো ভারসাম্যহীন তা মূল্যবান ...?