Android एमुलेटर के साथ उच्च CPU उपयोग (qemu-system-i386.exe)


105

एमुलेटर qemu-system-i386.exe सीपीयू उपयोग लगभग 7 ~ 9 के बीच लगातार चल रहा है

एंड्रॉइड स्टूडियो 2.1 एंड्रॉइड एसडीके टूल्स: 25.1.3 होस्ट ऑपरेटिंग सिस्टम: विंडोज 7 - आई 7 2630 क्यूएम - 8 जीबी रैम इंटेल एक्स 86 एटम सिस्टम छवि स्थापित

कोई फर्क नहीं पड़ता कि मैं एमुलेटर में क्या सेटिंग बदलता हूं जैसे: उत्सर्जित प्रदर्शन, मल्टी-कोर सीपीयू, x86-64 छवि, हमेशा एक ही चीज

यह वास्तव में हमेशा के लिए कष्टप्रद प्रशंसक है

किसी को भी इस मुद्दे के लिए एक तय था?


1
व्यक्तिगत रूप से मैं Android के लिए Visua Studio Emulator का उपयोग करना पसंद करता हूं , सिर्फ इसलिए कि मैंने प्रदर्शन-वार और होस्ट संसाधनों का उपयोग करने में कभी इतना कुशल नहीं देखा। हालाँकि इसके लिए होस्ट पर हाइपर- V सक्षम होना चाहिए।
मातेई राडु

मैं अभी एक कोशिश
करूंगा

झूठी आशा के लिए क्षमा करें, लेकिन केवल अब मैंने पाया कि विंडोज 7 में हाइपर-वी नहीं है, ताकि एमुलेटर आपके मेजबान पर नहीं चल सके।
मातेई राडु

1
यह ठीक है :) ... मैं Genymotion अब प्लगइन के साथ परीक्षण कर रहा हूँ genymotion.com/plugins
skystar7

जवाबों:


166

निरंतर CPU उपयोग का कारण ध्वनि हो सकता है। यदि आपको अपने एमुलेटर में ध्वनि की आवश्यकता नहीं है, तो आप AVD की कॉन्फिग फ़ाइल को संपादित करके इसे अक्षम कर सकते हैं।

उन दो लाइनों को बदलें / जोड़ें

hw.audioInput=no
hw.audioOutput=no

अपडेट: जैसा कि बनीस ने टिप्पणी की है कि आप जरूरत न होने पर जीपीएस को निष्क्रिय करने का भी प्रयास कर सकते हैं:

hw.GPS = no 

पर लिनक्स / मैक फ़ाइल ~ / .android / avd / <AVD_Name> .avd / config.ini में स्थित है
पर विंडोज । \ Users \ <उपयोगकर्ता नाम> \ एंड्रॉयड \ avd \ <AVD_Name>: फ़ाइल सी में स्थित है। avd \ config.ini


18
मेरे मैक पर काम नहीं किया - अभी भी उच्च CPU उपयोग हो रहा है।
लीनने

1
@ सैंटीनो: यह वास्तव में मेरी समस्या को ठीक करता है - मैंने गलत config.ini फ़ाइल को संपादित किया। पुनः आरंभ करने से चोट भी नहीं लग सकती थी।
17:03 बजे लीन

1
धन्यवाद! ~ 50% से
घटाकर

2
अगर आप इसका उपयोग नहीं कर रहे हैं, तो भी GPS को अक्षम करने पर विचार करेंhw.GPS = no
buncis

2
@buncis आपको धन्यवाद देता है, केवल gps को निष्क्रिय करने के बाद यह काम करता है
Max Zonov

19

मैक पर मैंने देखा कि मेरे लैपटॉप के सोने के बाद एमुलेटर 100% से अधिक सीपीयू का उपयोग कर रहा था। ऑडियो को बंद करने के रूप में बेंजामिन ने सुझाव दिया कि समस्या को ठीक नहीं किया।

इम्यूलेटर पर पावर बटन को लंबे समय तक दबाकर सिम्युलेटेड डिवाइस को रीस्टार्ट करना मेरे लिए काम करता है।


16

X86_64 (या 64 बिट) एमुलेटर का उपयोग करके इसे मेरे लिए हल किया गया। वे x86 संस्करण की सिफारिश करते हैं, लेकिन यह मेरे लिए काम कर रहा था।


4
यह MacOS पर आवश्यक प्रतीत होता है।
रासमसोब

1
मेरी बहुत मदद की (macOS Mojave)।
अमीर जे।

यह कम से कम मैक के लिए समाधान है - बहुत बड़ा अंतर।
लाचो तोमोव

11

यह जानने के लिए कि वर्चुअल डिवाइस सबसे सीपीयू का उपयोग क्या कर रहा है:

adb shell

$ top

यह आपको सबसे अधिक CPU उपयोग के साथ प्रक्रियाओं की एक सूची दिखाएगा।

यह आपको यह निर्धारित करने में मदद करेगा कि क्या यह एमुलेटर के अंदर एक प्रक्रिया है (जैसे कि आपका ऐप), एमुलेटर के अंदर एक और प्रक्रिया, या केवल बहुत सारे सीपीयू का उपयोग करके स्वयं एमुलेशन।

