Re: Compiling binaries with PGO (Profile-Guided Optimization)

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

 




----- Original Message -----
> From: "Alexander Zaitsev" <zamazan4ik@xxxxxx>
> To: devel@xxxxxxxxxxxxxxxxxxxxxxx
> Sent: Friday, July 6, 2018 7:35:56 PM
> Subject: Re: Compiling binaries with PGO (Profile-Guided Optimization)
> 
> 
> 
> 06.07.2018 17:26, Neal Gompa пишет:
> > On Fri, Jul 6, 2018 at 10:12 AM Aliaksandr Zaitsau <zamazan4ik@xxxxxx>
> > wrote:
> >> Hello.
> >>
> >> As far as I know binaries in Fedora repositories are compiled without
> >> PGO (profile-guided optimization). Also I don't know any LInux-based OS
> >> where binaries are precompiled with PGO. With PGO we can improve
> >> performance of binaries for typical use-cases without compiling for some
> >> specific architecture (so binaries with PGO will be
> >> architecture-independent).
> >>
> >> Question: why PGO isn't used by maintainers for packages? Lack of
> >> profile data for compilation with PGO? Isn't interested for
> >> mainatainers? Something else? Will you try to use PGO for your packages,
> >> if will be available repository with profile data for different
> >> applications, where you can pick profile data for your application,
> >> recompile package with this information and, probably, increase
> >> performance of your application?
> >>
> > Some packages in Fedora _are_ compiled with PGO. Off the top of my
> > head, both Firefox and Python 3 are, but only for the x86
> > architectures. It takes too long for other architectures.
> >
> > I don't know if there's significant demonstrative benefit across the
> > board for PGO, given the additional time it adds to package builds...
> >
> >
> >
> Hmm.. Sounds interesting. If some packages are built with PGO, so which
> profiling information is used for compilation with PGO? Maintainers
> manually collect it or take this information from some source?
> _______________________________________________
> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
> Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives:
> https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/J2GKMR75ZC5YQ3O3UD5PQAWSLUOYJ46M/
> 

Python runs its huge upstream test suite to gather that information. Combined with the fact that we also run it once for the debug build
and another for the actual build, the slow arch's will take way too long. ARM was something like 7 hours if I recall correctly,
hence the reason for enabling it only on specific arch's.

You can examine the build logs here  if you are interested [0].

[0] https://koji.fedoraproject.org/koji/buildinfo?buildID=1099020

-- 
Regards,

Charalampos Stratakis
Software Engineer
Python Maintenance Team, Red Hat
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/5UOM5KBI3VNPJH47URVB5V6ZTG6GE77N/




[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