Open ViralBShah opened 4 years ago
There is a bit tension here, because of the large size of the libraries. Users may not be happy to get very large binaries for a few reasons (slow internet connection, limited space on disk, etc...)
I thought this is at best a 10-20% kind of thing. Is it substantially larger? My .julia
is usually about 1G - mostly artifacts. These both sound reasonable.
For slow internet people (e.g. in China), no optimizations will help. We need a server in China (and using CDNs etc.). I think having binaries that are easy to debug is valuable.
For example #800 reduced the size of a library from 19 MiB to 0.8 MiB
That's a lot! Is there a diet version of -g
?
-g
takes a level, like -O
. The default for gcc is -g2
. -g0
means no debug information at all, -g1
should be the diet version.
We should build everything with split debug info. That way we can ship the debug symbols a separate artifact and install them after the fact. Unwind tables should always be enabled though, since the profiler uses them.
@keno recently helped me debug some issue in Sundials.jl with RR. Very impressive - both Keno and RR. :-)
One of the things that came up was that it would be good to build binaries with
-g
(even with optimization turned on) and the-funwind-tables
(is that the right flag to get unwind tables info)? That would greatly make it easier to debug things.Of course Keno debugged the Sundials issue without any debug symbols in this case.