बाद के मामले में, HAX (मूल इंटेल निर्देश) को स्थापित करके एमुलेटर को अनुकूलित करने का प्रयास करें या शायद AVV प्रोफ़ाइल संपादक का उपयोग करके हार्डवेयर त्वरण को सक्षम करें।


8

मुझे नवंबर 2018 की शुरुआत में यह समस्या थी।

वर्चुअल डिवाइस मोबाइल नेटवर्क डेटा से कनेक्ट करने की कोशिश कर रहा था, इसलिए मैंने इसे डिवाइस के अंदर ही बंद कर दिया। अब महान काम करो।


8

Win7 पर qemu के साथ एक ही समस्या, HAXM 7.2.0। मैंने ऑडियो स्विच ऑफ करने की कोशिश की है, इससे मदद नहीं मिली, क्यूमू कभी भी लगभग 20% सीपीयू की खपत करता है, एंड्रॉइड x86 और x64 दोनों छवियों पर बहुत धीमी गति से काम करता है।

मुझे HAXM के रिलीज़ नोट्स फ़ाइल में समाधान मिल गए हैं:

  • विंडोज पर, अवास्ट एंटीवायरस एचएएक्सएम के साथ हस्तक्षेप कर सकता है और एंड्रॉइड एमुलेटर या क्यूईएमयू को बहुत धीरे-धीरे चलाने का कारण बन सकता है । अवास्ट सेटिंग्स> समस्या निवारण में "जहां उपलब्ध हो," उपयोग किए गए वर्चुअलाइजेशन को अनचेक करने के लिए एक वर्कअराउंड है।

मेरे पास अवास्ट प्रो एंटीवायरस 18.5 है। मैंने इस परम को अनियंत्रित किया है, पीसी को रिबूट किया है और अब क्यूमू बेकार में 0% खर्च करता है, एंड्रॉइड ठीक काम करता है।

अद्यतन: यदि QEMU ने फिर से सीपीयू का उपभोग करना शुरू किया, तो पहले अवास्ट की अद्यतन स्थिति की जांच करें। पृष्ठभूमि अद्यतन के बाद अवास्ट HAXM को फिर से हस्तक्षेप करना शुरू कर सकता है। बस इसे हल करने के लिए विंडोज को रिबूट करें।


1
OMG ... पूरी तरह से काम किया। अवास्ट को 10 मिनट तक अक्षम करने के बाद, सीपीयू का उपयोग घटकर 15% और 1.4% के लिए रिबूट हो गया। बहुत बहुत धन्यवाद!
अली.डीएम

1
अवास्ट ... मेरे लिए भी समस्या थी
xcesco

यह अद्भुत था। CPU उपयोग 50% से 4% तक गिर गया। साभार @Nexus
ज़हीर

3

मेरे मामले में, coz मैं softwareadv में ग्राफिक्स प्रतिपादन के लिए चुनते हैं । इसलिए hardwareसीपीयू के उपयोग को 60 से घटाकर 10 करने और सीपीयू को 70 से 40 तक करने के लिए बदलाव के बाद ।


यह मेरे लिए काम करने लगा। सॉफ्टवेयर पर एमुलेटर हमेशा ~ 106 चला। हार्डवेयर पर स्विच करना लगभग ~ 24 है। लेकिन एमुलेटर के साथ बातचीत करते समय ~ 200 से अधिक हो सकता है। लेकिन बातचीत नहीं करने पर जल्दी से ~ 24 तक नीचे चला जाएगा। यह सबसे अच्छा समाधान प्रतीत होता है, लेकिन इसके बाद कॉन्फ़िगरेशन सेटिंग्स को अपडेट करना होगा जो आपको बाद में सक्षम करने की आवश्यकता हो सकती है।
ant2009

2

मैंने मॉनिटर के फ़्रैमरेट को 60 हर्ट्ज पर सेट करके अपने एमुलेटर का सीपीयू उपयोग कम कर दिया। यह 144 हर्ट्ज पर था और मेरा सीपीयू 60% - 70% पर चल रहा था। केवल मॉनिटर के फ़्रैमरेट को बदलकर, यह अब 3% उपयोग पर बैठा है।


आप मार्गदर्शन कर सकते हैं कि आपने कहाँ किया?
अजीत कुमार दुबे

आपके मॉनिटर गुणों में, स्क्रीन रिफ्रेश रेट का विकल्प होगा। इसे 60hz या उससे कम पर सेट करें
soniiic

2

मैं config.ini फ़ाइल के साथ ऑडियो को बंद करने में सक्षम नहीं था, लेकिन केवल -aaudio cmd लाइन तर्क के साथ qemu के लिए। हालाँकि, एंड्रॉइड स्टूडियो 3.2 के साथ, आप एमुलेटर पर कस्टम तर्क जोड़ नहीं सकते हैं, इसलिए मैंने इसे बनाया:

