কম্পিউটার টিউটোরিয়াল

লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

Auto Nice Daemon পুরনো, এবং ম্যানুয়ালি সফটওয়্যার প্রায়োরিটি পরিবর্তন করা বিরক্তিকর। আধুনিক পদ্ধতিতে প্রোগ্রামের রিসোর্স ব্যবহার কন্ট্রোল করার উপায় নেই কি? পরিচিত হন Ananicy (ANother Auto NICe daemon)-এর সাথে, একটি আধুনিক অটো-নাইস সমাধান, যার মাধ্যমে আপনি আপনার সফটওয়্যারের জন্য প্রোফাইল বানাতে পারেন যাতে আপনার প্রিয় অ্যাপগুলোকে প্রায়োরিটি দেয়া যায়। দেখি কিভাবে করা যায়।

ইনস্টলেশন

Ananicy কাজ করার জন্য systemd দরকার, তাই এটি সকল ডিস্ট্রিবিউশনের সাথে কম্প্যাটিবল নয়। Ubuntu, Mint, Debian, এবং কম্প্যাটিবল ডিস্ট্রিবিউশনে ইনস্টল করতে:

git clone https://github.com/Nefelim4ag/Ananicy.git
./Ananicy/package.sh debian
sudo dpkg -i ./Ananicy/ananicy-*.deb
লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

আপনি যদি Arch, Manjaro, বা অন্য সিমিলার ডিস্ট্রিবিউশনে থাকেন, তবে নিচের কমান্ড দিয়ে ইনস্টল করুন:

git clone https://github.com/Nefelim4ag/Ananicy.git /tmp/ananicy
cd /tmp/ananicy
sudo make install

Ananicy schedtool-ও নির্ভর করে, তাই যদি এটি ইতিমধ্যে ইনস্টলড না থাকে, তবে এটিও যোগ করুন। Debian-কম্প্যাটিবল এবং Arch-কম্প্যাটিবল ডিস্ট্রিবিউশনে যথাক্রমে:

# Debian/Ubuntu
sudo apt install schedtool
# Arch Linux
sudo pacman -S schedtool

সবকিছু সেট আপ হলে, এর ডيمون ইনএবল করুন যাতে এটি সবসময় এক্টিভ থাকে এবং আপনার অ্যাপ্লিকেশন মনিটর করে:

sudo systemctl enable ananicy
লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

আসল অ্যাপ্লিকেশন স্টার্ট করতে:

sudo systemctl start ananicy

আপনি যদি লো-পাওয়ার্ড সিস্টেমে থাকেন, যেখানে প্রতিটি সফটওয়্যার রিসোর্সের জন্য লড়াই করছে, তবে এটি সার্বিকভাবে কিছুটা রেসপন্সিভ লাগতে পারে অবিলম্বে।

প্রিসেট চেক করা

Ananicy অনেক পপুলার অ্যাপ্লিকেশনের জন্য বান্ডেলড রুলস দিয়ে আসে। সেগুলো চেক করতে, আপনার পছন্দের টার্মিনাল চালু করুন এবং Ananicy-এর রুলস ডিরেক্টরিতে যান:

cd /etc/ananicy.d/00-default/
লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

প্রতিটি অ্যাপ্লিকেশনের রুল আলাদা ফাইলে সংরক্ষিত। উদাহরণস্বরূপ, জনপ্রিয় qBittorrent ফাইল শেয়ারিং ক্লায়েন্টের প্রিসেট রুল চেক করতে:

sudo nano qBittorrent.rules

আপনি সেগুলো আপনার নিজস্ব রুলের বেস হিসেবে ব্যবহার করতে পারেন।

নিজস্ব রুল যোগ করা

একটি অ্যাপ্লিকেশনের জন্য রুল তৈরি করতে, আপনাকে সেটির প্রসেস নাম জানতে হবে। লিনাক্সে সেটি সাধারণত অ্যাপ্লিকেশনের নামের সাথে মেলে। top কমান্ড ব্যবহার করে প্রসেস নাম ভেরিফাই করতে পারেন।

