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

手上的 19 款 MacBook Pro 编译 Rust 太慢了,有没有像 GitHub Action 这样按实际使用时间付费的高性能代编译服务?

  •  
  •   rv54ntjwfm3ug8 · 133 天前 · 5754 次点击
    这是一个创建于 133 天前的主题,其中的信息可能已经有所发展或是发生改变。

    GitHub Action 编译速度比我 MacBook Pro 还慢好几倍

    搞台服务器来远程开发成本太高了,95%时间都是闲置的,而且 CLion 的远程开发体验很不好,我又不想用某个用 Electron 写的电子垃圾

    55 条回复    2022-03-29 16:52:30 +08:00
    learningman
        1
    learningman  
       133 天前
    随便找个云服务商,写个脚本调 API 自动开机子自动销毁就行。
    wangyu17455
        2
    wangyu17455  
       133 天前 via Android
    腾讯云,开一台临时实例,把环境装好,然后制作镜像,然后再开机子的时候就可以直接从镜像还原不用每次重新配环境,然后去腾讯云手动再过一遍开机子的流程,最后他会有个导出脚本的按钮,把脚本导出,要用的时候执行一遍脚本就可以获得按时间收费的机子了
    PureWhiteWu
        3
    PureWhiteWu  
       133 天前   ❤️ 4
    建议上 M1 Max 。
    实测之前一个 Rust 的项目需要俩小时,现在只要 20 分钟。
    利益相关:前 2019 16 i9 64G 用户,现 M1 Max 64G 用户。
    findex
        4
    findex  
       133 天前
    CI 的话推荐一下 CircleCI 比 github action 时间长。(安全性不能保,毕竟你要传代码到别人机器上进行编译)
    选择了好多款 CI ,其他还有 bitbucket 的。gitlab 也有,但是比 CircleCI ,github 编译时间少很多。

    关于楼主的
    > 我又不想用某个用 Electron 写的电子垃圾

    换个电脑吧。19 款 mbp 实在性能堪忧。m1 max/ultra 上可以交叉编译 x86/arm64 的程序。如果开发程序不是针对 macos 的,可以搭建一个 i9 12900K 的 PC 主机。还是挺刚的。
    wzw
        5
    wzw  
       133 天前 via iPhone
    @findex 是不是需要强大的散热器
    BrettD
        6
    BrettD  
       133 天前 via iPhone
    几年前 USENIX 有篇论文说的就是把软件编译之类的任务负载放到 AWS Lambda 这种云服务上大规模平行执行,后面我记得也有人用这种想法做出来了在 AWS Lambda 平行编译 C++工程的工具,但是名字忘了
    JustSong
        7
    JustSong  
       133 天前 via Android   ❤️ 11
    不喜欢可以不用,没必要说人家电子垃圾吧
    skiy
        8
    skiy  
       133 天前
    阿里云效??? Coding ???
    huadi
        9
    huadi  
       133 天前
    电子垃圾是啥?
    pengtdyd
        10
    pengtdyd  
       133 天前
    M1 Max 会让你见识到什么叫速度!!!!!!!!
    Puteulanus
        11
    Puteulanus  
       133 天前
    https://aws.amazon.com/cn/cloud9/
    有自动休眠,休眠之后后面的 EC2 应该只用给储存费用
    guaji123
        12
    guaji123  
       133 天前
    出掉买 mac studio
    findex
        13
    findex  
       133 天前
    @wzw 12900K 睿频官方功率 241W 。单 CPU 。我的猫头鹰 D15S 最多能压到 200W 功耗。这个 U 得上水冷吧。
    Xusually
        14
    Xusually  
       133 天前
    @huadi 大概率是说 VSC 吧
    littlewing
        15
    littlewing  
       133 天前
    我很好奇什么 rust 项目编译要那么久,是因为项目本身很大还是 rust 编译就慢
    vincexu
        16
    vincexu  
       133 天前 via Android
    @littlewing 本身编译就不快,如果项目再大当然就更慢了
    junnplus
        17
    junnplus  
       133 天前
    因为工作要写 Rust ,项目比较大,m1 max 也显得慢,所以写代码主力机是 12 代 i9 ,桌面是 m1 max ,通过 ssh 连接直接 vim 写代码
    kkocdko
        18
    kkocdko  
       133 天前 via Android
    对于编译慢,可以看下 mold ,现代的,并行化的 linker ,比 lld 快很多。
    rust 编译慢,但大多数时候依赖的 crate 是不会重新编译的。linker 的速度很关键。
    zxCoder
        19
    zxCoder  
       133 天前
    (讨厌编译速度慢的编程语言垃圾
    lysS
        20
    lysS  
       133 天前
    @junnplus 推荐 VS remote
    agagega
        21
    agagega  
       133 天前
    我以前想过这个问题,除了换电脑(或者局域网里放一台 CPU 不错的 PC )没什么好的解决方案,因为你整个构建过程生成的文件是巨大的
    GuangXiN
        22
    GuangXiN  
       133 天前
    阿里云有 ECI ,可以像 Docker 容器一样从镜像启动,运行完了自动销毁
    junnplus
        23
    junnplus  
       133 天前
    @lysS 谢谢,不需要,常年 vim
    emeab
        24
    emeab  
       133 天前
    @huadi 估计说的 Visual Studio Code 把
    Aixiaoa
        25
    Aixiaoa  
       133 天前
    如果身边有同事或朋友也有此种需求的话 可以考虑弄个服务器来干这种粗重的活 几个人平坦一下 费用和效率都不错
    不想放家里也可以丢 idc 机房
    MrKrabs
        26
    MrKrabs  
       133 天前
    现在编译只信 M1
    kkocdko
        27
    kkocdko  
       133 天前 via Android
    居然没人提到 GitHub Codespace
    dayeye2006199
        28
    dayeye2006199  
       133 天前 via Android
    国外的话可以用 aws batch 。按使用量收费的。很多做电影搞动画的渲染工作,都是扔到上面搞得。
    neoblackcap
        29
    neoblackcap  
       133 天前   ❤️ 1
    @littlewing rust 语法复杂,加上泛型代码膨胀得很快的。当然最重要的是 rust 的前端给 llvm 喂了一大堆无用的代码,加重了编译后端的工作量。
    gynantim
        30
    gynantim  
       133 天前
    换 m1 吧。
    dangyuluo
        31
    dangyuluo  
       133 天前   ❤️ 1
    irytu
        32
    irytu  
       132 天前 via iPhone
    开个 aws 高配 ec2 用完删呗
    Goooooos
        33
    Goooooos  
       132 天前
    @junnplus #17 不是 M1 max 编译比 intel 快吗,怎么反过来?
    devcat9
        34
    devcat9  
       132 天前
    @BrettD
    @dangyuluo
    类似的思路还有 Bazel 吧: https://github.com/bazelbuild/rules_rust
    tomari
        35
    tomari  
       132 天前
    现在的云服务不都是可以按需收费吗
    Hanggi
        36
    Hanggi  
       132 天前
    什么叫 “用 Electron 写的电子垃圾”,敢说清楚点?是不是用这个电子垃圾的人都在用垃圾?
    kidlj
        37
    kidlj  
       132 天前   ❤️ 5
    本来想帮忙的,看到 “用 Electron 写的电子垃圾”,拉倒吧!
    spidah
        38
    spidah  
       132 天前
    vscode 有那么不堪?可以说说哪里不行,没必要一上来就是垃圾
    tcpdump
        39
    tcpdump  
       132 天前
    @PureWhiteWu 利益相关 ??? 大股东吧。
    sxfscool
        40
    sxfscool  
       132 天前
    不想用就别用,有本事你写个垃圾出来
    Asfy
        41
    Asfy  
       132 天前
    vscode 远程体验是最好的了.
    clion 那套跟屎一样
    FightPig
        42
    FightPig  
       132 天前
    @PureWhiteWu 请问,M1 Max 和 pro 的话相差大么
    hei1000
        43
    hei1000  
       132 天前
    @PureWhiteWu 啥 Rust 项目需要 2 小时?
    PureWhiteWu
        44
    PureWhiteWu  
       132 天前
    @FightPig 内存不敏感的话,pro 也够用;我主要是要 64G 内存。
    PureWhiteWu
        45
    PureWhiteWu  
       132 天前
    @tcpdump 并不是……AAPL 买不起……
    PureWhiteWu
        46
    PureWhiteWu  
       132 天前
    @hei1000 公司内的某项目。
    junnplus
        47
    junnplus  
       132 天前
    @Goooooos 是 12 代 i9 ,比 max 快一点点
    stnaw
        48
    stnaw  
       132 天前
    就编译而言 ,m1 max 还是挺香的。 亲测 我的是 10+24 32G
    bxb100
        49
    bxb100  
       132 天前 via Android
    Action self host runner 不就行了
    houhaibushihai
        50
    houhaibushihai  
       132 天前
    @stnaw m1 max 和 m1 pro 差距大吗(就编译而言)?因为我看它俩都是 10 核 cpu
    yazinnnn
        51
    yazinnnn  
       132 天前
    拯救者的 12700h 和 mbp16 的 m1 max 的编译速度哪个快一些?
    Jooooooooo
        52
    Jooooooooo  
       132 天前
    项目为啥这么大...
    stnaw
        54
    stnaw  
       131 天前
    @houhaibushihai #50 没有 m1 pro 对不了...
    INCerry
        55
    INCerry  
       131 天前
    像 C++还有 IncrediBuild 可以用,Rust 没有这方面的东西吗?
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1066 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 22:37 · PVG 06:37 · LAX 15:37 · JFK 18:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.