cpu detection

Boudewijn Rempt boud at valdyas.org
Mon Oct 29 08:50:33 UTC 2012


On Mon, 29 Oct 2012, Dmitry Kazakov wrote:

> On Mon, Oct 29, 2012 at 12:28 PM, Boudewijn Rempt <boud at valdyas.org> wrote:
>       I'm not sure whether there's already something suitably cross-platform in solid, but Rami Radi from
>       Intel pointed me at http://libcpuid.sourceforge.net/documentation.html -- we could use that to make
>       sure that binaries compiled with avx support don't crash on non-avx systems but use the fallback.
> 
> 
> As far as I know Vc does its own check for the presence of a particular instruction set on the runtime, so it
> won't crash at least. But as reported by Sven its own fallbacks are slower than our integer implementation of
> the routines.

I came across something yesterday that I cannot find that said that, yes, 
if you use a binary compiled for avx on a non-avx system, as soon as the 
instructions are executed you'll get a crash.

> I had an idea to perform a short set of benchmarks on a Krita start (or on first start?) instead of inspecting a
> CPU and choose the most suitable implementation, basing of these values. I guess, it should be the best solution
> for the problem, since we can't test the performance of Krita on all the possible CPUs.

That's an interesting idea.

> But the optimized compilation of the Vc might be really a problem for usual users. We (and distributions) need
> to think about it well.

I've asked on the packager mailing list for input on that problem

Boudewijn


More information about the kimageshop mailing list