একটি প্রসেস লোকেট করুন যা আপনার কম্পিউটার হগ করছে এবং এর নাম নোট করুন। আমরা উদাহরণ হিসেবে timeshift অ্যাপ ব্যবহার করব।

Ananicy-এর রুলস ডিরেক্টরিতে একটি নতুন টেক্সট ফাইল তৈরি করুন। ভবিষ্যতে রেফারেন্সের জন্য অ্যাপ্লিকেশনের নাম ব্যবহার করা ভালো। ফাইলটি ".rules" দিয়ে শেষ করতে হবে Ananicy-এর জন্য সেটি রুল ফাইল হিসেবে রিকগ্নাইজ করতে।

sudo nano timeshift.rules
লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

একটি সফটওয়্যারের জন্য রুল তৈরি করার সবচেয়ে সহজ পদ্ধতি হলো শুধু এর নাম এবং এর টাইপ ক্লাসিফাই করা। Ananicy-এ গেম, মাল্টিমিডিয়া অ্যাপ, ডকুমেন্ট এডিটর ইত্যাদির জন্য প্রিডিফাইনড টাইপ রয়েছে। সেগুলো চেক করতে কমান্ড ব্যবহার করুন:

ananicy dump types
লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

প্রতিটির আলাদা nice, ionice, cgroup, এবং অন্যান্য ভ্যালু রয়েছে, কিন্তু সাজেস্ট করা হয় আপনি অ্যাপ্লিকেশনের nice ভ্যালুর বাইরে আর কিছু টুইক না করুন। য lệnh, যে অ্যাপ্লিকেশনগুলো আপনার স্টোরেজে প্রচুর রিড ও রাইট করে, তাদের ইনপুট-আউটপুট প্রায়োরিটি ioclass প্যারামিটার দিয়ে ডিফাইন করা ও অর্থবহ।

এই সব বিবেচনায়, আমরা আমাদের কাস্টম রুল তৈরি করার জন্য প্রস্তুত:

{
"name": "timeshift",
"type": "BG_CPUIO",
"nice": 17,
"ioclass": "idle"
}
লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

উপরোক্ত রুল:

  • অ্যাপ্লিকেশনের নাম বলে
  • এর টাইপ ডিফাইন করে
  • প্রিসেটের চেয়ে আলাদা nice প্রায়োরিটি অ্যাসাইন করে
  • ইনপুট/আউটপুট প্রায়োরিটি idle হিসেবে সেট করে

তত্ত্বাবধানে, আপনাকে শুধু অ্যাপ্লিকেশনের নাম স্টেট করলেই হবে, বাকি সব অপশনাল। প্র্যাক্টিক্যালি, আপনি শুধু নাম করলে, Ananicy শুধু অ্যাপ্লিকেশনের একজিস্টেন্স একনোলেজ করবে কিন্তু কন্ট্রোল করার চেষ্টা করবে না। সেটির জন্য, আপনাকে কমপক্ষে এর টাইপ ডিফাইন করতে হবে।

এর টাইপের সাথে প্রিডিফাইনড nice এবং ইনপুট/আউটপুট ভ্যালু রয়েছে, এবং আপনি সম্ভবত একটা পাবেন যা আপনি কীভাবে একটি সফটওয়্যার রস্ট্রিক্ট করতে চান সেটির সাথে মেলে। কখনো কখনো, আমাদের timeshift-এর কেসের মত, আপনি সেগুলো আরও টুইক করতে চান। সেটি হলে আপনাকে eksplisিটলি nice বা ioclass ভ্যালু স্টেট করতে হবে যদি সেটি Ananicy-এর টাইপ প্রিসেট থেকে আলাদা হয়।