एंड्रॉइड एसडीके के एमुलेटर डायर में, मेरे मामले में ~ / एंड्रॉइड / एसडीके / एमुलेटर /

mv emulator emulator.orig

सामग्री के साथ एमुलेटर नामक बैश स्क्रिप्ट बनाएं:

#!/bin/bash

DIR=`dirname "$0"`

$DIR/emulator.orig -noaudio $*

फिर:

chmod +x emulator

अब, तर्क -noaudio को एंड्रॉइड स्टूडियो से एमुलेटर के सभी इनवोकेशन में जोड़ा जाएगा और आपको बहुत सारे सीपीयू साइकिल बचाएंगे।


2

सेटिंग में स्थान अक्षम करें और स्पर्श ध्वनियों को भी अक्षम करें।


2

मैं Intel Core i9 और 16 GB RAM और Radeon Pro 560X 4GB ग्राफिक्स के साथ macOS Catalina (संस्करण 10.15.2) पर हूं ।

मैंने इम्यूड पावर बटन का उपयोग करके एमु डिवाइस को पुनः आरंभ करके केमू द्वारा उच्च सीपीयू उपयोग को हल किया ।

इसके अलावा, AVD बनाते समय, मैंने Hardwareइसके बजाय ग्राफिक्स रेंडरर को चुना Auto


2

मेरे मामले में यह तेज बूट था जो समस्या पैदा कर रहा था, सामान्य बूट में मजबूर करने के लिए पाठ फ़ाइल को खोलें C:\Users\<username>\.android\avd\<AVD name>\config.ini और कम से कम एक मान बदलें।

उदाहरण के लिए लाइन बदलें

hw.battery=yes 

सेवा

hw.battery=no

1

अपडेट करें:

मैंने Genymotion.com/plugins पर Genymotion plugin स्थापित किया है, और इसमें एक अद्भुत प्रदर्शन है


3
उत्पत्ति अच्छी और तेज़ है, लेकिन व्यावसायिक उपयोग के लिए मुफ्त नहीं है।
गैरी बक

1

मेरे मामले में, मुझे केवल इस मुद्दे का सामना करना पड़ा जब एमुलेटर के कई उदाहरण चल रहे थे।

Android SDK ( <Android SDK path>\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe) में दिए गए Intel हार्डवेयर त्वरित निष्पादन प्रबंधक (HAXM) इंस्टॉलर को फिर से चलाएं , बदलें का चयन करें और देखें कि HAXM को कितनी मेमोरी आवंटित की गई है। यदि यह 2 जीबी या उससे कम है, तो आप शायद इसे कम से कम 4 जीबी तक बढ़ाना चाहते हैं। फिर अपने एमुलेटर को रीस्टार्ट करें और देखें कि क्या सीपीयू उपयोग बंद हो गया है।


मैं चेंज बटन को एक्सेस नहीं कर सकता (यह अक्षम है)। क्या उस कॉन्फ़िगरेशन को एक्सेस करने का कोई अलग तरीका है?
पोल्कादुरन

1

विंडोज 10 (18363) पर हाल ही में मेरा एक ही मुद्दा था: एवीडी ने मेजबान के सभी 16 थ्रेड्स का 100% उपयोग किया, ऐसा लगता है android.hardware.graphics.composer@2.1-serviceकि एवीडी पर प्रक्रिया को दोष देना था।

मेरे मामले में क्या मदद मिली: AVD के लिए जा रहा settings- Advanced- बदल OpenGL ES rendererकरने के लिए Desktop native OpenGLऔर AVD पुनरारंभ करें। अब यह मेरे CPU संसाधनों के 2-3% की तरह उपयोग करता है। आशा है कि यह किसी की मदद करता है।


तुम लोग कमाल के हो। मैंने ऊपर और उर में लिखे गए सभी उत्तरों का उपयोग किया, और सीपीयू उपयोग 80 से 30 तक नीचे चला गया: डी: डी
आशू कुमार


0

मैंने "क्विकब्यूट में ऑटो-सेव करंट स्टेट" को रद्द करके इसे हल किया

स्नैपशॉट्स -> सेटिंग्स -> क्विकबूट - NO के लिए वर्तमान स्थिति को ऑटो-सेव करें


0

पुराने एंड्रॉइड वर्जन के इस्तेमाल से मैंने लॉलीपॉप गैलेक्सी नेक्सस एपीआई 22 का इस्तेमाल किया। सीपीयू का उपयोग 220% से घटकर लगभग 30% हो गया ! ...

मैंने भी स्विच किया: प्रदर्शन> ग्राफिक्स> हार्डवेयर

Android Api 25 का उपयोग करना ... ग्राफिक्स के लिए हार्डवेयर और AVD ऑडियो और GPS बंद करना मेरे लिए काम नहीं आया ...

प्लेटफ़ॉर्म: MacOS


0

मेरे मामले में यह एयरप्लेन मोड था , जब CPU उपयोग चालू हुआ तो 99% तक उछल गया :

सि पि यु का उपयोग

इस मुद्दे को एंड्रॉइड 10.0 x86 पर देखा गया था।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.