Re: [PATCH 1/2] kbuild: remove top-level built-in.a

From: Nicholas Piggin
Date: Wed Jan 23 2019 - 03:26:51 EST


Masahiro Yamada's on January 15, 2019 7:01 pm:
> Hi Nicholas,
>
>
> On Tue, Jan 15, 2019 at 5:07 PM Nicholas Piggin <npiggin@xxxxxxxxx> wrote:
>>
>> Masahiro Yamada's on January 14, 2019 1:27 pm:
>> > The symbol table in the final archive is unneeded because it is passed
>> > to the linker after the --whole-archive option. Every object file in
>> > the archive is included in the link anyway.
>> >
>> > Pass thin archives from subdirectories directly to the linker, and
>> > remove the final archiving step.
>>
>> This seems like a good improvement. As far as I remember, it was slower
>> to do the final link without the index built. Maybe I was testing it
>> in a revision before moving those files into --whole-archive? If there
>> is no slowdown, then I have no objection.
>
>
> Thanks for the review.
>
>
> I measured the performance of scripts/link-vmlinux.sh with 'perf stat'.
> (20 times for each)
>
>
>
> Before this patch:
>
> Performance counter stats for 'make vmlinux' (20 runs):
>
> 5.266796537 seconds time elapsed
> ( +- 0.12% )
>
>
>
> After this patch:
>
> Performance counter stats for 'make vmlinux' (20 runs):
>
> 4.945576395 seconds time elapsed
>
>
>
>
> So, the performance is slightly better.
>
> Maybe, does omitting the 'ar' save some time?

Wow yeah that's a good speedup and simplification to boot. Thanks for
checking it.

> Anyway, this commit is good.

Yes, it's a good improvement.

Thanks,
Nick