Patchwork binutils: Enable threaded linking with gold

login
register
mail settings
Submitter Khem Raj
Date Aug. 7, 2012, 9:26 p.m.
Message ID <1344374781-21240-1-git-send-email-raj.khem@gmail.com>
Download mbox | patch
Permalink /patch/34049/
State Accepted
Commit 210957a58260ec50416649aba799d0e96aeeff24
Headers show

Comments

Khem Raj - Aug. 7, 2012, 9:26 p.m.
This options will let gold spawn multiple
threads for linking and speeding up linking
on multicore build hosts.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-devtools/binutils/binutils-2.22.inc |    2 +-
 meta/recipes-devtools/binutils/binutils.inc      |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Ross Burton - Aug. 8, 2012, 1:17 p.m.
Hi Khem,

On 7 August 2012 22:26, Khem Raj <raj.khem@gmail.com> wrote:
> This options will let gold spawn multiple
> threads for linking and speeding up linking
> on multicore build hosts.

I turned on the DISTRO_FEATURE ld-is-gold and rebuild my toolchain and
then webkit-gtk, but there was no improvement in build time (I'm
attributing a 20s difference in build time to noise considering the
build was 24 minutes).  Is there something else I need to change, as I
was expecting WebKit would be a good winner with this.

Ross
Khem Raj - Aug. 8, 2012, 2:48 p.m.
On Wed, Aug 8, 2012 at 6:17 AM, Burton, Ross <ross.burton@intel.com> wrote:
> Hi Khem,
>
> On 7 August 2012 22:26, Khem Raj <raj.khem@gmail.com> wrote:
>> This options will let gold spawn multiple
>> threads for linking and speeding up linking
>> on multicore build hosts.
>
> I turned on the DISTRO_FEATURE ld-is-gold and rebuild my toolchain and
> then webkit-gtk, but there was no improvement in build time (I'm
> attributing a 20s difference in build time to noise considering the
> build was 24 minutes).  Is there something else I need to change, as I
> was expecting WebKit would be a good winner with this.
>

hmm, yes I would think so too. My experiments were on a i386 box with
2G RAM I see considerable improvement on app linked with boost that I
tried. Can you recheck if ld is pointing to gold in
the cross toolchain install ?

> Ross
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/recipes-devtools/binutils/binutils-2.22.inc b/meta/recipes-devtools/binutils/binutils-2.22.inc
index e3e179d..17950a2 100644
--- a/meta/recipes-devtools/binutils/binutils-2.22.inc
+++ b/meta/recipes-devtools/binutils/binutils-2.22.inc
@@ -1,4 +1,4 @@ 
-PR = "r13"
+PR = "r14"
 
 LIC_FILES_CHKSUM="\
     file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
diff --git a/meta/recipes-devtools/binutils/binutils.inc b/meta/recipes-devtools/binutils/binutils.inc
index cd923bd..ee748a4 100644
--- a/meta/recipes-devtools/binutils/binutils.inc
+++ b/meta/recipes-devtools/binutils/binutils.inc
@@ -53,7 +53,7 @@  B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
 EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
                 --disable-werror \
 		--enable-plugins \
-		${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default', '', d)} \
+		${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default --enable-threads', '', d)} \
                 ${@base_contains('DISTRO_FEATURES', 'multiarch', '--enable-64-bit-bfd', '', d)}"
 
 # This is necessary due to a bug in the binutils Makefiles