Runtime error

Hi there,

I’m getting quite a strange runtime error in my code which has just occurred today after it has been working fine for days. The code compiles fine but when I run it either gets right to the end of execution (just before execution completes) and prints this…

*** glibc detected *** ./muse.exe: free(): invalid next size (fast): 0x0000000014afa620 ***
======= Backtrace: =========
/lib64/libc.so.6[0x329627245f]
/lib64/libc.so.6(cfree+0x4b)[0x32962728bb]
./muse.exe[0x463f68]
======= Memory map: ========
00400000-00565000 r-xp 00000000 fd:00 364249659                          /home/mbdx6pn2/work/int_unroll_ser/serial_version/muse.exe
00764000-00b68000 rwxp 00164000 fd:00 364249659                          /home/mbdx6pn2/work/int_unroll_ser/serial_version/muse.exe
00b68000-0632e000 rwxp 00b68000 00:00 0 
14af7000-14d7a000 rwxp 14af7000 00:00 0                                  [heap]
3295e00000-3295e1c000 r-xp 00000000 fd:00 72253453                       /lib64/ld-2.5.so
329601b000-329601c000 r-xp 0001b000 fd:00 72253453                       /lib64/ld-2.5.so
329601c000-329601d000 rwxp 0001c000 fd:00 72253453                       /lib64/ld-2.5.so
3296200000-329634e000 r-xp 00000000 fd:00 72253457                       /lib64/libc-2.5.so
329634e000-329654e000 ---p 0014e000 fd:00 72253457                       /lib64/libc-2.5.so
329654e000-3296552000 r-xp 0014e000 fd:00 72253457                       /lib64/libc-2.5.so
3296552000-3296553000 rwxp 00152000 fd:00 72253457                       /lib64/libc-2.5.so
3296553000-3296558000 rwxp 3296553000 00:00 0 
3296600000-3296682000 r-xp 00000000 fd:00 72253460                       /lib64/libm-2.5.so
3296682000-3296881000 ---p 00082000 fd:00 72253460                       /lib64/libm-2.5.so
3296881000-3296882000 r-xp 00081000 fd:00 72253460                       /lib64/libm-2.5.so
3296882000-3296883000 rwxp 00082000 fd:00 72253460                       /lib64/libm-2.5.so
3296a00000-3296a02000 r-xp 00000000 fd:00 72253463                       /lib64/libdl-2.5.so
3296a02000-3296c02000 ---p 00002000 fd:00 72253463                       /lib64/libdl-2.5.so
3296c02000-3296c03000 r-xp 00002000 fd:00 72253463                       /lib64/libdl-2.5.so
3296c03000-3296c04000 rwxp 00003000 fd:00 72253463                       /lib64/libdl-2.5.so
3296e00000-3296e16000 r-xp 00000000 fd:00 72253478                       /lib64/libpthread-2.5.so
3296e16000-3297015000 ---p 00016000 fd:00 72253478                       /lib64/libpthread-2.5.so
3297015000-3297016000 r-xp 00015000 fd:00 72253478                       /lib64/libpthread-2.5.so
3297016000-3297017000 rwxp 00016000 fd:00 72253478                       /lib64/libpthread-2.5.so
3297017000-329701b000 rwxp 3297017000 00:00 0 
3297200000-3297214000 r-xp 00000000 fd:00 17225132                       /usr/lib64/libz.so.1.2.3
3297214000-3297413000 ---p 00014000 fd:00 17225132                       /usr/lib64/libz.so.1.2.3
3297413000-3297414000 rwxp 00013000 fd:00 17225132                       /usr/lib64/libz.so.1.2.3
3299a00000-3299a07000 r-xp 00000000 fd:00 72253493                       /lib64/librt-2.5.so
3299a07000-3299c07000 ---p 00007000 fd:00 72253493                       /lib64/librt-2.5.so
3299c07000-3299c08000 r-xp 00007000 fd:00 72253493                       /lib64/librt-2.5.so
3299c08000-3299c09000 rwxp 00008000 fd:00 72253493                       /lib64/librt-2.5.so
329c600000-329c60d000 r-xp 00000000 fd:00 72253482                       /lib64/libgcc_s-4.1.2-20080825.so.1
329c60d000-329c80d000 ---p 0000d000 fd:00 72253482                       /lib64/libgcc_s-4.1.2-20080825.so.1
329c80d000-329c80e000 rwxp 0000d000 fd:00 72253482                       /lib64/libgcc_s-4.1.2-20080825.so.1
329d600000-329d6e6000 r-xp 00000000 fd:00 17206420                       /usr/lib64/libstdc++.so.6.0.8
329d6e6000-329d8e5000 ---p 000e6000 fd:00 17206420                       /usr/lib64/libstdc++.so.6.0.8
329d8e5000-329d8eb000 r-xp 000e5000 fd:00 17206420                       /usr/lib64/libstdc++.so.6.0.8
329d8eb000-329d8ee000 rwxp 000eb000 fd:00 17206420                       /usr/lib64/libstdc++.so.6.0.8
329d8ee000-329d900000 rwxp 329d8ee000 00:00 0 
2b7d25c8b000-2b7d25c8d000 rwxp 2b7d25c8b000 00:00 0 
2b7d25c8d000-2b7d25ced000 r-xp 00000000 fd:00 66324753                   /opt/pgi/linux86-64/2011/cuda/3.2/lib64/libcudart.so.3.2.16
2b7d25ced000-2b7d25dec000 ---p 00060000 fd:00 66324753                   /opt/pgi/linux86-64/2011/cuda/3.2/lib64/libcudart.so.3.2.16
2b7d25dec000-2b7d25dee000 rwxp 0005f000 fd:00 66324753                   /opt/pgi/linux86-64/2011/cuda/3.2/lib64/libcudart.so.3.2.16
2b7d25df0000-2b7d25df1000 rwxp 2b7d25df0000 00:00 0 
2b7d25e15000-2b7d25e19000 rwxp 2b7d25e15000 00:00 0 
2b7d25e19000-2b7d25e1a000 r-xs fc009000 00:11 5230                       /dev/nvidia0
2b7d25e40000-2b7d265cd000 r-xp 00000000 fd:00 17230334                   /usr/lib64/libcuda.so.260.19.36
2b7d265cd000-2b7d267cc000 ---p 0078d000 fd:00 17230334                   /usr/lib64/libcuda.so.260.19.36
2b7d267cc000-2b7d26898000 rwxp 0078c000 fd:00 17230334                   /usr/lib64/libcuda.so.260.19.36
2b7d26898000-2b7d268bc000 rwxp 2b7d26898000 00:00 0 
2b7d268bc000-2b7d269bc000 rwxs 945a9000 00:11 5230                       /dev/nvidia0
2b7d269bc000-2b7d26abc000 rwxs bcc8a000 00:11 5230                       /dev/nvidia0
2b7d26abc000-2b7d26bbc000 rwxs 8915b000 00:11 5230                       /dev/nvidia0
2b7d26bbc000-2b7d26cbc000 rwxs 2280b000 00:11 5230                       /dev/nvidia0
2b7d26cbc000-2b7d26dbc000 rwxs 4677e000 00:11 5230                       /dev/nvidia0
2b7d26dbc000-2b7d271be000 rwxs 90e94000 00:11 5230                       /dev/nvidia0
2b7d271be000-2b7d271bf000 rwxs 85771000 00:11 5230                       /dev/nvidia0
2b7d271bf000-2b7d271c0000 rwxs dfee6000 00:11 5230                       /dev/nvidia0
2b7d271c0000-2b7d275c2000 rwxs 70647000 00:11 5230                       /dev/nvidia0
2b7d275c2000-2b7d275c3000 rwxs 90d52000 00:11 5230                       /dev/nvidia0
2b7d275c3000-2b7d275c4000 rwxs dfee7000 00:11 5230                       /dev/nvidia0
2b7d275c4000-2b7d279c6000 rwxs 85404000 00:11 5230                       /dev/nvidia0
2b7d279c6000-2b7d279c7000 rwxs 1db72000 00:11 5230                       /dev/nvidia0
2b7d279c7000-2b7d279c8000 rwxs dfee8000 00:11 5230                       /dev/nvidia0
2b7d279c8000-2b7d27a1c000 rwxp 2b7d279c8000 00:00 0 
2b7d27a1c000-2b7d27b1c000 rwxs 56ee2000 00:11 5230                       /dev/nvidia0
2b7d27b1c000-2b7d27c1c000 rwxs 86d5e000 00:11 5230                       /dev/nvidia0
2b7d27c1c000-2b7d27d1c000 rwxs 9f903000 00:11 5230                       /dev/nvidia0
2b7d27d1c000-2b7d27e1c000 rwxs 35a75000 00:11 5230                       /dev/nvidia0
2b7d27e1c000-2b7d27f1d000 rwxp 2b7d27e1c000 00:00 0 
7fffe7711000-7fffe7726000 rwxp 7ffffffe9000 00:00 0                      [stack]
7fffe77fc000-7fffe7800000 r-xp 7fffe77fc000 00:00 0                      [vdso]
ffffffffff600000-ffffffffffe00000 ---p 00000000 00:00 0                  [vsyscall]
Aborted

or it prints this runtime error before any execution appears to have taken place…

0: ALLOCATE: 18446744072581893536 bytes requested; not enough memory

My code had several allocate statements but they were all working fine up until today and I’ve checked the extents of the allocatable arrays and they all seem to be in order.

Does anyone have any idea what could be the problem?

Cheers,
Crip_crop

Does anyone have any idea what could be the problem?

I’d check to see if you have a UMR (uninitialized memory read) by running your code through Valgrind (http://www.valgrind.org).

  • Mat