Auto Nice Daemon प्राचीन है, और अपने सॉफ्टवेयर प्राथमिकताओं को मैन्युअली बदलना कष्टप्रद है। क्या प्रत्येक प्रोग्राम को कितने संसाधनों का उपयोग करना चाहिए इसे नियंत्रित करने का एक आधुनिक तरीका नहीं है? Ananicy (ANother Auto NICe डेमॉन) से मिलें, एक आधुनिक ऑटो-नाइस समाधान, जिसके साथ आप अपने सॉफ्टवेयर के लिए प्रोफाइल बना सकते हैं ताकि उन ऐप्स को प्राथमिकता दी जा सके जिनकी आप परवाह करते हैं। आइए देखें कि आप ऐसा कैसे कर सकते हैं।
इंस्टॉलेशन
Ananicy को काम करने के लिए systemd की आवश्यकता होती है, इसलिए यह सूरज के नीचे हर डिस्ट्रीब्यूशन के साथ संगत नहीं है। Ubuntu, Mint, Debian, और संगत डिस्ट्रीब्यूशन पर इसे इंस्टॉल करने के लिए, उपयोग करें:
git clone https://github.com/Nefelim4ag/Ananicy.git ./Ananicy/package.sh debian sudo dpkg -i ./Ananicy/ananicy-*.deb
यदि आप 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
वास्तविक एप्लिकेशन शुरू करने के लिए, उपयोग करें:
sudo systemctl start ananicy
यदि आप कम-पावर्ड सिस्टम पर हैं, जहां सॉफ्टवेयर का हर टुकड़ा संसाधनों के लिए लड़ रहा है, तो यह तुरंत कुछ अधिक प्रतिक्रियाशील महसूस करना शुरू कर सकता है।
प्रीसेट जांचें
Ananicy कई लोकप्रिय एप्लिकेशन के लिए नियमों का एक गुच्छा प्री-बंडल के साथ आता है। उन्हें देखने के लिए, अपना पसंदीदा टर्मिनल खोलें और Ananicy के नियम डायरेक्टरी पर जाएं:
cd /etc/ananicy.d/00-default/
प्रत्येक एप्लिकेशन के नियम अलग-अलग फाइलों में संग्रहीत हैं। उदाहरण के लिए, लोकप्रिय qBittorrent फाइलशेयरिंग क्लाइंट के लिए प्रीसेट नियम देखने के लिए, आप उपयोग कर सकते हैं:
sudo nano qBittorrent.rules
आप इन्हें अपने खुद के नियमों के आधार के रूप में उपयोग कर सकते हैं।
अपने खुद के नियम जोड़ें
एक एप्लिकेशन के लिए नियम बनाने के लिए, आपको उसका प्रोसेस नाम पता होना चाहिए। शुक्र है, लिनक्स पर, यह आमतौर पर एप्लिकेशन के नाम के समान होता है। आप प्रोसेस नाम सत्यापित करने के लिए top कमांड का उपयोग कर सकते हैं।
एक प्रोसेस का पता लगाएं जो आपके कंप्यूटर को हॉग कर रहा है और उसका नाम नोट करें। आइए हमारे उदाहरण के रूप में timeshift ऐप का उपयोग करें।
Ananicy के नियम डायरेक्टरी में एक नई टेक्स्ट फाइल बनाएं। भविष्य के संदर्भ के लिए आसान बनाने के लिए एप्लिकेशन के नाम का उपयोग करना बेहतर है। सुनिश्चित करें कि आपकी फाइल ".rules" के साथ समाप्त होती है ताकि Ananicy इसे नियम फाइल के रूप में पहचान सके।
sudo nano timeshift.rules
सॉफ्टवेयर के एक टुकड़े के लिए नियम बनाने का सबसे आसान तरीका केवल उसका नाम बताना और उसके प्रकार को वर्गीकृत करना है। Ananicy गेम्स, मल्टीमीडिया ऐप्स, डॉक्यूमेंट एडिटर्स, आदि के लिए पूर्वनिर्धारित प्रकारों के साथ आता है। उन्हें देखने के लिए, कमांड का उपयोग करें:
ananicy dump types
उनमें से प्रत्येक अलग-अलग nice, ionice, cgroup, और अन्य मानों के साथ आता है, लेकिन यह सुझाव दिया जाता है कि आप एप्लिकेशन के nice मान को ट्वीक करने से आगे न जाएं। हालांकि, उन एप्लिकेशन के लिए जो आपके स्टोरेज को बहुत पढ़ते और लिखते हैं, उनके इनपुट-आउटपुट प्राथमिकता को ioclass पैरामीटर का उपयोग करके परिभाषित करना भी उचित है।
यह सब ध्यान में रखते हुए, हम अपना खुद का कस्टम नियम बनाने के लिए तैयार हैं:
{ "name": "timeshift", "type": "BG_CPUIO", "nice": 17, "ioclass": "idle" }
उपरोक्त नियम:
- एप्लिकेशन का नाम बताता है
- इसके प्रकार को परिभाषित करता है
- इसे प्रीसेट की तुलना में एक अलग nice प्राथमिकता असाइन करता है
- इसकी इनपुट/आउटपुट प्राथमिकता को आइडल पर सेट करता है
सैद्धांतिक रूप से, आपको केवल एप्लिकेशन का नाम बताना होगा, और बाकी सब वैकल्पिक है। व्यावहारिक रूप से, यदि आप केवल वही करते हैं, तो Ananicy केवल ऐप के अस्तित्व को स्वीकार करेगा लेकिन इसे नियंत्रित करने का प्रयास नहीं करेगा। उसके लिए, आपको कम से कम इसके प्रकार को परिभाषित करना होगा।
इसका प्रकार अलग-अलग पूर्वनिर्धारित nice और इनपुट/आउटपुट मानों के साथ आता है, और आपको शायद एक मिल जाएगा जो इस बात से मेल खाता है कि आप सॉफ्टवेयर के एक टुकड़े को कैसे प्रतिबंधित करना चाहते हैं। कभी-कभी, हालांकि, हमारे timeshift के मामले की तरह, आप उन्हें और ट्वीक करना चाह सकते हैं। तभी आपको nice या ioclass मान को स्पष्ट रूप से बताना होगा यदि यह Ananicy के टाइप प्रीसेट में शामिल एक से अलग है।
हमारे द्वारा चुना गया BG_CPUIO प्रीसेट हमारे एप्लिकेशन के प्रकार से मेल खाता है क्योंकि, बैकअप समाधान के रूप में, यह आमतौर पर बैकग्राउंड में चलता है लेकिन निरंतर रीड और राइट करते समय बहुत सारे प्रोसेसिंग साइकिल खा सकता है। हालांकि, BG_CPUIO प्रीसेट इसे सबसे कम संभव nice और ionice मान असाइन करेगा, जो बैकअप प्रक्रिया को युगों तक ले जा सकता है। इस वजह से, हमने nice मान को 17 और ioclass को best-effort तक बढ़ाया, ताकि प्रक्रिया कुछ हद तक तेज हो सके।
आइए एक और उदाहरण देखें। Batman: Arkham City का "Joker's Carnival" DLC मेरे पसंदीदा गेमिंग टुकड़ों में से एक है। इसकी एक्शन तरल गति पर निर्भर करती है, हालांकि, और मैं लिनक्स Mint में जब भी बैकग्राउंड में सॉफ्टवेयर का दूसरा टुकड़ा चल रहा होता है तो इसे हकलाते हुए महसूस कर सकता था। इस प्रकार, इसके लिए, मैं विपरीत करना चाहता था - हर चीज पर इसकी प्राथमिकता बढ़ाएं।
Linux Mint के सिस्टम मॉनिटर की जांच करके Steam के साथ Proton के माध्यम से गेम चलाने के बाद, हम इसकी प्रोसेस नाम को "BatmanAC.exe" के रूप में देख सकते हैं। Ananicy के साथ इसे एक अच्छा बूस्ट देने के लिए, मैंने पहले की तरह "BatmanAC_ody.rules" नामक एक नया नियम बनाया। हालांकि, इस मामले में, इसकी सामग्री थी:
{ "name": "BatmanAC.exe", "type": "Game" }
यह पर्याप्त था क्योंकि "Game" प्रकार "-5" nice मान के साथ आता है, जो एक ऐप को हर चीज पर प्राथमिकता देता है। इस प्रकार, आपको खुद nice मान बताने या अधिक जटिल नियम बनाने की आवश्यकता नहीं है।
अच्छे माप के लिए एक रीस्टार्ट बाद, और Ananicy सक्रिय होगा, आपके सॉफ्टवेयर की प्राथमिकताओं को ट्वीक करने के लिए कार्रवाई में आने के लिए तैयार। नीचे स्क्रीनशॉट में BatmanAC.exe प्रोसेस के लिए आप जो मान देखते हैं वह स्वचालित रूप से असाइन किया गया था, बिना किसी उपयोगकर्ता हस्तक्षेप की आवश्यकता के।
ध्यान दें कि आपको अपने सभी सॉफ्टवेयर के लिए यह करने की आवश्यकता नहीं है, लेकिन सबसे अधिक मांग वाली बैकग्राउंड प्रक्रियाओं पर लगाम खींचना और अधिक इंटरैक्टिव वालों को बूस्ट करना इस बात में दुनिया भर का अंतर ला सकता है कि आपके कंप्यूटर का उपयोग कैसा लगता है। यह हकलाहट को कम कर सकता है और चारों ओर एक स्मूथ अनुभव प्रदान कर सकता है।
क्या आप पहले से ही Ananicy या कोई अन्य समान समाधान उपयोग कर रहे हैं जो आपको अपने कंप्यूटर के संसाधनों को अपने ऐप्स को असाइन करने के तरीके को नियंत्रित करने की अनुमति देता है? क्या आप मैन्युअली अपने सॉफ्टवेयर को रेनाइस कर रहे हैं? नीचे कमेंट सेक्शन में हमें बताएं।