Re: Fedora 32 System-Wide Change proposal: Build Python 3 to statically link with libpython3.8.a for better performance

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday, November 8, 2019 3:20:33 PM MST Daniel Walsh wrote:
> On 11/8/19 5:16 PM, John M. Harris Jr wrote:
> 
> > On Tuesday, November 5, 2019 12:09:55 PM MST Martin Kolman wrote:
> > 
> >> On Tue, 2019-11-05 at 19:41 +0100, Kevin Kofler wrote:
> >>
> >>
> >>
> >>>> Python 3 traditionally in Fedora was built with a shared library
> >>>> libpython3.?.so and the final binary was dynamically linked against
> >>>> that shared library. This change is about creating the static library
> >>>> and linking the final python3 binary against it,
> >>>
> >>>
> >>>
> >>> I oppose this change, because this is yet another size increase:
> >> 
> >> Up to ~27% speed increase for extra ~3.4 MB storage used seems like a
> >> good
> >> trade-off to me...
> >> 
> >  
> >  
> >>>
> >>>
> >>>> As a negative side effect, when both libpython3.8.so and
> >>>> /usr/bin/python3.8 are installed, the filesystem footprint will be
> >>>> slightly increased (libpython3.8.so on Python 3.8.0, x86_64 is ~3.4M).
> >>>
> >>>
> >>>
> >>> and while:
> >>>
> >>>
> >>>
> >>>
> >>>> OTOH only a very small amount of packages will depend on
> >>>> libpython3.8.so.
> >>>
> >>>
> >>>
> >>> in practice, that does not help because some of those packages are
> >>> installed  by default, e.g., the ones you mentioned being installed by
> >>> default even on the Docker image:
> >>>
> >>>
> >>>
> >>>
> >>>> *'''libcomps'''
> >>>> *'''libdnf'''
> >>>> *'''vim'''
> >>>
> >>>
> >>>
> >>> but there are more, such as gdb, libreoffice, krita, boost, etc. that
> >>> are
> >>>
> >>>
> >>>
> >>> installed on various live images, and calamares, which is popular on 
> >>> remixes. So all those images will be bloated as a result of your code 
> >>> duplicating change.
> >>>
> >>>
> >>>
> >>>
> >>> In addition:
> >>>
> >>>
> >>>
> >>>
> >>>> By applying this change, libpython's namespace will be separated from
> >>>> Python's, so '''C extension which are still linked to libpython'''
> >>>> might experience side effects or break.
> >>>
> >>>
> >>>
> >>> so compatibility is an issue too.
> >>>
> >>>
> >>>
> >>>
> >>>         Kevin Kofler
> >>>
> >>>
> >>>
> >>> _______________________________________________
> >>> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
> >>> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
> >>> Fedora Code of Conduct:
> >>> https://docs.fedoraproject.org/en-US/project/code-of-conduct/
> >  
> >  List
> >  
> >>> Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List
> >>> Archives:
> >>> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.
> >>> o
> >>> rg
> >> 
> >> _______________________________________________
> >> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
> >> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
> >> Fedora Code of Conduct:
> >> https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List
> >> Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List
> >> Archives:
> >> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.o
> >> rg
> 
> > Anyone that has ever worked with CD images understands that every megabyte
> >  counts.
> >
> >
> 
> I would almost always take speed over disk size.
> _______________________________________________
> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
> Fedora Code of Conduct:
> https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List
> Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List
> Archives:
> https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx

If you would like such a thing, perhaps a non-default python3-static package 
is the way to go then.

-- 
John M. Harris, Jr.
Splentity

_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux