সিপিইউলিমিট সরঞ্জাম সহ লিনাক্সের একটি প্রক্রিয়ার সিপিইউ ব্যবহার সীমিত করুন


আগের পোস্টে, আমরা লিনাক্সের যে কোনও প্রক্রিয়ার সিপিইউ ব্যবহার সীমিত করা এবং নিয়ন্ত্রণের জন্য সিপিউটুলকে ব্যাখ্যা করেছি। এটি সিপিইউ/সিস্টেম লোড নির্ধারিত প্রান্তিকের বাইরে গেলে কোনও সিস্টেমের প্রশাসককে কোনও প্রক্রিয়া (বা প্রসেস গ্রুপ) কার্যকর করতে বাধা দেয়। এখানে আমরা শিখব কীভাবে সিপুলিমিট নামে একটি অনুরূপ সরঞ্জাম ব্যবহার করতে হয়।

সিপিউলিমিট সিপিইউটিউলের মতো কোনও প্রক্রিয়াটির সিপিইউ ব্যবহারকে সীমাবদ্ধ করতে ব্যবহৃত হয়, তবে এটি তার অংশের তুলনায় আরও ব্যবহারের বিকল্প সরবরাহ করে offers একটি গুরুত্বপূর্ণ পার্থক্য হ'ল সিপুলিমিট সিপুটুলের বিপরীতে সিস্টেম লোড পরিচালনা করে না।

লিনাক্সের একটি প্রক্রিয়ার সিপিইউ ব্যবহার সীমিত করতে সিপিইউলিমিট ইনস্টল করুন

প্যাকেজ পরিচালন সরঞ্জামটি ব্যবহার করে ডেবিয়ান/উবুন্টু এবং এর ডেরাইভেটিভগুলির ডিফল্ট সফ্টওয়্যার সংগ্রহস্থল থেকে ইনস্টল করতে সিপিইউলিমিট উপলব্ধ।

$ sudo apt install cpulimit

আরএইচইএল/সেন্টোস এবং ফেডোরায় আপনাকে প্রথমে EPEL সংগ্রহস্থল সক্ষম করতে হবে এবং তারপরে সিপুলিমিট ইনস্টল করা উচিত।

# ইয়ম ইনস্টল করুন ইপেল-রিলিজ
# ইয়ম সিপুলিমিট ইনস্টল করুন

এই উপ বিভাগে, আমরা ব্যাখ্যা করব কীভাবে সিপুলিমিট কাজ করে। প্রথমে আসুন একটি কমান্ড চালানো যাক (সিপিপুল আচ্ছাদন করার সময় আমরা একই ডিডি কমান্ডটি দেখেছিলাম) যার পটভূমিতে উচ্চ সিপিইউ শতাংশ হওয়া উচিত (লক্ষ্য করুন যে কমান্ডটি চালানোর পরে পিআইডি প্রসেসটি প্রিন্ট করা হয়েছে)।

$ dd if=/dev/zero of=/dev/null &

[1] 17918

এরপরে, আমরা গ্লানসস সরঞ্জামগুলি ব্যবহার করতে পারি যা উপরের কমান্ডের সিপিইউ ব্যবহার দেখার জন্য চলমান লিনাক্স সিস্টেমের প্রকৃত ঘন ঘন আপডেট হওয়া অবস্থাকে আউটপুট দেয়।

$ top

উপরের আউটপুটটি দেখে, আমরা দেখতে পাব যে ডিডি প্রক্রিয়াটি সিপিইউ সময়ের সর্বোচ্চ শতাংশ 100.0% ব্যবহার করছে।

তবে আমরা সিপুটলিমিটকে নিম্নরূপ ব্যবহার করে এটি সীমাবদ্ধ করতে পারি। --pid বা -p বিকল্পটি পিআইডি নির্দিষ্ট করার জন্য ব্যবহৃত হয় এবং --limit বা -l হয় একটি প্রক্রিয়া জন্য একটি ব্যবহার শতাংশ সেট করতে ব্যবহৃত।

নীচের কমান্ডটি ডিডি কমান্ড (পিআইডি 17918) কে একটি সিপিইউ কোরের 50% ব্যবহারের মধ্যে সীমাবদ্ধ করবে।

$ sudo cpulimit --pid 17918 --limit 50  

Process 17918 detected

একবার আমরা সিপুলিমিট চালানোর পরে আমরা ডিডি কমান্ডের জন্য বর্তমান সিপিইউ ব্যবহারকে এক নজরে দেখতে পারি। আউটপুট থেকে, মান (51.5% -55.0% বা কিছুটা অতিক্রম) হতে পারে।

আমরা এর সিপিইউ ব্যবহারটি দ্বিতীয়বারের মতো নিম্নরূপে থ্রটল করতে পারি, এবার আরও শতাংশ কমিয়ে নিম্নরূপ:

