Studio Android utilisant à tout moment> 100% du processeur - aucun processus d'arrière-plan ne semble en cours d'exécution


86

J'ai remarqué qu'Android Studio (lors de l'exécution) utilise plus de 100% du processeur à tout moment, même lorsqu'il semble qu'il n'y a pas de processus d'arrière-plan que l'EDI exécute (indexation, etc.). Je pourrais soupçonner que c'était quelque chose de spécifique à ma boîte, mais certains autres développeurs le rencontrent également.

Souvent, l'utilisation du processeur se situe dans les 100 ou les 200 moyens (voir les captures d'écran ci-dessous). Quelqu'un a-t-il également rencontré cela? Si tel est le cas, existe-t-il des stratégies ou des options au sein de l'EDI pour corriger cette utilisation intensive des ressources système?

entrez la description de l'image ici

entrez la description de l'image ici


6
J'ai le même problème, aussi OS X.
slanecek

2
J'ai également vu cela sur Windows 7, toujours plus de 80% d'utilisation du processeur.
Matt

4
Il atteint même 300% d'utilisation du processeur dans mes Mavericks. (Android Studio 1.0.1)
neobie

vérifiez si vous avez téléchargé un plugin récemment. J'ai téléchargé le DevEcoplugin et la désinstallation a résolu le problème. Il faisait probablement beaucoup de tâches d'arrière-plan.
NullByte08

Réponses:


50

Vous pouvez essayer les options suivantes dans le menu Fichier:

  1. Menu Fichier -> Invalidate Caches / Restart ... -> Invalidate and Restart
  2. Activez le mode d'économie d'énergie en cliquant sur Fichier -> Mode d'économie d'énergie

Le mode d' économie d' énergie ne désactive que les informations de code et les tâches en arrière-plan.


4
Je rencontre le même problème avec Android Studio, mais pas avec IntelliJ IDEA 12.1.4. Cela semble donc être un problème spécifique à Android Studio, pas IntelliJ lui-même. Le problème commence lorsque je lance le processus de construction (en utilisant maven).
bergvandenp

2
Mise à jour: Cela aide, mais cela semble également paralyser certaines fonctionnalités de l'EDI (comme la saisie semi-automatique, et certaines icônes ont disparu, probablement pas de support git en temps réel?)
Matt

1
Avec la version récente d'Android Studio v5 +, la saisie semi-automatique fonctionne en mode d'économie d'énergie.
muneikh

1
Cela améliore les choses, mais ce n'est pas vraiment pratique car cela désactive trop de fonctionnalités que j'utilise.
idanakav

1
Le mode d'économie d'énergie est toujours disponible dans Android Studio 3.1 et a été amélioré depuis les versions antérieures.
muneikh le

48

Merci à Buzzrick (répondu sur cette page, probablement au-dessus de ma réponse), il a évoqué VCS. La désactivation de toutes les opérations d'arrière-plan de VCS semblait avoir un impact ÉNORME sur l'utilisation élevée du processeur - c'était 150% et maintenant c'est 20%, plus ou moins.

Je suis sous OS X

Accédez à: Préférences> Contrôle de version> Arrière-plan. Maintenant répertorié sous «Opérations d'arrière-plan» sont 6 options. J'ai désactivé les trois premières options qui sont:

Effectuer une mise à jour sur VCS en arrière-plan, effectuer une validation sur VCS en arrière-plan, effectuer une extraction vers VCS en arrière-plan


Cela a très bien fonctionné pour moi sous Linux (Ubuntu) aussi. Je viens de désactiver toutes les options d'arrière-plan du VCS et de monopoliser le processeur, il en utilise maintenant moins de 2% selon le haut. Merci beaucoup!
Fran Marzoa

3
C'était une amélioration MASSIVE pour moi. L'invalidation des caches ne faisait pas grand-chose, mais je voyais encore régulièrement bien plus de 100% pour AS et java (plus de 300% lors de la construction!), Et maintenant c'est dans les chiffres uniques au repos. Je suis sur AS 3.4.1, fyi.
pdub

Je n'arrive pas à trouver ce menu "Arrière-plan". J'effectue une recherche dans les paramètres mais cela ne s'affiche pas, mais lorsque je fais une recherche complète via les touches Shift, je peux les voir, mais cliquer dessus ne me mène nulle part. Cela pourrait-il être désactivé?
John Ernest Guadalupe

Il devrait y avoir un onglet «Arrière-plan» sous «Contrôle de version» dans les paramètres.
Miguel P.

Miguel, si je n'étais pas marié (et un mec), j'offrirais d'avoir votre enfant amoureux. Merci!
Jason le

33

Vous pourriez envisager d'aller dans Fichier> Invalider les caches / Redémarrer Votre cache peut lancer quelque chose de funky en arrière-plan

entrez la description de l'image ici


12

J'ai rencontré une utilisation constante et élevée du processeur sans raison apparente. L'invalidation du cache n'a pas fonctionné ni le mode d'économie d'énergie.

Dans mon cas, il y avait un problème dans le répertoire '.git' qui provoquait l'échec d'Android Studio dans une boucle sans fin. La vérification du repo a à nouveau résolu le problème.

Mon conseil est de vérifier les journaux du studio Android pour tout indice sur ce qui le fait échouer. Vous pouvez également le démarrer à partir du terminal et vérifier la sortie Stdout / Stderr.


C'était le cas pour moi. J'ai ajouté un alias à la configuration git qui a rendu Android Studio inutilisable.
McP

2
Cas similaire pour moi. La validation des fichiers modifiés et le transfert vers le dépôt ont corrigé le problème.
Simas

