Comment by galangalalgol

Comment by galangalalgol 4 days ago

5 replies

Did they say anywhere what they did? Rebuilding the stdlib as part of your build can shrink it a lot depending on how much of it you use, but that is still nightly only. Maybe they went no_std or created their own?

surajrmal 4 days ago

They didn't but keep in mind that the app is currently 170MiB. The standard library shouldn't have added more than a few hundred kilobytes. They already likely pay similar costs for c++, but it's more worthwhile as they have a lot more c++ code total.

Also note that if you statically link to the rust std library, lto will excise the majority of it anyways, no need to rebuild it.

  • galangalalgol 4 days ago

    The default hello world stripped with one codegen unit and panic=abort was 342kB both nightly and stable. Adding lto dropped it 42kB in stable and 40kB in nightly. Adding build-std and only building core did not reduce it any further in size.

    • metaltyphoon 4 days ago

      I assume OP is taking about using -Zbuild-std on nightly. This will drop it much more.

      • galangalalgol 4 days ago

        That is what I was talking about. It didn't reduce it at all over just lto. If I'd set optimization to z it probably would have gotten some back, but that starts impacting performance

jsgf 3 days ago

This is built with buck, and core/std are built as a source dependency.