Andrey Novoseltsev wrote:
On Wed, Apr 16, 2014 at 3:15 AM, leif <[email protected]
<mailto:[email protected]>> wrote:

    leif wrote:

        Andrey Novoseltsev wrote:

            On Tuesday, 15 April 2014 18:25:06 UTC-6, leif wrote:

                 ./sage -f -c ecm



            Thank you! It fails:


        Hmmm, probably Debian have borked GCC (although I'd then expect more
        doctests to fail).


    Or maybe not (the latter).

    Vanilla FSF GCC is currently in part borked as well on 62xx/63xx
    Opterons (with AMD's XOP extensions), and since MPIR 2.6.0 doesn't
    know these chips, and Debian's GCC is configured to produce plain
    x86_64 code by default, GMP-ECM probably is the only Sage package
    which runs into this, because it gets built with '-march=native'
    (here bdver1) unless you set CFLAGS yourself.

    You could (re)try

       env CFLAGS="-O3 -march=bdver1 -mno-xop" ./sage -f -c ecm

    (with Debian's gcc) and see whether the test suite failure vanishes.


That did fix it indeed! (And using Sage gcc didn't.) So - does it have
to be reported somewhere or we just need to wait till known bugs are
fixed in gcc?

Tracking this further down...

Would you mind retrying whether

    env CFLAGS="-O3 -march=native -mtune=native" ./sage -f -c ecm

also works for you?


-leif

        You might also test whether you get the same error(s) outside of
        Sage,
        with Debian's GCC (although we currently use vanilla upstream
        GMP-ECM
        6.4.4); it only needs GMP or MPIR (dev package with headers):

            # [create some temporary directory and cd to it]

            # If you don't have the development package of GMP installed:
            #   sudo apt-get install libgmp-dev
            # (In case you don't have admin rights, it's also easy to
        install
            # it into some personal folder, e.g.:
            #   wget https://ftp.gnu.org/gnu/gmp/__gmp-6.0.0a.tar.xz
        <https://ftp.gnu.org/gnu/gmp/gmp-6.0.0a.tar.xz>
            #   tar xf gmp-6.0.0a.tar.xz
            #   cd gmp-6.0.0
            #   ./configure --prefix=/path/to/install/__folder # e.g.
        $HOME/local
            #   make && make check
            #   make install
            # Similar for MPIR if you prefer that;
        http://mpir.org/mpir-2.6.0.__tar.bz2
        <http://mpir.org/mpir-2.6.0.tar.bz2> ;
            # you'd in addition have to pass '--enable-gmpcompat' to
        'configure'.)

            wget
        https://gforge.inria.fr/frs/__download.php/32159/ecm-6.4.4.__tar.gz
        <https://gforge.inria.fr/frs/download.php/32159/ecm-6.4.4.tar.gz>
            tar xf ecm-6.4.4.tar.gz
            # Or, using the one from the Sage distro:
            # tar xf $SAGE_ROOT/upstream/ecm-6.4.4.__tar.bz2

            cd ecm-6.4.4

            ./configure --prefix=/some/temp/folder
            # In case you have GMP (or MPIR with --enable-gmpcompat)
        elsewhere:
            # ./configure ... --with-gmp=/path/to/gmp-__install  # e.g.
        $HOME/local

            make
            make check

        If that works, you could start playing with CFLAGS ('-O2', '-O3',
        '-march=bdver1' etc.) in order to trigger/sort out the bug:

            make clean
            ./configure ... CFLAGS="..." && make && make check


        -leif


            real    0m16.181s
            user    0m10.052s
            sys     0m5.064s
            Successfully installed ecm-6.4.4
            Running the test suite for ecm-6.4.4...

            Now running GMP-ECM's test suite...
            Making check in x86_64
            make[1]: Entering directory
            
`/home/novoselt/sage/local/__var/tmp/sage/build/ecm-6.4.4/__src/x86_64'
            make[1]: warning: -jN forced in submake: disabling jobserver
            mode.
            make[1]: Nothing to be done for `check'.
            make[1]: Leaving directory
            
`/home/novoselt/sage/local/__var/tmp/sage/build/ecm-6.4.4/__src/x86_64'
            make[1]: Entering directory
            `/home/novoselt/sage/local/__var/tmp/sage/build/ecm-6.4.4/__src'
            make[1]: warning: -jN forced in submake: disabling jobserver
            mode.
            make[1]: Leaving directory
            `/home/novoselt/sage/local/__var/tmp/sage/build/ecm-6.4.4/__src'
            ./test.pp1 ./ecm
            GMP-ECM 6.4.4 [configured with MPIR 2.6.0,
            --enable-asm-redc] [P+1]
            Input number is 328006342451 (12 digits)
            Using B1=120, B2=8008, polynomial x^1, x0=5
            Step 1 took 4ms
            Step 2 took 0ms
            ********** Factor found in step 2: 328006342451
            Found input number N
            GMP-ECM 6.4.4 [configured with MPIR 2.6.0,
            --enable-asm-redc] [P+1]
            Input number is 328006342451 (12 digits)
            Using B1=120, B2=8008, polynomial x^1, x0=262405073961
            Step 1 took 0ms
            Step 2 took 0ms
            ********** Factor found in step 2: 328006342451
            Found input number N
            GMP-ECM 6.4.4 [configured with MPIR 2.6.0,
            --enable-asm-redc] [P+1]
            Input number is 2050449218179969792522461197 (28 digits)
            Using B1=20, B2=-1578-1248978, polynomial x^1, x0=6
            Step 1 took 4ms
            ecm: pm1fs2.c:1863: poly_from_sets_V: Assertion `set->elem[i] ==
            -set->elem[c - 1L - i]' failed.
            Aborted
            ############### ERROR ###############
            Expected return code 14 but got 134
            make: *** [check] Error 1
            Error: GMP-ECM's test suite failed.

            real    0m0.150s
            user    0m0.080s
            sys     0m0.036s

--
() The ASCII Ribbon Campaign
/\   Help Cure HTML E-Mail

--
You received this message because you are subscribed to the Google Groups 
"sage-release" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-release.
For more options, visit https://groups.google.com/d/optout.

Reply via email to