मेरे पास मैक ओएस एक्स पर 100% सीपीयू में एक पृष्ठभूमि प्रक्रिया चल रही है। अन्य सभी एप्लिकेशन इसकी वजह से बहुत धीमी हैं।
मैं इस प्रक्रिया को 50% से अधिक नहीं लेना चाहता / चाहती ताकि मेरे आवेदन बेहतर तरीके से चल सकें। मैं यह कैसे कर सकता हूँ?
मेरे पास मैक ओएस एक्स पर 100% सीपीयू में एक पृष्ठभूमि प्रक्रिया चल रही है। अन्य सभी एप्लिकेशन इसकी वजह से बहुत धीमी हैं।
मैं इस प्रक्रिया को 50% से अधिक नहीं लेना चाहता / चाहती ताकि मेरे आवेदन बेहतर तरीके से चल सकें। मैं यह कैसे कर सकता हूँ?
जवाबों:
कमांड लाइन से ( Terminal.appया जो भी) उपयोग करें niceऔर renice, अन्य यूनिक्स की तरह।
niceप्रक्रिया शुरू करते समय उपयोग करें :
nice -n <priority> <command> <arguments to command>
डिफ़ॉल्ट प्राथमिकता शून्य है, सकारात्मक मूल्य "अच्छे" (कि कम प्राथमिकता है) और नकारात्मक मूल्य "कम अच्छा" (उच्च प्राथमिकता) हैं। ऐसा लगता है कि मैक ओएस +10 से -10 तक चलता है।
reniceपहले से चल रही प्रक्रिया ( renice10.5 पर मैन पेज से) की प्राथमिकता बदलने के लिए उपयोग करें :
renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
renice -n increment [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
जिस हिस्से में आप रुचि रखते हैं वह pidबिट है। यह नौकरी के लिए प्रक्रिया आईडी है और आप इसे ps -u <your username>प्रक्रिया नाम का उपयोग करके देख सकते हैं , लेकिन मैं top -oइस मामले में पसंद करता हूं , क्योंकि आप जिस प्रक्रिया में रुचि रखते हैं वह शीर्ष के पास होगी।
नोट: सुपरसुसर विशेषाधिकारों के बिना आप किसी प्रक्रिया की प्राथमिकता कभी नहीं बढ़ा सकते। सामान्य उपयोगकर्ताओं के लिए, niceऔर reniceएक तरह से सड़कें हैं। और प्राथमिकता में छोटे बदलावों से चल रहे समय पर बड़े प्रभाव पड़ सकते हैं। इसलिए इस पर आसानी से चलें जब तक आप इसे समझ न लें।
आप कमांड का उपयोग कर सकते हैं:
renice -n # PID
कहाँ पे:
topटर्मिनल ऐप पर टाइप करके देख सकते हैं (उपयोगिताओं / Terminal.app)यदि यह एक सिस्टम प्रक्रिया या कोई अन्य उपयोगकर्ता प्रक्रिया है, तो आपको टाइप करना चाहिए:
sudo renice -n 10 PID
यह आपसे आपका पासवर्ड मांगेगा (यदि आप sudoer हैं)। संख्या के लिए मैं 10 या 19 (यहां तक कि कम प्राथमिकता) की सिफारिश करूंगा।
ध्यान दें कि यह प्राथमिकता बदल देगा CPU उपयोग नहीं। यदि आप ऐसी अन्य प्रक्रियाएँ नहीं चला रहे हैं जिनमें CPU की आवश्यकता है या आपके Mac (Core 2 Quad Core) पर एक से अधिक CPU हैं तो प्रक्रिया अभी भी CPU का 100% उपयोग कर सकती है।
renice 20 $(pgrep ImageOptim)
या ImageOptim के बजाय अपने प्रोग्राम के नाम का उपयोग करें
renice -20एक प्रक्रिया को सर्वोच्च संभव प्राथमिकता देता है, उदाहरण के लिए जब ऑक्टेव जैसे बड़े कार्यक्रम को संकलित करता है। renice 20एक प्रक्रिया को सबसे कम प्राथमिकता देता है।
मुफ्त बीएनसर और प्रोसेस विजार्ड (मेरे पिछले पसंदीदा), और फ्रीज़र के $ 1.99 संस्करण की तरह जीयूआई उपयोगिताएं भी हैं , जो मेरा नया पसंदीदा है। ये सभी रनिंग एप्लिकेशन पर काम करते हैं।
यदि आपकी प्रक्रिया एक प्रणाली प्रक्रिया के बजाय एक ऐप या ऐप सहायक है, और आप नहीं करना चाहते हैं niceया reniceहर सिस्टम बूट पर आप इसे AppPolice को एक शॉट दे सकते हैं । यह खुला स्रोत और मुफ्त है। आप इसे यहाँ डाउनलोड कर सकते हैं ।
एक अन्य विकल्प एक बहुत अच्छा कमांड लाइन कार्य प्रबंधक जीयूआई कहा जाएगा htop। आप सभी प्रक्रियाओं को देख सकते हैं और उनके niceमूल्यों F7और और F8शॉर्टकटों को ट्यून कर सकते हैं ।
(कृपया ध्यान दें कि niceसकारात्मक मूल्यों के लिए नकारात्मक मूल्य अधिक प्राथमिकता और विपरीत हैं)
इसे स्थापित करने के लिए:
brew install htopको टर्मिनल में चलाएंhtopटर्मिनल में प्रक्रियाओं को देखने या प्रबंधित sudo htopकरने या सभी सिस्टम को कवर करने के लिए कर सकते हैं।