Reputation: 1569
I've noticed Android Studio (when running) uses greater than 100% CPU at all times, even when it appears there are no background processes that the IDE is running (indexing, etc). I might suspect this were something specific to my box, but some fellow developers are encountering this as well.
Often times the CPU usage is in the high 100s or mid 200s (see screenshots below). Has anyone encountered this as well? If so, are there any strategies or options within the IDE to correct this intensive use of system resources?
Upvotes: 100
Views: 67721
Reputation: 7661
You can check which part of Android Studio or which plugin is using a lot of CPU, with Android Studio -> Help -> Diagnostic Tools -> Activity Monitor
On Android Studio 2.3, this used to happen when the "Android Monitor" window was open (the window shows Logcat messages from devices and emulators), and then you press Ctrl+F (Cmd+F on the Mac) to reveal the 'Find' search bar inside this window.
It can also happen when you connect a Samsung phone to your computer via USB, which has Developer Mode enabled, because Samsung phones usually send out large amounts of debug text to Logcat every second, even if the Logcat window is closed.
Another possible cause is the View -> Tool Windows -> App Inspection -> Database Inspector. This database monitor is very useful because it can display the live real-time data of the SQLite database that's running in the Android app. You can also run SQL queries and insert records in real-time, whilst the app is running. However, it uses a lot of CPU, so you should turn it off and disconnect it whenever possible.
So the solutions to prevent the 100% CPU usage are either:
Upvotes: 2
Reputation: 1007
Thanks to Buzzrick (answered on this page, probably above my answer), he mentioned about VCS. Turning off all of the background operations of VCS seemed to have a HUGE impact toward the high cpu usage - it was 150% and now it's 20%, more or less.
I'm on OS X
Go to: Preferences > Version Control > Background. Now listed under 'Background Operations' are 6 options. I disabled the first three options which are:
Perform update on VCS in background, Perform commit to VCS in background, Perform checkout to VCS in background.
Upvotes: 70
Reputation: 2843
In my case I have white-listed
Android-Studio's folder in "Eset Smart Security"
and the problem solved!
hope this helps!
Edit:
Disabling HIPS
in Eset settings
was also helpful in my situation!
Upvotes: 1
Reputation: 1569
I've left this question open for awhile as coworkers and posters here have found value in various solutions over time. For myself, simply updating Android Studio solved the issue (after a number of months where none of the solutions herein worked for me).
Upvotes: 1
Reputation: 2107
You can try the following options in the File Menu:
Power Save mode only disable code insights and background tasks.
Upvotes: 59
Reputation: 643
On Windows I reduced the studio64.exe process priority and set the process' affinity to half of the cores. Open Task Manager, click on Processes tab, right click on process studio64.exe and you'll see it in the menu.
Upvotes: 3
Reputation: 833
Interestingly, for me this seemed to be something to do with the version control integration.
I fixed this by re-loading my android studio project and when it asked about wiring up my CVS links (I don't recall the exact wording), I just said "Ignore". After that it ran smoothly without pulling CPU
Upvotes: 4
Reputation: 3645
I switched on power save in Android Studio 1.0 it helped but this meant I opted out on so many features that Android Studio has to offer. Thus I sought to find a better solution, I happened to always have a dialog box pop up and ask me to increase my VM size. Apparently once I increased this, I am able to switch off power save and have my Android Studio work perfectly.
This is how to do so:
On Mac OS go to /Applications/Android\ Studio.app/Contents/bin/studio.vmoptions
(To open contents right click on Android Studio app > View contents)
You will find the following variables
-Xms128m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=200m
-XX:+UseCompressedOops
On Windows go to Environment Variables and find a System Variable called _JAVA_OPTIONS
Increase these figures accordingly.
i.e Your JVM will be started with Xms amount of memory and will be able to use a maximum of Xmx amount of memory.
Upvotes: 6
Reputation: 2628
I tried the following procedure and Android Studio
on my Surface Pro 3
sped up by an insane amount:
amount
and memory
of the Android Virtual Devices
you have.Invalidate Caches/Restart
Power Save
Modeunnecessary files that are opened
.VM Heap Size
to around 256
.Upvotes: 3
Reputation: 1593
I had exact same problem on Linux. Solved by increasing the memory size.
Started by looking at the top -p <android studio pid> -H
which shows which threads are using most of CPU, to me there are three threads: 94232,94233,94234. Then I do a jstack <pid>
to get the stack dump of android studio, and look for 0x17018 (=94232), it turns out to be "Gang worker#0 (Parallel CMD Threads)"
. All three of them. apparently JVM is too busy doing GC all the time.
Also opened jconsole against my android studio process and it shows GC time "20 minutes
"!!! (at the bottom of memory tab)
Fix is to change the studio.vmoptions (or studio64.vmoptions in my case), to increase the -Xmx
value from default 750m to 1500m. It is sufficient for me. if you have too much memory, set to 2g or 4g or 16g..
Upvotes: 4
Reputation: 4619
I encountered a constant high cpu usage with no apparent reason. Invalidating cache did not work nor did the power save mode.
In my case there was a something wrong in the '.git' directory which was causing android studio to fail in an endless loop. Checking out the repo again fixed the problem.
My advice is to check the android studio logs for any hints to what is causing it to falter. You could also start it from terminal and check the Stdout/Stderr output.
Upvotes: 14
Reputation: 1191
You might consider going to File > Invalidate Caches / Restart Your cache might be kicking off something funky in the background
Upvotes: 34