$ sudo cpulimit --pid 17918 --limit 20 

Process 17918 detected

আমরা এর আগে যেমন করেছি, আমরা প্রক্রিয়াটির জন্য নতুন সিপিইউ ব্যবহার দেখতে শীর্ষস্থানীয় বা ঝলক চালাতে পারি, যা 20% -25.0% বা এর বাইরে কিছুটা হবে।

$ top

দ্রষ্টব্য: শেলটি ইন্টারঅ্যাকটিভ হয়ে যায় - সিপুলিমিট চলমান থাকলে কোনও ব্যবহারকারীর ইনপুট আশা করে না expect এটি মারতে (যা সিপিইউর ব্যবহার সীমাবদ্ধতা অপারেশন বন্ধ করে), [Ctrl + C] টিপুন।

সিপুলিমিটকে ব্যাকগ্রাউন্ড প্রক্রিয়া হিসাবে চালানোর জন্য, টার্মিনালটি মুক্ত করে --background অথবা -b স্যুইচ ব্যবহার করুন।

$ sudo cpulimit --pid 17918 --limit 20 --background

সিস্টেমে উপস্থিত সিপিইউ কোরের সংখ্যা নির্দিষ্ট করতে, --cpu বা -c পতাকা ব্যবহার করুন (এটি সাধারণত স্বয়ংক্রিয়ভাবে সনাক্ত করা হয়)।

$ sudo cpulimit --pid 17918 --limit 20 --cpu 4

কোনও প্রক্রিয়াটির সিপিইউ ব্যবহার সীমিত করার পরিবর্তে আমরা এটিকে - কিল বা -কে বিকল্পের সাহায্যে হত্যা করতে পারি। ডিফল্টটি প্রক্রিয়ায় প্রেরিত সিগন্যাল হ'ল সিগকন্ট, তবে ভিন্ন সংকেত প্রেরণের জন্য - সিগন্যাল বা -s পতাকা ব্যবহার করুন।

$ sudo cpulimit --pid 17918 --limit 20 --kill 

উপযুক্ত টার্গেট প্রক্রিয়া না থাকলে, বা এটি মারা যাওয়ার ক্ষেত্রে প্রস্থান করতে, -z বা --lazy এর মতো অন্তর্ভুক্ত করুন।

$ sudo cpulimit --pid 17918 --limit 20 --kill --lazy

অতিরিক্ত তথ্য এবং ব্যবহারের বিকল্পগুলির জন্য, cpulimit ম্যান পৃষ্ঠাটি দেখুন।

$ man cpulimit

সিপিইউ তথ্য এবং সিপিইউ/সিস্টেমের কার্যকারিতা পর্যবেক্ষণের জন্য নিম্নলিখিত দরকারী গাইডগুলি দেখুন।

  1. লিনাক্সে সর্বাধিক মেমরি এবং সিপিইউ ব্যবহারের মাধ্যমে শীর্ষস্থানীয় চলমান প্রক্রিয়াগুলি সন্ধান করুন
  2. সিপুস্ট্যাট - লিনাক্সে প্রক্রিয়া চালিয়ে সিপিইউ ব্যবহারের উপর নজর রাখে
  3. CoreFreq - লিনাক্স সিস্টেমগুলির জন্য একটি শক্তিশালী সিপিইউ মনিটরিং সরঞ্জাম
  4. লিনাক্সে সর্বাধিক মেমরি এবং সিপিইউ ব্যবহারের মাধ্যমে শীর্ষস্থানীয় চলমান প্রক্রিয়াগুলি সন্ধান করুন
  5. লিনাক্স পারফরম্যান্স নিরীক্ষণের জন্য 20 কমান্ড লাইন সরঞ্জাম
  6. 13 লিনাক্স পারফরম্যান্স মনিটরিং সরঞ্জাম - পার্ট 2

তুলনায়, সিপিইউটিউল এবং সিপুলিউমিট পরীক্ষা করার পরে, আমরা লক্ষ্য করেছি যে প্রাক্তন আরও কার্যকর এবং নির্ভরযোগ্য "প্রক্রিয়া সিপিইউ ব্যবহারের সীমাবদ্ধতা" কার্যকারিতা সরবরাহ করে।

এটি প্রদত্ত প্রক্রিয়াটির বিপরীতে উভয় সরঞ্জাম চালনার পরে পর্যালোচিত সিপিইউ ব্যবহারের শতাংশের পরিসর অনুযায়ী according দুটি সরঞ্জামই ব্যবহার করে দেখুন এবং নীচের প্রতিক্রিয়া ফর্মটি ব্যবহার করে এই নিবন্ধটিতে আপনার চিন্তাভাবনা যুক্ত করুন।