将 Android Studio 升级到 2.3 后,我遇到了内存使用率极高的问题。以前,我会让我的电脑(包括 Android studio 和模拟器)保持开启状态几个星期,RAM 使用量会保持在 12GB 以下。然而,升级到2.3后,大约需要6个小时的工作时间,系统才会耗尽RAM并开始使用交换内存,而且,在工作一整天后,几乎所有交换内存也被用完。
free -mh
total used free shared buff/cache available
Mem: 15G 5,6G 6,2G 1,1G 3,7G 8,5G
Swap: 15G 0B 15G
我的系统:i5-6500、Ubuntu 16.10、16GB DDR4、16GB 交换。
还有其他什么可以帮助的吗?一些配置文件等?
稍后,当系统开始使用交换内存时,我将添加更多信息。
编辑:
想法配置:
# custom IntelliJ IDEA VM options
-Xms512m
-Xmx8g
-XX:ReservedCodeCacheSize=480m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Dawt.useSystemAAFontSettings=lcd
等级属性:
org.gradle.daemon=true
org.gradle.jvmargs=-Xmx8192M
明天,我将尝试将 xmx 从 8gb 更改为 4gb,看看是否可以提高性能。
total used free shared buff/cache available
Mem: 15G 12G 230M 2,1G 3,0G 829M
Swap: 15G 2,0G 13G
正如您所看到的,有第三个 java 实例正在运行,我查看了那是什么 - 它是 Kotlin 守护进程。因此,我总共获得了 3 个 java 实例:Kotlin、Gradle 守护进程和 Android Studio 本身。
构建缓存方面似乎发生了一些变化。