Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Fedora Development (http://www.linux-archive.org/fedora-development/)
-   -   Announcing `gold-rebuild' - link your packages with gold now (http://www.linux-archive.org/fedora-development/337899-announcing-gold-rebuild-link-your-packages-gold-now.html)

Michal Nowak 03-08-2010 10:44 AM

Announcing `gold-rebuild' - link your packages with gold now
 
Past months I spent investigating `gold' - the new GNU linker
and how it now works with stock Fedora packages.

Result is `gold-rebuild', Bash script which automates `gold's
involvement in Mock buildroot. Tarball can be obtained here:
http://mnowak.fedorapeople.org/gold-rebuild/dist/

What it can do for you? You give it package name or comps group
to rebuild and it downloads binutils daily snapshot, incorporates
it into latest Rawhide binutils SRPM and builds it with `gold'
instead of usual `ld' as a /usr/bin/ld. Such resulting RPM packages
are placed in local repository and are used in Mock later when
building (linking) you selected package or comps group.

Documentation lives here:
https://fedoraproject.org/wiki/GoldLinking

Script has its limitations and catches but should work fine at i686
and x86_64 (PPC seems to be broken) on Fedora 12 and 13.

So far when rebuilding Base group: TOTAL: 99 PASS: 84 FAIL: 15
See attachment for complete list. Regarding fails, they are being
classified by the script so you can easily figure out, where might
be the problem (GCC v. gold v. fedora). It would be wise to contact
your package upstream with patches regarding gold-instead-of-ld usage.
Regarding passes: It just says package can be compiled and linked by
gold. No one`s claiming the binaries are 100% OK and working :)
(in sources testsuite such as prelink claims it might not ~ but prelink
is likely special case).

Let me know if you came across bugs in this script or you think
it should have some sort of improvement you need.

Michal
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Michal Nowak 03-08-2010 10:46 AM

Announcing `gold-rebuild' - link your packages with gold now
 
----- "Michal Nowak" <mnowak@redhat.com> wrote:

> See attachment for complete list. Regarding fails, they are being

Here is comes.

Michal--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Jakub Jelinek 03-08-2010 10:59 AM

Announcing `gold-rebuild' - link your packages with gold now
 
On Mon, Mar 08, 2010 at 06:44:18AM -0500, Michal Nowak wrote:
> So far when rebuilding Base group: TOTAL: 99 PASS: 84 FAIL: 15
> See attachment for complete list. Regarding fails, they are being
> classified by the script so you can easily figure out, where might
> be the problem (GCC v. gold v. fedora). It would be wise to contact
> your package upstream with patches regarding gold-instead-of-ld usage.
> Regarding passes: It just says package can be compiled and linked by
> gold. No one`s claiming the binaries are 100% OK and working :)
> (in sources testsuite such as prelink claims it might not ~ but prelink
> is likely special case).

Well, not a special case. Currently all gold linked binaries and libraries
are just not prelinkable at all. gold author is aware of it and said he'd
fix it.

Jakub
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Richard Hughes 03-08-2010 12:31 PM

Announcing `gold-rebuild' - link your packages with gold now
 
On 8 March 2010 11:44, Michal Nowak <mnowak@redhat.com> wrote:
> Past months I spent investigating `gold' - the new GNU linker
> and how it now works with stock Fedora packages.

Using gold, I get:

/usr/bin/ld: --no-add-needed: unknown option
/usr/bin/ld: use the --help option for usage information
collect2: ld returned 1 exit status

This is with fully updated F13.

Richard.
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

03-08-2010 01:24 PM

Announcing `gold-rebuild' - link your packages with gold now
 
Michal Nowak <mnowak@redhat.com> writes:

> Past months I spent investigating `gold' - the new GNU linker
> and how it now works with stock Fedora packages.
> [...]

Do your scripts provide some evidence of exciting speedups with gold?

- FChE
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Jakub Jelinek 03-08-2010 01:31 PM

Announcing `gold-rebuild' - link your packages with gold now
 
On Mon, Mar 08, 2010 at 09:24:29AM -0500, Frank Ch. Eigler wrote:
> Michal Nowak <mnowak@redhat.com> writes:
>
> > Past months I spent investigating `gold' - the new GNU linker
> > and how it now works with stock Fedora packages.
> > [...]
>
> Do your scripts provide some evidence of exciting speedups with gold?

Or slowdowns?

Jakub
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Roland McGrath 03-08-2010 09:46 PM

