[aspect-devel] "Floating point exception" error from spherical harmonic functions of C++ boost library

Timo Heister heister at clemson.edu
Mon Feb 15 06:25:40 PST 2016


Shangxin,

I can not reproduce it here, probably because I have a newer version
of boost. This is an annoying situation because you can not use
ASPECT_USE_FP_EXCEPTIONS because of it.

Can you please try if https://github.com/geodynamics/aspect/pull/754
works for you? (maybe we can move the discussion there)


On Sat, Feb 13, 2016 at 4:58 PM, Shangxin Liu <sxliu at vt.edu> wrote:
> Here it is. I used public version from git hub and just changed the initial
> condition of the cookbook shell_simple_3d.prm from Function to Harmonic
> perturbation.
>
> Best,
> Shangxin
>
>
> On Sat, Feb 13, 2016 at 4:21 PM, Timo Heister <heister at clemson.edu> wrote:
>>
>> Shangxin,
>>
>> Can you post the prm please?
>>
>> Hi;
>>
>> I think previously I've run into this kind of FPE problem but haven't make
>> a detailed test in DEBUG mode. Recently, from my tests of several spherical
>> shell convections in DEBUG mode, I'd like to report this error:
>>
>> When I ran the 3D spherical shell convection from cookbooks, the job is
>> forwarding normally step by step. However, when I change the initial
>> condition of this prm file to harmonic perturbation using a single
>> degree-order spherical harmonic functions from boost library, the job always
>> gets the following "Floating point exception" error regarding the boost
>> math:
>>
>> [br001:20888] *** Process received signal ***
>>
>> [br001:20888] Signal: Floating point exception (8)
>>
>> [br001:20888] Signal code:  (7)
>>
>> [br001:20888] Failing at address: 0x1151d26
>>
>> [br001:20888] [ 0] /lib64/libpthread.so.0(+0xf500) [0x7fdc123e1500]
>>
>> [br001:20888] [ 1]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZN5boost4math18tgamma_delta_ratioIeeNS0_8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEENS0_5tools12promote_argsIT_T0_ffffE4typeES8_S9_RKT1_+0x85)
>> [0x1151d26]
>>
>> [br001:20888] [ 2]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZN5boost4math6detail25spherical_harmonic_prefixIeNS0_8policies6policyINS3_14default_policyES5_S5_S5_S5_S5_S5_S5_S5_S5_S5_S5_S5_EEEET_jjS7_RKT0_+0x11f)
>> [0x1151705]
>>
>> [br001:20888] [ 3]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZN5boost4math6detail20spherical_harmonic_rIeNS0_8policies6policyINS3_14default_policyES5_S5_S5_S5_S5_S5_S5_S5_S5_S5_S5_S5_EEEET_jiS7_S7_RKT0_+0xb8)
>> [0x115138d]
>>
>> [br001:20888] [ 4]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZN5boost4math20spherical_harmonic_rIddNS0_8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEENS0_5tools12promote_argsIT_T0_ffffE4typeEjiS8_S9_RKT1_+0x3e)
>> [0x1150fb5]
>>
>> [br001:20888] [ 5]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZN5boost4math20spherical_harmonic_rIddEENS0_5tools12promote_argsIT_T0_ffffE4typeEjiS4_S5_+0x41)
>> [0x1150994]
>>
>> [br001:20888] [ 6]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZNK6aspect17InitialConditions20HarmonicPerturbationILi3EE19initial_temperatureERKN6dealii5PointILi3EdEE+0x3b5)
>> [0x11638f5]
>>
>> [br001:20888] [ 7]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZN6aspect9SimulatorILi3EE48set_initial_temperature_and_compositional_fieldsEv+0x355)
>> [0x12ad7f3]
>>
>> [br001:20888] [ 8]
>> /home/shangxin/aspect_public/aspect/build/aspect(_ZN6aspect9SimulatorILi3EE3runEv+0x392)
>> [0x13019e4]
>>
>> [br001:20888] [ 9]
>> /home/shangxin/aspect_public/aspect/build/aspect(main+0x606) [0x10b40b3]
>>
>> [br001:20888] [10] /lib64/libc.so.6(__libc_start_main+0xfd)
>> [0x7fdc1205ecdd]
>>
>> [br001:20888] [11] /home/shangxin/aspect_public/aspect/build/aspect()
>> [0x10b2329]
>>
>> [br001:20888] *** End of error message ***
>>
>> -----------------------------------------------------------------------
>>
>> mpirun noticed that process rank 0 with PID 20888 on node br001 exited on
>> signal 8 (Floating point exception).
>>
>> -----------------------------------------------------------------------
>>
>>
>> Here I used the public ASPECT version from git hub and didn't modify
>> anything. From my experience, in RELEASE mode, this FPE error doesn't matter
>> when I ran the code for only one time step but will cause the time-dependent
>> job to hang up at some time step. However, If I switch off the
>> "ASPECT_USE_FP_EXCEPTIONS" when compile ASPECT, this problem doesn't appear
>> any more.
>>
>> I further checked the harmonic_perturbation.cc code carefully and didn't
>> find any operations like division by zero. Currently I'm using the boost
>> version 1.49.0. I don't know whether this version has a bug in its spherical
>> harmonic functions.
>>
>> I wonder whether anyone else here working on spherical harmonics ran into
>> this error before (Rene and Jacky?). And which boost version are you using?
>>
>> Best,
>> Shangxin
>>
>>
>>
>> _______________________________________________
>> Aspect-devel mailing list
>> Aspect-devel at geodynamics.org
>> http://lists.geodynamics.org/cgi-bin/mailman/listinfo/aspect-devel
>
>



-- 
Timo Heister
http://www.math.clemson.edu/~heister/


More information about the Aspect-devel mailing list