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

[请教] Android AOSP 工作站选择

  •  
  •   oLUCKo · 3 天前 · 2520 次点击

    我正在选择个趁手的工作站 , 用于 aosp 学习 & 开发 .

    • 我正在漫无目的的任意查看这些代码 , 任何地方在感兴趣的时候都可能做些修改 .

    目前了解到的只有这两款

    1. Precision 3680
      • 担心 192G 内存非官方支持 , 后续有问题不好处理
      • 如果 128G 内存的话 , 不知道是否会不够用 , 但已经封顶了无法扩展 .
    2. Precision 5680
      • 各方面都肯定够用 , 且有足够的扩展空间 .
      • 如果最终我因为种种顾虑没有找到更(主观)好的选择 , 这是我的兜底方案 .

    如果有大佬可以推荐下自己正在使用的设备和购买渠道, 将十分感恩 .

    类别 Precision 3680 Precision 5680 对比分析
    价格 3W 内 4W 左右 5680 贵 约 30%+
    CPU 选项 i9-14900K (24 核 32 线程) Xeon W7-2475X / W7-2495X (20-24 核 / 40-48 线程) 5680 采用 工作站级 CPU,适合长期高负载任务
    内存插槽 4 个 8 个 5680 内存扩展更大
    最大内存 128GB (官方支持) / 192GB (非官方) 2TB (官方支持) 5680 胜出,适合超大数据处理
    内存类型 DDR5-5600 (非 ECC) DDR5-4800 (支持 ECC) 5680 支持 ECC,稳定性更高
    硬盘插槽 NVMe × 2, SATA × 4 NVMe × 4, SATA × 4 5680 扩展更强
    PCIe 插槽 PCIe 5.0 ×16 (1), PCIe 4.0 ×8 (3) PCIe 5.0 ×16 (2), PCIe 4.0 ×8 (3) 5680 扩展性更强,支持更多 GPU
    显卡支持 单 GPU (最高 RTX A4000) 双 GPU (最高 RTX 6000 Ada) 5680 支持 双显卡
    功耗 最大 750W 最大 1350W 5680 功耗更大,适合高负载环境
    超频支持 支持 不支持 3680 支持超频,适合高主频应用
    ECC 支持 ❌ 不支持 支持 5680 适合 服务器/科研 应用
    适合场景 编程、开发、轻量级建模 3D 渲染、AI 训练、大规模计算 5680 适合 专业工作站

    当前我卡壳的情况是 : 我正在处理的 代码 是 aosp 13

    • 我习惯在 Debian 宿主机上 通过 Docker Ubuntu 完成编译动作 .
      • 我当前设备是 4 核 8 线程 i7 cpu + 32G 内存 + 32G Swap
      • 通过实践我知道 , 实际给到 docker 容器使用的资源 是 6 线程+28G 物理内存(28G Swap)
    • 我可以正常编译通过 . (若干次报错之后)
    • 当我尝试 修改(增加 .h/.cpp 文件) libbase 内的 c++ 代码后 .
      • 我必须 更新 .lsdump 才能继续完成编译动作 . (我的失败动作就发生在这里)
      • $ANDROID_BUILD_TOP/development/vndk/tools/header-checker/utils/create_reference_dumps.py -libs libbase -products aosp_bluejay --build-variant eng
      • 我的失败日志大致有这样几类(我以为可以理解为硬件资源不足)
        • out of memory
        • [signal SIGSEGV: segmentation violation code=0x1 addr=0x24ae30aaf53a pc=0x46477f]
        • unexpected fault address 0x10c0006a6396
        • panic: runtime error: index out of range [549755820000] with length 10413
        • panic: runtime error: slice bounds out of range [8:0]
        • sym 86176: relocation target go.info.*crypto/sha256.digest not defined for ABI0 (but is defined for ABI0)
    39 条回复    2025-03-10 10:53:29 +08:00
    mengzhuo
        1
    mengzhuo  
       3 天前
    我觉得自己掏钱的话,二手工作站就好了
    我攒了个 z4g4 全套差不多 6000 左右,除了跑 llama 内存高点,平时都用不到 50%内存……

    Donaldo
        2
    Donaldo  
       3 天前   ❤️ 1
    内存不足是硬伤,但我亲测 64G 足够了。如果你只做 AOSP ,没必要上志强?不过考虑到 14900k 有缩肛问题,要不要考虑一下 amd 平台?如果不考虑那就志强咯
    MacsedProtoss
        3
    MacsedProtoss  
       3 天前 via iPhone
    这个价格要是是原价 是不是 Mac studio 都有性价比了…尤其是 14900K 那款
    darkengine
        4
    darkengine  
       3 天前
    Android AOSP 现在这么丧心病狂了吗,之前 Android 6 的时候在 32GB 的 ThinkPad 上都能编过 😂
    oLUCKo
        6
    oLUCKo  
    OP
       3 天前
    @MacsedProtoss 个人页很喜欢 mac 的 . AOSP 编译对 X86 有更好的支持 . 所以没法考虑 arm 的 .
    oLUCKo
        7
    oLUCKo  
    OP
       3 天前
    @Donaldo 大佬 , 在 aosp 的高内存占用场景下 , 峰值能占到多少内存呀 ? 我没上过这么大的硬件 , 对此一无所知 .
    murmurkerman
        8
    murmurkerman  
       3 天前
    我之前考虑过笔记本 razer blade 16 扩展到 96gb 内存,不知道性能怎么样。或者可以看下 framework 的 ai max 395 的机器 2000 刀
    HtPM
        9
    HtPM  
       3 天前   ❤️ 1
    公司主机 i5 8600 + 48G 内存,使用 Vmware 虚拟机 Ubuntu 编译 AOSP android12 ,分配的资源是 32G 的虚拟机内存,满核 CPU ,swap 64G ,编译没什么问题打。算把家里的电脑升级成 64G 的。看了下官方,现在最新的建议最低 64G 起步。
    Ayaya233
        10
    Ayaya233  
       3 天前   ❤️ 1
    我自己电脑 32G 内存+32G swap 编译 aosp15 没有问题,真的有必要上这么大内存吗
    oLUCKo
        11
    oLUCKo  
    OP
       3 天前
    @HtPM 是的 64G 打底 . https://source.android.com/docs/setup/start
    A minimum of 64 GB of RAM. Google uses 72-core machines with 64 GB of RAM to build Android. With this hardware configuration, it takes approximately 40 minutes for a full build of Android and only a few minutes for incremental build of Android. By contrast, it takes approximately 6 hours for a full build with a 6-core machine with 64 GB of RAM.
    oLUCKo
        12
    oLUCKo  
    OP
       3 天前
    @Ayaya233 我开始操作 aosp 13 也这么想的 , 直到我做了简单修改后 , 遭遇了 oom .
    zfabl
        13
    zfabl  
       3 天前
    我之前 32G+swap 也可以, 现在 64G 内存编译也是完全够用了, 用的 AMD 7950x
    shijingshijing
        14
    shijingshijing  
       3 天前
    编译用的机器肯定是无脑选 Xeon 或者 EPYC ,标配 ECC 的。
    HojiOShi
        15
    HojiOShi  
       3 天前
    128GB 内存应该够了,另外不考虑自己组装吗?之前我用的 7950X 完整编译 AOSP13 也就半个小时,成本也就一万三四,前年年底装的。现在你要装的话推荐 9950X ,性能更好点。
    huang86041
        16
    huang86041  
       3 天前
    内存 A15 64G 够了,A13 估计 32 也可以.主要在刚开始编译 soong 需要很大的内存,内存不够会一直 swap,很耗时间.
    就是编译一开始的时,内存占用特别大,后面会好一点.
    编译的瓶颈,首先是内存, 然后是 cpu 核心数, 然后是硬盘速度.
    iFlicker
        17
    iFlicker  
       2 天前
    自己攒一个便宜的 EPYC 16 核的要不了两万吧?
    ooh
        18
    ooh  
       2 天前   ❤️ 2
    学习的话 直接阿里云数据盘挂载抢占式实例折扣是不是更省钱一点,现在完整编译一次 android 要几个小时?
    我觉得你可以用我这个方法不同规格的实例试一试,选个折扣低的区域试试,完整编译一次应该花不了几块钱。
    levelworm
        19
    levelworm  
       2 天前 via Android
    二手的工作站便宜啊
    dengjunwen
        20
    dengjunwen  
       2 天前 via Android
    编译了一天了,放着,32G 内存, 确实有点不够, 太久了, 有没有交流群呀
    tootfsg
        21
    tootfsg  
       2 天前 via Android
    我也推荐搞个 9950x 组装个就行了,128 还是 192g 内存都支持,4 条 48g 内存的事,你是花的自己的钱吗。
    Tomatopotato
        22
    Tomatopotato  
       2 天前   ❤️ 1
    @MacsedProtoss AOSP 官方早已经不支持 windows 和 macOS 编译了 现在钦定的系统唯一 ubuntu
    jdjingdian
        23
    jdjingdian  
       2 天前
    我是做 aosp telephony 的

    以我的经验来说,64G 内存就够了,甚至很多同事还用 32G

    显卡没必要配,系统装 ubuntu server 就完事了

    CPU 多核牛逼的情况下单核也尽可能拉上去,固态硬盘可以配个随机读写好一点的,我估摸着这样配 1w 以内都能搞定吧
    guoyijun163
        24
    guoyijun163  
       2 天前
    4 万……足够买一套 EPYC 9654 + 192G + 16T U.2 SSD 的组合了
    Tomatopotato
        25
    Tomatopotato  
       2 天前
    @jdjingdian 你的 U 是啥
    anjingdexiaocai
        26
    anjingdexiaocai  
       2 天前 via Android
    …现在这么猛吗,我记得前两年用 32g 的 ubuntu 就可以编了
    Mandy0
        27
    Mandy0  
       2 天前
    找一下戴尔的渠道商,实际上并没有那么贵
    gam2046
        28
    gam2046  
       2 天前
    只是为了编译 aosp ,配置没什么硬性要求的。内存最低 16G 就可以编译,我自己在 Windows 里,用 docker 编译,峰值内存是用来也没超过 70G ,就这个用量里,还有相当一部分是 Windows GUI 使用的。

    所以如果宿主平台就是 Ubuntu 这种,内存 32G 是完全足够的。而且编译属于 CPU 密集型操作,内存频率的影响并没有那么大,DDR5/DDR4 对于编译的影响,不太是普通人能感受出来的差异。



    至于 CPU 我个人认为也没什么太大的要求,慢也只是第一次编译的时候慢一点,后面都是增量编译,什么 CPU 都不会太慢。

    至于我宿主选择 Windows ,主要是图形化确实 Windows 的表现更好,另外在长时间编译的时候,可以开个游戏玩,静静的等待编译。当然,这个完全属于个人喜好。
    mazz
        29
    mazz  
       2 天前
    目前在做 framework 开发感觉你这个配置要是用来学习有点贵了,分享下公司在用配置机器是联想的工作站 P3 ,编译 Android15 源码( MTK )完整编译完一个半小时差不多,同事还有很多在用联想 P340 的也够用稍微慢一点点,我的配置如图:
    pandaxgc
        30
    pandaxgc  
       2 天前 via iPhone
    @dengjunwen #20 蹲一个交流群
    dengjunwen
        31
    dengjunwen  
       1 天前 via Android
    @pandaxgc 加一个?绿色泡泡软件? a892157958a
    dengjunwen
        32
    dengjunwen  
       1 天前 via Android
    @mazz 第一次编译也这么快吗
    Xunit
        33
    Xunit  
       20 小时 33 分钟前
    aosp 自己搓着玩过,编译主要是吃内存,最好 64g 及以上。cpu 核越多越快,如果无品牌信仰个人建议 amd ,性价比高。不建议 Windows 作为主系统,因为哪怕开虚拟机或者 wsl ,磁盘性能折损都比较大。
    个人 amd 4800H ,32g 内存,Arch Linux ,无 ccache 编译 lineageos22 ( Android15 ),耗时大概 8h 。
    LeviMarvin
        34
    LeviMarvin  
       19 小时 1 分钟前
    我这台 wsl 跑 aosp 完全没问题:
    _,met$$$$$gg. levi@DESKTOP-36O49C9
    ,g$$$$$$$$$$$$$$$P. --------------------
    ,g$$P" """Y$$.". OS: Debian GNU/Linux trixie/sid on Windows 10 x86_64
    ,$$P' `$$$. Kernel: 5.15.167.4-microsoft-standard-WSL2
    ',$$P ,ggs. `$$b: Uptime: 3 hours, 52 mins
    `d$$' ,$P"' . $$$ Packages: 2350 (dpkg)
    $$P d$' , $$P Shell: bash 5.2.37
    $$: $$. - ,d$$' Theme: Adwaita [GTK3]
    $$; Y$b._ _,d$P' Icons: Adwaita [GTK3]
    Y$$. `.`"Y$$$$P"' Terminal: Windows Terminal
    `$$b "-.__ CPU: 13th Gen Intel i7-13700H (20) @ 2.918GHz
    `Y$$ GPU: 3ab6:00:00.0 Microsoft Corporation Basic Render Driver
    `Y$$. Memory: 691MiB / 57248MiB
    `$$b.
    `Y$$b.
    `"Y$b._
    `"""
    jdjingdian
        35
    jdjingdian  
       18 小时 35 分钟前
    @Tomatopotato
    之前公司配的戴尔的工作站,我分到的是 12700K
    levelworm
        36
    levelworm  
       14 小时 57 分钟前 via Android
    @HtPM #9
    好奇一把诸位做内核的大佬,公司应用场景是什么?
    mazz
        37
    mazz  
       6 小时 51 分钟前
    @dengjunwen #32 就是初次编译 没有配置过 ccache 之类的东西 每次改完增量编译 也就两三分钟就编好,改动 framework 也就十几分钟就增量编译好
    galenzhao
        38
    galenzhao  
       6 小时 24 分钟前
    我的 48G 也够 build ,13 ,14 ,15 都可以,
    其实就一开始那个脑残分析编译依赖耗内存,
    后续的真正 compile ,就看你多少并发,我一般限制到 6 个,平均也就 20G 多,不到 30
    MaxLi77
        39
    MaxLi77  
       5 小时 42 分钟前
    选 2 或者 EPYC ,1 就纯整活了。大小核跑编译没啥优势。ecc 内存更适合长时间不关机。而且 2 的 pcie 通道数更多,可以解锁更多玩法。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5445 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 08:35 · PVG 16:35 · LAX 01:35 · JFK 04:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.