Android Studio 真是吃内存大户 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ldehai
V2EX    Android

Android Studio 真是吃内存大户

  •  
  •   ldehai 2015-10-30 12:14:45 +08:00 32329 次点击
    这是一个创建于 3683 天前的主题,其中的信息可能已经有所发展或是发生改变。
    这两天老是提示内存不够用, 现在 8G 内存,分了 2G 给它,还嫌不够,可惜不能再加了



    54 条回复    2015-11-19 17:44:00 +08:00
    lianyue
        1
    lianyue  
       2015-10-30 12:15:57 +08:00 via iPhone   1
    才 2g
    yy1300326388
        2
    yy1300326388  
       2015-10-30 12:20:33 +08:00   1
    请升级你的 AS 的版本,和用 xcode 的 ios 同事比 AS 不是很吃内存了,请升级的 1.4 或者 1.5perview2
    ldehai
        3
    ldehai  
    OP
       2015-10-30 12:22:50 +08:00
    @yy1300326388 已经是 1.4 了,感觉是没优化好,上个版本没问题
    HentaiMew
        4
    HentaiMew  
       2015-10-30 12:25:41 +08:00   2
    罪魁祸首是 gradle , gradle 在执行构建的时候巨消耗内存,内存大到可以 600M+以上,并且通常不会下降,经常的 AS 关闭了它还在占用巨大内存。
    然后就是 AS 本身,特别是新建项目或者刷新项目,建立索引的时候巨消耗内存,而且也通常不会下降!
    我 8G 内存开 AS ,在跑安卓虚拟机然后上上网查查资料... 之前没有开虚拟内存,由于我是 Linux ,本身就会缓存剩余内存,不一会而 8G 就占满了,真的卡成狗了。
    后来分配 2GB 的虚拟内存在一块 SSD 上,现在爽歪歪了,即使同时开 3 个虚拟机,同开 IDEA+AndroidStudio ,项目随便刷新构建,都不会卡。因为虚拟内存占用很高的原因,只会让机器速度变慢一点点。。。
    wl9739
        5
    wl9739  
       2015-10-30 12:26:58 +08:00
    不仅耗内存,能耗也很大。
    ldehai
        6
    ldehai  
    OP
       2015-10-30 12:35:28 +08:00
    @HentaiMew 我是同时打开了三个项目的情况下出现这个问题的,只打开一个的话没问题了。
    Smirnoff
        7
    Smirnoff  
       2015-10-30 12:38:25 +08:00   5
    内有 16G 32G 内存 不要搞。。。。。。。。。。。。。。。。。。。。。 8G 是穿越火线的配置
    wwqgtxx
        8
    wwqgtxx  
       2015-10-30 12:58:23 +08:00 via Android
    @HentaiMew 小心你的 ssd 寿命
    LPeJuN6lLsS9
        9
    LPeJuN6lLsS9  
       2015-10-30 13:33:23 +08:00   1
    有没有人试过 JVM 的与 heap 管理有关的参数?(可以让它把已经占有的空闲内存还给系统)
    ilotuo
        10
    ilotuo  
       2015-10-30 13:38:21 +08:00   1
    eclipse 笑而不语 不光吃内存,还光吃不干
    hackerwgf
        11
    hackerwgf  
    PRO
       2015-10-30 13:39:37 +08:00   1
    OS X 10.9
    内存 8GB
    Android Studio 1.3

    敲代码时 AS 内存占用还好,就是一 build 的时候整个人都不好了...
    pepsin
        12
    pepsin  
       2015-10-30 13:59:06 +08:00   1
    Build 太慢是硬伤
    lincanbin
        13
    lincanbin  
       2015-10-30 14:00:30 +08:00   1


    我也只有 8 鸡内存
    iv2ex
        14
    iv2ex  
       2015-10-30 14:00:49 +08:00


    我得长期不超过 800Mb
    iv2ex
        15
    iv2ex  
       2015-10-30 14:02:06 +08:00   1
    没做软件优化
    ldehai
        16
    ldehai  
    OP
       2015-10-30 14:44:00 +08:00
    @atearsan 你这肯定是只跑着没干活:)
    typcn
        17
    typcn  
       2015-10-30 14:48:02 +08:00
    system.loadlibrary 调 so 文件,编译一次然后退出。

    然后写 .c 用 gcc 编译,保证不超过 1MB 内存
    ldehai
        18
    ldehai  
    OP
       2015-10-30 15:31:56 +08:00
    @hackerwgf
    @pepsin
    build 慢可以优化的,我之前也慢的不行,现在快多了。
    hackerwgf
        19
    hackerwgf  
    PRO
       2015-10-30 15:36:40 +08:00
    @ldehai 好的,回头去看看相关的优化
    wesley
        20
    wesley  
       2015-10-30 16:08:50 +08:00   1
    给一个用 java 写的程序分配 2G 内存,你这是在侮辱 java !
    kyze8439690
        21
    kyze8439690  
       2015-10-30 16:13:45 +08:00   1
    才 2g 确实不够,我也是 8g 内容,给他分了 4g ,正常使用。
    zhoulujue
        22
    zhoulujue  
       2015-10-30 16:18:50 +08:00
    zhoulujue
        23
    zhoulujue  
       2015-10-30 16:20:10 +08:00
    fortunezhang
        24
    fortunezhang  
       2015-10-30 16:28:45 +08:00
    @Smirnoff 哈哈哈~~~~
    iv2ex
        25
    iv2ex  
       2015-10-30 16:29:16 +08:00
    @ldehai 在写程序的 还 rebuild 了一下 结果变化不大
    lincanbin
        26
    lincanbin  
       2015-10-30 16:31:17 +08:00



    8 鸡内存,就在几分钟前,又崩了一次, Sad 。
    因为内存不足,开不了模拟器,我已经真姬调试了。
    qw7692336
        27
    qw7692336  
       2015-10-30 16:32:31 +08:00   1
    @HentaiMew 请手动切换 gradle 到 2.4 或以上版本

    我的 Android Studio 是 1.4 beta3 ,不知道更新会不会解决
    qw7692336
        28
    qw7692336  
       2015-10-30 16:33:38 +08:00
    gradle2.4 就是 google I/O 上面讲的优化过的版本。现在已经 2.7 了。更新 gradle ,并且让它后台启动一个服务。比以前好多了。
    qw7692336
        29
    qw7692336  
       2015-10-30 16:36:07 +08:00
    手动优化
    org.gradle.daemon=true
    org.gradle.parallel=true
    qw7692336
        30
    qw7692336  
       2015-10-30 16:38:16 +08:00
    还有一步:

    sudo ln -s /home/imivan/gradle-2.4/bin/gradle /usr/bin/gradle

    优化过之后, 4G 内存的笔记本在 Linux 下速度还可以
    HentaiMew
        31
    HentaiMew  
       2015-10-30 16:56:48 +08:00
    @qw7692336 其实我一直都是追新族,我的 idea 就是 gradle2.7 。
    只是 android-studio 频繁升级 于是就干脆用内置的 gradle 了。
    之前看到 AS14 的 beta 升级日志的时候确实看到了关于 AS 在构建上的优化,还有重启时候 gradle 同步问题,我还是换上本地的新版 gradle 试试吧 。。。
    不过还是不能忍,即使是 Java 大型项目用 gradle 来构建也比 AS 上的 gradle 构建结构小得多安卓要快
    StevenTong
        32
    StevenTong  
       2015-10-30 16:56:59 +08:00   1
    之前 4G 内存 mac 太慢,所以转到台式机开发了,怒升内存到 32G ,爽歪歪
    qw7692336
        33
    qw7692336  
       2015-10-30 17:01:47 +08:00
    @HentaiMew
    安卓用 Gradle2.7 有时候会有点问题,所以我还是用 2.4
    feelinglucky
        34
    feelinglucky  
       2015-10-30 17:42:55 +08:00
    @ilotuo 黑出艺术价值了
    colatin
        35
    colatin  
       2015-10-30 17:57:02 +08:00   1
    1.4 有明显内存泄漏。码了一下午,现在已经 13.68g 了,目前情绪稳定,关掉重开。
    scola
        36
    scola  
       2015-10-30 19:29:42 +08:00   1
    公司给的 4G 内存笔记本,估计就 3000 块,
    android studio 卡成狗,偶尔还要开一下 Eclipse ,别提有多痛苦
    strongcoder
        37
    strongcoder  
       2015-10-30 19:50:52 +08:00 via iPad   1
    自己买开发机 16G ,还好够用
    WayneWangWM
        38
    WayneWangWM  
       2015-10-30 20:01:00 +08:00
    开两个项目,常出现意外退出。 rMBP 13 , 8G 内存
    lyz1990
        39
    lyz1990  
       2015-10-30 20:43:58 +08:00   1
    内存从 4G 一路升级到了 16G …… 感觉要上固态硬盘了……
    AtlantisZ
        40
    AtlantisZ  
       2015-10-30 20:49:10 +08:00   1
    双十一准备再加一条 8G 了
    Lesilva
        41
    Lesilva  
       2015-10-30 21:55:39 +08:00   1
    Gradle 升 2.8

    16G 的 MBP 从来没遇见问题 AS 这东西卡了就重启就好了
    SoloCompany
        42
    SoloCompany  
       2015-10-30 23:33:44 +08:00   1
    对于 ide 来说 2g heap 不太可能不够,日常总是开着 ide 的话建议配置 xms / xmx 都是 2g 以减少内存波动
    2g 都报 OOM 基本上可以判定要么是内存泄漏要不是某个操作有 bug 在申请大量内存, heapdump 太大 report bug 带 heapdump 基本上不太可能不过还是建议 report 一下
    ldehai
        43
    ldehai  
    OP
       2015-10-31 07:20:50 +08:00
    @qw7692336 谢谢提供详细的优化方法

    @wesley 哈哈,忘了 Java 年轻的时候就饭量大

    @Lesilva 谢谢,我也换成 2.8 了

    @SoloCompany 非常好的建议

    @lyz1990 SSD 一定要上,有质的飞跃

    @scola 如果条件允许,建议自己买机器,时间是最宝贵的,浪费不起
    a0000
        44
    a0000  
       2015-10-31 07:41:03 +08:00 via Android
    @atearsan 你是不是只写 demo
    steelz
        45
    steelz  
       2015-10-31 09:40:54 +08:00
    一路升级到 16GB 的 MBP ,最近又有了 24GB 的 Mac Pro 。
    才不会让工具阻碍生产力呢,逃 233.。。
    yooooooooo
        46
    yooooooooo  
       2015-10-31 11:21:25 +08:00


    1.5p 自带 gradle

    感觉还好啊
    yooooooooo
        47
    yooooooooo  
       2015-10-31 11:21:40 +08:00
    忘了说,我还是 4g 的内存
    ldehai
        48
    ldehai  
    OP
       2015-10-31 17:03:31 +08:00
    @yooooooooo 试用了 1.5p2 ,感觉响应速度变快了
    qw7692336
        49
    qw7692336  
       2015-10-31 20:04:59 +08:00
    @scola
    我 3000 买块的神舟,优化过还好
    21grams
        50
    21grams  
       2015-11-02 10:51:37 +08:00
    8G 还好吧,我 8G 的台式机, AS 用起来还蛮快的。
    DemoJameson
        51
    DemoJameson  
       2015-11-02 23:06:26 +08:00
    开了 Android Studio 和 Chrome 后整台电脑都不好了,两个吃货
    mko0okmko0
        52
    mko0okmko0  
       2015-11-06 22:21:14 +08:00
    ssd 必的,最好 500MB/s 同步的,非同步或是小於 300MB/s 根本渣.
    gradle 化上面都了.所以我了一篇 jvm 化:
    t/234287#reply0
    hqs123
        53
    hqs123  
       2015-11-10 17:50:04 +08:00
    不觉得吃内存啊,我电脑内存 16G ,运行很流畅从来没卡过。
    su8610
        54
    su8610  
       2015-11-19 17:44:00 +08:00
    我就搞了个 virtualbox 给了 2G 内存,用 1.4 的 AS ,感觉可以啊
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2485 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 11:26 PVG 19:26 LAX 03:26 JFK 06:26
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86