BG_CPUIO প্রিসেট আমরা সিলেক্ট করলাম যা আমাদের অ্যাপ্লিকেশনের টাইপের সাথে মেলে যেহেতু, একটি ব্যাকআপ সমাধান হিসেবে, এটি সাধারণত ব্যাকগ্রাউন্ডে রান করে কিন্তু প্রসেসিং সাইকেলের বড় অংশ খায় kontinuous রিড ও রাইট করার সময়। যেটবে, BG_CPUIO প্রিসেট এটিকে লouest possible nice এবং ionice ভ্যালু অ্যাসাইন করবে, যা ব্যাকআপ প্রসেসকে অতি ধীর করতে পারে। এর জন্য, আমরা nice ভ্যালু ১৭ এবং ioclass best-effort-এ বাড়িয়েছি কিছুটা প্রসেস গতি বাড়াতে।

আরেকটি উদাহরণ নেওয়া যাক। Batman: Arkham City-এর "Joker's Carnival" DLC আমার ফেভারিট গেমিং পিস। এর অ্যাকশন ফ্লুইড মোশনে নির্ভরশীল, এবং আমি লিনাক্স মিন্টে অন্য সফটওয়্যার ব্যাকগ্রাউন্ডে রান করলে স্টাটার ফিল করতাম। তাই, এর জন্য আমি চাইলাম সেটিকে সবকিছুর ওপর প্রায়োরিটি দেয়া।

লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

লিনাক্স মিন্টের System Monitor চেক করে Steam-এ Proton দিয়ে গেম রান করার পর, এর প্রসেস নাম দেখলাম "BatmanAC.exe"। Ananicy দিয়ে এটিকে nice বুস্ট দিতে, আমি পূর্বের মত "BatmanAC_ody.rules" নামে একটি নতুন রুল ফাইল তৈরি করলাম। কিন্তু এই কেসে, এর কন্টেন্ট ছিল:

{
"name": "BatmanAC.exe",
"type": "Game"
}
লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

এটিই যথেষ্ট যেহেতু "Game" টাইপ "-5" nice ভ্যালু দিয়ে আসে, একটি অ্যাপকে সবকিছুর ওপর প্রায়োরিটাইজ করে। তাই আপনাকে এক্সপ্লিসিটলি nice ভ্যালু স্টেট করতে হয় না বা জটিল রুল বানাতে হয় না।

ভালো মেজারমেন্টের জন্য একবার রিস্টার্ট করলাম, এবং Ananicy এক্টিভ হয়ে গেলো, আপনার সফটওয়্যার প্রায়োরিটি টুইক করতে প্রস্তুত। নিচের স্ক্রিনশটে BatmanAC.exe প্রসেসের ভ্যালু অটোমেটিক্যালি অ্যাসাইন হয়েছে, কোনো ইউজার ইন্টারভেনশন ছাড়া।

লিনাক্সএ Ananicy দিয়ে অ্যাপ প্রায়োরিটি কন্ট্রোল করার পদ্ধতি

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

আপনি কি ইতিমধ্যে Ananicy বা অন্য সিমিলার সমাধান ব্যবহার করছেন যা আপনাকে আপনার কম্পিউটারের রিসোর্স অ্যাপ্লিকেশনে অ্যালোকেট করার কন্ট্রোল দেয়? আপনি কি ম্যানুয়ালি আপনার সফটওয়্যার রিনাইস করছেন? নিচে কমেন্ট সেকশনে বলুন।

  1. NTP সার্ভারের সাথে লিনাক্স টাইম সিঙ্ক করার পদ্ধতি

  2. লিনাক্সের সাথে মাইক্রোসফ্ট OneDrive সিঙ্ক করার পদ্ধতি

  3. ব صوت দিয়ে প্রোডাক্টিভিটি বাড়ান: উইন্ডোজ ১০ ভয়েস কন্ট্রোল মাস্টার করুন

  4. রাসপবেরি পাই দিয়ে ৩D প্রিন্টার নিয়ন্ত্রণ: নতুনদের জন্য সম্পূর্ণ গাইড