V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ldehai
V2EX  ›  Android

Android Studio 真是吃内存大户

  •  
  •   ldehai · 2015-10-30 12:14:45 +08:00 · 29442 次点击
    这是一个创建于 3348 天前的主题,其中的信息可能已经有所发展或是发生改变。
    这两天老是提示内存不够用, 现在 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  
       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  
       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 優化:
    https://www.v2ex.com/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   ·   实用小工具   ·   2611 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 10:57 · PVG 18:57 · LAX 02:57 · JFK 05:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.