EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Larger build products in base-7.0.5
From: Michael Davidsaver via Tech-talk <tech-talk at aps.anl.gov>
To: Kevin Peterson <kmpeters at anl.gov>
Cc: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Fri, 30 Apr 2021 08:32:25 -0700
On 4/30/21 7:46 AM, Kevin Peterson via Tech-talk wrote:
> Is there are reason the linux-x86_64 build products of base-7.0.5 are 10x larger than the build products of base-7.0.4.1?

Different compiler, or different compile/link flags?

It is also worth comparing code size vs. file size.  c++ debug symbols text to explode
object file size, but not actual code (aka. program text) size.

My working build of the 7.0 branch:

> $ ls -l lib/linux-x86_64*/libca.so.*
> -r-xr-xr-x 1 mdavidsaver mdavidsaver 2.1M Apr 29 15:53 lib/linux-x86_64-debug/libca.so.4.13.9
> -r-xr-xr-x 1 mdavidsaver mdavidsaver 3.6M Apr 29 15:47 lib/linux-x86_64/libca.so.4.13.9
> $ size lib/linux-x86_64*/libca.so.*
>    text    data     bss     dec     hex filename
>  383925   14536     224  398685   6155d lib/linux-x86_64-debug/libca.so.4.13.9
>  320490   13008     224  333722   5179a lib/linux-x86_64/libca.so.4.13.9

Note that the debug build has smaller file size, but larger code/text size.


