bug-gnubg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: current development


From: Russ Allbery
Subject: Re: current development
Date: Tue, 03 Dec 2019 14:04:15 -0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Joseph Heled <address@hidden> writes:

> I fully appreciate your plight as a package maintainer, but I think that
> users which use rollouts, a quite important GNUBG feature, care a *lot*
> about speed.

> Perhaps the GNUBG code can be structured in a way that it can be
> compiled with all those "advance features", yet they are used *only* in
> rollouts and so everything else works on older systems?

> Is that possible or am I just showing my ignorance?

I don't see an obvious reason why it wouldn't be possible, although this
is currently not what gnubg does.

#if defined(USE_SIMD_INSTRUCTIONS)
        result = SIMD_Supported();
        switch (result) {
        case -1:
            outputerrf(_("Can't check for SIMD support\n"));
            break;
        case -2:
            outputerrf(_("No cpuid check available\n"));
            break;
        case 0:
            /* No SIMD support */
            break;
        case 1:
            /* SIMD support */
            simderror = FALSE;
            break;
        default:
            outputerrf(_("Unknown error while doing SIMD support test\n"));
        }

        if (simderror) {
#if defined(USE_AVX)
            outputerrf(_
                       ("\nThis version of GNU Backgammon is compiled with AVX 
support but this machine does not support AVX\n"));
#else
            outputerrf(_
                       ("\nThis version of GNU Backgammon is compiled with SSE 
support but this machine does not support SSE\n"));
#endif
            exit(EXIT_FAILURE);
        }
#endif

In other words, it checks at runtime if built with AVX to confirm that AVX
is supported and, if not, it terminates the program.  I could define
DISABLE_SIMD_TEST; then, I'm not sure what behavior it would have.

-- 
Russ Allbery (address@hidden)             <https://www.eyrie.org/~eagle/>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]