On Wed, Apr 16, 2014 at 3:15 AM, leif <[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?


>
> -leif
>
>
>
>  I'd first also check whether MPIR's test suite passes:
>>
>>    ./sage -f -c mpir
>>
>>
>> You could try installing Sage's GCC (standard package is version 4.7.3
>> IIRC), and rebuilding GMP-ECM with that, again running its test suite.
>> Quick way should be:
>>
>>    ./sage -i gcc
>>    ./sage -f -c ecm
>>
>> Or (re)build Sage from scratch using its GCC (in some other folder):
>>
>>    env SAGE_INSTALL_GCC=yes make
>>
>>
>> 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
>>    #   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 ;
>>    # 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
>>    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 a topic in the
> Google Groups "sage-release" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/sage-release/yJMpYXRQYqk/unsubscribe.
> To unsubscribe from this group and all its topics, 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.
>

-- 
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