> The 7.0.4.1 libraries are 28M:
> 
> [computer base-7.0.4.1]$ vdir -h lib/linux-x86_64/
> total 28M
> -r--r--r-- 1 user group  874K Apr 19 19:34 libca.a
> -r-xr-xr-x 1 user group   71K Apr 19 19:36 libCap5.so*
> lrwxrwxrwx 1 user group    15 Apr 19 19:34 libca.so -> libca.so.4.13.7*
> -r-xr-xr-x 1 user group  520K Apr 19 19:34 libca.so.4.13.7*
> -r--r--r-- 1 user group 1009K Apr 19 19:29 libCom.a
> lrwxrwxrwx 1 user group    16 Apr 19 19:29 libCom.so -> libCom.so.3.18.1*
> -r-xr-xr-x 1 user group  544K Apr 19 19:29 libCom.so.3.18.1*
> -r--r--r-- 1 user group  1.1M Apr 19 19:37 libdbCore.a
> lrwxrwxrwx 1 user group    19 Apr 19 19:37 libdbCore.so -> libdbCore.so.3.18.1*
> -r-xr-xr-x 1 user group  667K Apr 19 19:37 libdbCore.so.3.18.1*
> -r--r--r-- 1 user group  657K Apr 19 19:39 libdbRecStd.a
> lrwxrwxrwx 1 user group    21 Apr 19 19:39 libdbRecStd.so -> libdbRecStd.so.3.18.1*
> -r-xr-xr-x 1 user group  375K Apr 19 19:39 libdbRecStd.so.3.18.1*
> -r--r--r-- 1 user group  1.7M Apr 19 20:08 libnt.a
> lrwxrwxrwx 1 user group    14 Apr 19 20:08 libnt.so -> libnt.so.6.0.2*
> -r-xr-xr-x 1 user group  753K Apr 19 20:08 libnt.so.6.0.2*
> -r--r--r-- 1 user group  4.3M Apr 19 19:56 libpvAccess.a
> -r--r--r-- 1 user group  883K Apr 19 20:03 libpvAccessCA.a
> lrwxrwxrwx 1 user group    22 Apr 19 20:03 libpvAccessCA.so -> libpvAccessCA.so.7.1.2*
> -r-xr-xr-x 1 user group  481K Apr 19 20:03 libpvAccessCA.so.7.1.2*
> -r--r--r-- 1 user group   75K Apr 19 20:04 libpvAccessIOC.a
> lrwxrwxrwx 1 user group    23 Apr 19 20:04 libpvAccessIOC.so -> libpvAccessIOC.so.7.1.2*
> -r-xr-xr-x 1 user group   53K Apr 19 20:04 libpvAccessIOC.so.7.1.2*
> lrwxrwxrwx 1 user group    20 Apr 19 19:56 libpvAccess.so -> libpvAccess.so.7.1.2*
> -r-xr-xr-x 1 user group  2.2M Apr 19 19:56 libpvAccess.so.7.1.2*
> -r--r--r-- 1 user group  1.6M Apr 19 20:12 libpvaClient.a
> lrwxrwxrwx 1 user group    21 Apr 19 20:12 libpvaClient.so -> libpvaClient.so.4.7.2*
> -r-xr-xr-x 1 user group  798K Apr 19 20:12 libpvaClient.so.4.7.2*
> -r--r--r-- 1 user group  3.8M Apr 19 19:46 libpvData.a
> -r--r--r-- 1 user group  1.3M Apr 19 20:16 libpvDatabase.a
> lrwxrwxrwx 1 user group    22 Apr 19 20:16 libpvDatabase.so -> libpvDatabase.so.4.5.3*
> -r-xr-xr-x 1 user group  690K Apr 19 20:16 libpvDatabase.so.4.5.3*
> lrwxrwxrwx 1 user group    18 Apr 19 19:46 libpvData.so -> libpvData.so.8.0.3*
> -r-xr-xr-x 1 user group  1.8M Apr 19 19:46 libpvData.so.8.0.3*
> -r--r--r-- 1 user group  1.3M Apr 19 20:20 libqsrv.a
> lrwxrwxrwx 1 user group    14 Apr 19 20:20 libqsrv.so -> libqsrv.so.1.1*
> -r-xr-xr-x 1 user group  636K Apr 19 20:20 libqsrv.so.1.1*
> 
> And the 7.0.5 libraries are 299M:
> 
> [computer epics/base-7.0.5]$ vdir -h lib/linux-x86_64/
> total 299M
> -r--r--r-- 1 user group 5.3M Apr 30 08:50 libca.a
> -r-xr-xr-x 1 user group 243K Apr 30 08:50 libCap5.so*
> lrwxrwxrwx 1 user group   15 Apr 30 08:50 libca.so -> libca.so.4.13.8*
> -r-xr-xr-x 1 user group 2.6M Apr 30 08:50 libca.so.4.13.8*
> -r--r--r-- 1 user group 3.8M Apr 30 08:49 libCom.a
> lrwxrwxrwx 1 user group   16 Apr 30 08:49 libCom.so -> libCom.so.3.19.0*
> -r-xr-xr-x 1 user group 1.8M Apr 30 08:49 libCom.so.3.19.0*
> -r--r--r-- 1 user group 5.1M Apr 30 08:50 libdbCore.a
> lrwxrwxrwx 1 user group   19 Apr 30 08:50 libdbCore.so -> libdbCore.so.3.19.0*
> -r-xr-xr-x 1 user group 2.7M Apr 30 08:50 libdbCore.so.3.19.0*
> -r--r--r-- 1 user group 3.8M Apr 30 08:51 libdbRecStd.a
> lrwxrwxrwx 1 user group   21 Apr 30 08:51 libdbRecStd.so -> libdbRecStd.so.3.19.0*
> -r-xr-xr-x 1 user group 1.7M Apr 30 08:51 libdbRecStd.so.3.19.0*
> -r--r--r-- 1 user group  30M Apr 30 08:57 libnt.a
> lrwxrwxrwx 1 user group   14 Apr 30 08:57 libnt.so -> libnt.so.6.0.1*
> -r-xr-xr-x 1 user group  11M Apr 30 08:57 libnt.so.6.0.1*
> -r--r--r-- 1 user group  59M Apr 30 08:55 libpvAccess.a
> -r--r--r-- 1 user group 6.9M Apr 30 08:55 libpvAccessCA.a
> lrwxrwxrwx 1 user group   22 Apr 30 08:55 libpvAccessCA.so -> libpvAccessCA.so.7.1.3*
> -r-xr-xr-x 1 user group 3.0M Apr 30 08:55 libpvAccessCA.so.7.1.3*
> -r--r--r-- 1 user group 1.2M Apr 30 08:55 libpvAccessIOC.a
> lrwxrwxrwx 1 user group   23 Apr 30 08:55 libpvAccessIOC.so -> libpvAccessIOC.so.7.1.3*
> -r-xr-xr-x 1 user group 572K Apr 30 08:55 libpvAccessIOC.so.7.1.3*
> lrwxrwxrwx 1 user group   20 Apr 30 08:55 libpvAccess.so -> libpvAccess.so.7.1.3*
> -r-xr-xr-x 1 user group  22M Apr 30 08:55 libpvAccess.so.7.1.3*
> -r--r--r-- 1 user group  26M Apr 30 08:59 libpvaClient.a
> lrwxrwxrwx 1 user group   21 Apr 30 08:59 libpvaClient.so -> libpvaClient.so.4.7.1*
> -r-xr-xr-x 1 user group 9.1M Apr 30 08:59 libpvaClient.so.4.7.1*
> -r--r--r-- 1 user group  38M Apr 30 08:53 libpvData.a
> -r--r--r-- 1 user group  21M Apr 30 08:59 libpvDatabase.a
> lrwxrwxrwx 1 user group   22 Apr 30 08:59 libpvDatabase.so -> libpvDatabase.so.4.5.3*
> -r-xr-xr-x 1 user group 7.4M Apr 30 08:59 libpvDatabase.so.4.5.3*
> lrwxrwxrwx 1 user group   18 Apr 30 08:53 libpvData.so -> libpvData.so.8.0.4*
> -r-xr-xr-x 1 user group  15M Apr 30 08:53 libpvData.so.8.0.4*
> -r--r--r-- 1 user group  19M Apr 30 09:00 libqsrv.a
> lrwxrwxrwx 1 user group   14 Apr 30 09:00 libqsrv.so -> libqsrv.so.1.2*
> -r-xr-xr-x 1 user group 6.9M Apr 30 09:00 libqsrv.so.1.2*
> 
> The 7.0.5 binaries are also substantially larger than the 7.0.4.1 binaries: 11M vs 1.8M, respectively.
> 
> Thanks,
> 
> Kevin


References:
Larger build products in base-7.0.5 Kevin Peterson via Tech-talk

Navigate by Date:
Prev: Larger build products in base-7.0.5 Kevin Peterson via Tech-talk
Next: Re: Larger build products in base-7.0.5 Johnson, Andrew N. via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024 
Navigate by Thread:
Prev: Larger build products in base-7.0.5 Kevin Peterson via Tech-talk
Next: Re: Larger build products in base-7.0.5 Johnson, Andrew N. via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024 
ANJ, 30 Apr 2021 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·