Joe McDonnell created IMPALA-12165:
--------------------------------------

             Summary: Add support for compiling C++ code with -gsplit-dwarf
                 Key: IMPALA-12165
                 URL: https://issues.apache.org/jira/browse/IMPALA-12165
             Project: IMPALA
          Issue Type: Improvement
          Components: Backend
    Affects Versions: Impala 4.3.0
            Reporter: Joe McDonnell


The split DWARF option for compiling puts the debug info into a separate .dwo 
file for each .o file. This dramatically reduces the amount of debug info that 
goes into the binary itself, because multiple binaries can all point to the 
.dwo files. This can dramatically reduce the disk space and link time, which 
can be very useful for the development iteration cycle.

Here are some numbers:
{noformat}
Debug build without -gsplit-dwarf:

Disk space (after make be-test):
$ du -s be/build
33018616        be/build

Link time:
touch be/build/debug/runtime/libRuntime.a
time make -j8 be-test
real    0m49.091s
user    4m28.908s
sys     0m40.422s

Debug build with -gsplit-dwarf:

Disk space (after make be-test):
$ du -s be/build
17052144        be/build

Link time:
touch be/build/debug/runtime/libRuntime.a
time make -j8 be-test
real    0m16.798s
user    1m12.010s
sys     0m20.397s
{noformat}
Diskspace is about 1/2. Link time is about 1/3. This seems like it could be a 
good improvement to the developer iteration cycle.

This could be provided as an option alongside IMPALA_COMPRESSED_DEBUG_INFO / 
IMPALA_MINIMAL_DEBUG_INFO.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org
For additional commands, e-mail: issues-all-h...@impala.apache.org

Reply via email to