Announcing `gold-rebuild' - link your packages with gold now
 
Nice hack, Michal! As you are aware, I have been slowly preparing things
to get towards the option of using gold for real in the future. Making
this sort of testing easy is about the next thing I thought someone should
do (and wasn't going to hack on myself!), so it's a thrill to see you've
taken the initiative.

I believe that upstream gold has changed a fair bit since the binutils
snapshot we have in Fedora. Before paying much attention to actual testing
results, I would recommend working with nickc to get a fresher binutils
based on current upstream into rawhide (it's too late to be mucking with
F-13 tools now).

I had not been planning to announce or recommend anyone play with gold
until that was done. As your wiki page mentions, for playing locally by
hand you can already (as of F-13) use:
alternatives --set /usr/bin/ld /usr/bin/ld.gold
to try some compilations.

Even with the latest gold, there are still some known limitations.
So nobody should be expecting perfection. But it is useful to collect
the cases that fail in ways that are not already known gold bugs.


Thanks,
Roland
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Michal Nowak 03-09-2010 03:29 PM

Announcing `gold-rebuild' - link your packages with gold now
 
----- "Jakub Jelinek" <jakub@redhat.com> wrote:

> On Mon, Mar 08, 2010 at 06:44:18AM -0500, Michal Nowak wrote:
> > So far when rebuilding Base group: TOTAL: 99 PASS: 84 FAIL: 15
> > See attachment for complete list. Regarding fails, they are being
> > classified by the script so you can easily figure out, where might
> > be the problem (GCC v. gold v. fedora). It would be wise to contact
> > your package upstream with patches regarding gold-instead-of-ld
> usage.
> > Regarding passes: It just says package can be compiled and linked by
>
> > gold. No one`s claiming the binaries are 100% OK and working :)
> > (in sources testsuite such as prelink claims it might not ~ but
> prelink
> > is likely special case).
>
> Well, not a special case. Currently all gold linked binaries and
> libraries
> are just not prelinkable at all. gold author is aware of it and said
> he'd
> fix it.

This may have been fixed by this commit already:

"""
I committed this patch to gold to add the --spare-dynamic-tags option.
The default of 5 matches GNU ld's default behaviour. This permits the
GNU/Linux prelinker to work.

Ian


2010-03-05 Ian Lance Taylor <iant@google.com>

* options.h (class General_options): Add --spare-dynamic-tags.
* output.cc (Output_data_dynamic::set_final_data_size): Implement
--spare-dynamic-tags.
"""

Did not check, though.

>
> Jakub

Michal

> --
> devel mailing list
> devel@lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/devel
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Michal Nowak 03-09-2010 03:37 PM

Announcing `gold-rebuild' - link your packages with gold now
 
----- "Richard Hughes" <hughsient@gmail.com> wrote:

> On 8 March 2010 11:44, Michal Nowak <mnowak@redhat.com> wrote:
> > Past months I spent investigating `gold' - the new GNU linker
> > and how it now works with stock Fedora packages.
>
> Using gold, I get:
>
> /usr/bin/ld: --no-add-needed: unknown option
> /usr/bin/ld: use the --help option for usage information
> collect2: ld returned 1 exit status
>
> This is with fully updated F13.

Unfortunately gold version in F-13 is quite old and a lot happened
upstream since than. Use `gold-rebuil' script with '-r' option
and it will get current daily CVS snapshot from upstream's mirror,
rebuilds RPMs and use them instead of your stock F-13 binutils
packages -- all done in Mock.

See the wiki page or let me know if anything unclear.

>
> Richard.

Michal

> --
> devel mailing list
> devel@lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/devel
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Michal Nowak 03-09-2010 03:49 PM

Announcing `gold-rebuild' - link your packages with gold now
 
----- "Jakub Jelinek" <jakub@redhat.com> wrote:

> On Mon, Mar 08, 2010 at 09:24:29AM -0500, Frank Ch. Eigler wrote:
> > Michal Nowak <mnowak@redhat.com> writes:
> >
> > > Past months I spent investigating `gold' - the new GNU linker
> > > and how it now works with stock Fedora packages.
> > > [...]
> >
> > Do your scripts provide some evidence of exciting speedups with
> gold?
>
> Or slowdowns?

I mostly tested building of Base group packages and they are quite
small and usually written in C so potential gold's advantages did
not emerged at least for me yet. However now I am rebuilding Qt -
I believe this one will be far more telling since it's big (250 MB
in resulted RPMs), in C++ and my stock F-12 machine needed 2h to
finish the task when built with F-12 binutils.

Feel free to vimdiff attachment #1 (F-12 binutils) and #2 (a week
old binutils snapshot). I don't see "exciting speedups" nor
"slowdowns" on those humble system packages from @Base.

> Jakub

Michal

> --
> devel mailing list
> devel@lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/devel
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel


All times are GMT. The time now is 09:20 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.