Skip to content

mpsolve: floating point exceptions #49

@dominikh

Description

@dominikh

Running mpsolve -p "$p" for $p in any of the following polynomials

-3.276309880154409e-28*x^2 + 2.8756624916409617e+274*x + 9.143252377413755e-293
-5.373031345754194e-16*x^2 - 7.89966307163713e+290*x - 2.9358095906746077e-290 
8.55037359452117e-11*x^2 + 9.64301091667767e+293*x - 4.9294244502710445e-281   
-5.916642892295784e-12*x^2 - 9.647643027500125e+288*x - 7.623801392483223e-265 
5.7528980315262775e-30*x^2 + 6.361153714357574e+272*x - 4.97936544052915e-293  

causes mpsolve to get killed by SIGFPE. Backtrace from one instance:

(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=8, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007faa42ad21d3 in __pthread_kill_internal (threadid=<optimized out>, signo=8) at pthread_kill.c:78
#2  0x00007faa42a79e86 in __GI_raise (sig=8) at ../sysdeps/posix/raise.c:26
#3  0x00007faa42d6b679 in __gmp_exception () from /nix/store/0gk9vq3g3s7vc01czb11sj7kffypnhcw-gmp-with-cxx-6.3.0/lib/libgmp.so.10
#4  0x00007faa42d6b6a0 in __gmp_divide_by_zero () from /nix/store/0gk9vq3g3s7vc01czb11sj7kffypnhcw-gmp-with-cxx-6.3.0/lib/libgmp.so.10
#5  0x00007faa42d70e45 in __gmpf_div () from /nix/store/0gk9vq3g3s7vc01czb11sj7kffypnhcw-gmp-with-cxx-6.3.0/lib/libgmp.so.10
#6  0x00007faa4414ffaf in mpc_inv () from /nix/store/gpc64wg0h7khmnig7imkwx255dbv30wg-mpsolve-3.2.1/lib/libmps.so.3
#7  0x00007faa441702cd in mps_secular_mnewton () from /nix/store/gpc64wg0h7khmnig7imkwx255dbv30wg-mpsolve-3.2.1/lib/libmps.so.3
#8  0x00007faa4416502a in __mps_secular_ga_miterate_worker () from /nix/store/gpc64wg0h7khmnig7imkwx255dbv30wg-mpsolve-3.2.1/lib/libmps.so.3
#9  0x00007faa441763fa in mps_thread_mainloop () from /nix/store/gpc64wg0h7khmnig7imkwx255dbv30wg-mpsolve-3.2.1/lib/libmps.so.3
#10 0x00007faa42ad02e3 in start_thread (arg=<optimized out>) at pthread_create.c:447
#11 0x00007faa42b542fc in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions