[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 2/2] gnu: zita-convolver: Drop the '-march=native' optimizati
From: |
宋文武 |
Subject: |
Re: [PATCH 2/2] gnu: zita-convolver: Drop the '-march=native' optimization. |
Date: |
Thu, 07 Jan 2016 22:53:45 +0800 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
address@hidden (Ludovic Courtès) writes:
> Ricardo Wurmus <address@hidden> skribis:
>
>> 宋文武 <address@hidden> writes:
>>
>>> Ricardo Wurmus <address@hidden> writes:
>>>
>>>>> + (snippet
>>>>> + ;; Don't optimize for a specific processor architecture.
>>>>> + '(substitute* "libs/Makefile"
>>>>> + (("^CXXFLAGS \\+= -march=native") "")))
>>>>> + (modules '((guix build utils)))
>>>>
>>>> Is this to avoid that packages are optimised for the CPU of the build
>>>> slave?
>>> Yes, using that from hydra will crash guitarix for me.
>>> Same as: <https://bugs.archlinux.org/task/36248>.
>>
>> Guitarix also crashes for me on i686 — and I thought it was something to
>> do with my machine or the broken build of eigen.
Pushed, hopefully this will fix it on i686 too.
>
> Eigen is a header-only library, so what matters is the optimization
> flags passed when building the software that uses Eigen.
>
>>>> If so, could we instead pass different optimisation flags for
>>>> different architectures? For a convolver I’d prefer to have *some*
>>>> optimisation, even if it’s just the greatest common divisor.
>
> It’s likely that zita-convolver has -O2 or similar *in addition* to
> -march=native, because the latter is no substitute for the former.
>
> Could you check that in the makefiles?
Yes, it actually has:
CXXFLAGS =+ -ffast-math -funroll-loops -O3