5

J'ai activé l'économie d'énergie dans Android Studio 1.0, cela m'a aidé, mais cela signifie que j'ai désactivé tant de fonctionnalités qu'Android Studio a à offrir. Ainsi j'ai cherché à trouver une meilleure solution, il m'est arrivé d'avoir toujours une boîte de dialogue qui s'affiche et me demande d'augmenter la taille de ma VM. Apparemment, une fois que j'ai augmenté cela, je suis capable de désactiver l'économie d'énergie et de faire fonctionner parfaitement mon Android Studio.

Voici comment procéder: Sur Mac OS, allez dans /Applications/Android\ Studio.app/Contents/bin/studio.vmoptions(Pour ouvrir le contenu, faites un clic droit sur l'application Android Studio> Afficher le contenu) Vous trouverez les variables suivantes

-Xms128m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=200m
-XX:+UseCompressedOops

Sous Windows, accédez aux variables d'environnement et recherchez une variable système appelée _JAVA_OPTIONS

Augmentez ces chiffres en conséquence.

  • Xmx spécifie le pool d'allocation de mémoire maximal pour une machine virtuelle Java (JVM).
  • Xms spécifie le pool d'allocation de mémoire initial.

c'est-à-dire que votre JVM démarrera avec une quantité de mémoire Xms et pourra utiliser une quantité maximale de Xmx de mémoire.


4

J'ai eu exactement le même problème sous Linux. Résolu en augmentant la taille de la mémoire.

Commencé par regarder le top -p <android studio pid> -Hqui montre quels threads utilisent le plus de CPU, il y a trois threads pour moi: 94232,94233,94234. Ensuite, je fais un jstack <pid>pour obtenir le vidage de la pile d'Android Studio et cherche 0x17018 (= 94232), il s'avère que c'est le cas "Gang worker#0 (Parallel CMD Threads)". Tous les trois. apparemment, JVM est trop occupé à faire du GC tout le temps.

J'ai également ouvert jconsole contre mon processus de studio Android et il montre l'heure GC " 20 minutes" !!! (en bas de l'onglet mémoire)

Le correctif consiste à changer les options studio.vm (ou studio64.vmoptions dans mon cas), pour augmenter la -Xmxvaleur par défaut de 750m à 1500m. Cela me suffit. si vous avez trop de mémoire, réglez sur 2g ou 4g ou 16g ..


Merci pour les indices sur l'existence de jstack. Étant un utilisateur pour la première fois de cela, je ne sais évidemment pas comment l'utiliser correctement, mais je peux voir qu'il y a un thread VCS en état BLOCKING. Je ne sais pas si c'est la cause première, mais cela semble correspondre à certaines des autres descriptions trouvées ici.
Stephan Henningsen

4

Fait intéressant, pour moi, cela semblait être quelque chose à voir avec l'intégration du contrôle de version.

J'ai corrigé cela en rechargeant mon projet de studio Android et quand il m'a demandé de câbler mes liens CVS (je ne me souviens pas du libellé exact), j'ai juste dit "Ignorer". Après cela, il a fonctionné en douceur sans tirer le processeur


3

J'ai essayé la procédure suivante et Android Studioj'ai Surface Pro 3accéléré d'une quantité insensée:

  1. Réduisez le amountet memoryle que Android Virtual Devicesvous avez.
  2. Invalidate Caches/Restart
  3. Aller au Power Savemode
  4. Fermez tout unnecessary files that are opened.
  5. Réduisez votre VM Heap Sizeà environ 256.

2

Sous Windows, j'ai réduit la priorité du processus studio64.exe et défini l'affinité du processus sur la moitié des cœurs. Ouvrez le Gestionnaire des tâches, cliquez sur l'onglet Processus, faites un clic droit sur processus studio64.exe et vous le verrez dans le menu.


Il est intéressant de voir comment certains considèrent cela comme utile.
Stephan Henningsen

1

J'ai laissé cette question ouverte pendant un certain temps, car les collègues et les affiches ici ont trouvé de la valeur dans diverses solutions au fil du temps. Pour moi, la simple mise à jour d'Android Studio a résolu le problème (après un certain nombre de mois où aucune des solutions présentées ici ne fonctionnait pour moi).


4
Je suis sur la dernière version stable d'Android Studio, 3.2.1, et je vois toujours ce problème.
hansonchris

L'émulateur semble utiliser beaucoup d'énergie.
DragonFire

0

Sur Android Studio 2.3, cela se produit lorsque la fenêtre «Moniteur Android» est ouverte (la fenêtre affiche les messages Logcat des appareils et des émulateurs), puis que vous appuyez sur Ctrl+F( Cmd+Fsur le Mac) pour afficher la barre de recherche «Rechercher» dans cette fenêtre .

Cela peut également se produire lorsque vous connectez un téléphone Samsung à votre ordinateur via USB, qui a activé le mode développeur, car les téléphones Samsung envoient généralement de grandes quantités de texte de débogage à Logcat toutes les secondes, même si la fenêtre Logcat est fermée.

Ainsi, les solutions pour éviter l'utilisation à 100% du processeur sont:

Désactivez la barre de recherche Rechercher ou masquez complètement la fenêtre.

ou

Déconnectez un téléphone Samsung qui envoie de nombreux messages de débogage.

ou

Passez à Android Studio 3, où ce bogue ne se produit pas.


0

Dans mon cas, j'ai white-listedle dossier d'Android-Studio "Eset Smart Security"et le problème est résolu!

J'espère que cela t'aides!

Éditer:

La désactivation HIPSen Eset settingsa également été utile dans ma situation!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.