[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] configure: fix performance regression due to PIC objects
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH] configure: fix performance regression due to PIC objects |
Date: |
Sat, 19 Sep 2020 18:02:44 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 |
Cc'ing Aleksandar as Ahmed is away.
On 9/19/20 5:56 PM, Paolo Bonzini wrote:
> Because most files in QEMU are grouped into static libraries, Meson
> conservatively
> compiles them with -fPIC. This is overkill and produces slowdowns up to 20%
> on
> some TCG tests.
>
> As a stopgap measure, use the b_staticpic option to limit the slowdown to
> --enable-pie. https://github.com/mesonbuild/meson/pull/7760 will allow
> us to use b_staticpic=false and let Meson do the right thing.
>
> Reported-by: Ahmed Karaman <ahmedkrmn@outlook.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
> configure | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/configure b/configure
> index 0004c46525..0786144043 100755
> --- a/configure
> +++ b/configure
> @@ -7414,6 +7414,7 @@ NINJA=${ninja:-$PWD/ninjatool} $meson setup \
> -Dwerror=$(if test "$werror" = yes; then echo true; else echo false;
> fi) \
> -Dstrip=$(if test "$strip_opt" = yes; then echo true; else echo
> false; fi) \
> -Db_pie=$(if test "$pie" = yes; then echo true; else echo false; fi)
> \
> + -Db_staticpic=$(if test "$pie" = yes; then echo true; else echo
> false; fi) \
> -Db_coverage=$(if test "$gcov" = yes; then echo true; else echo
> false; fi) \
> -Dmalloc=$malloc -Dmalloc_trim=$malloc_trim -Dsparse=$sparse \
> -Dkvm=$kvm -Dhax=$hax -Dwhpx=$whpx -Dhvf=$hvf \
>