Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memory corruption with certain groups in index file #1

Open
rsexton2 opened this issue Aug 13, 2020 · 3 comments
Open

Memory corruption with certain groups in index file #1

rsexton2 opened this issue Aug 13, 2020 · 3 comments

Comments

@rsexton2
Copy link

rsexton2 commented Aug 13, 2020

I am encountering a memory corruption error when trying to run analysis on a group of lipids. The index file has three groups for the membrane (POPE, POPG, POPE+POPG) and all analyses return the memory corruption error when selecting the POPG or POPG+POPE groups, however the analyses work for the POPE group.

I compiled with gromacs 4.6.2 and fftw 3.3.7.

Reading frame 0 time 0.000 *** Error in ../opt/g_lomepro/g_lomepro_v1.0.2': free(): invalid next size (normal): 0x0000000000a0a890 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777f5)[0x7f1389c3e7f5]
/lib/x86_64-linux-gnu/libc.so.6(+0x8038a)[0x7f1389c4738a]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f1389c4b58c]
../opt/g_lomepro/g_lomepro_v1.0.2[0x40e92f]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f1389be7840]
../opt/g_lomepro/g_lomepro_v1.0.2[0x401349]
======= Memory map: ========
00400000-00427000 r-xp 00000000 00:35 35256648759 /nfs/homes/rsexton/opt/g_lomepro/g_lomepro_v1.0.2
00626000-00627000 r--p 00026000 00:35 35256648759 /nfs/homes/rsexton/opt/g_lomepro/g_lomepro_v1.0.2
00627000-00628000 rw-p 00027000 00:35 35256648759 /nfs/homes/rsexton/opt/g_lomepro/g_lomepro_v1.0.2
009ee000-00a18000 rw-p 00000000 00:00 0 [heap]
7f1380000000-7f1380021000 rw-p 00000000 00:00 0
7f1380021000-7f1384000000 ---p 00000000 00:00 0
7f1386963000-7f1386b0e000 rw-p 00000000 00:00 0
7f1386b0e000-7f1386d8d000 rw-p 00000000 00:00 0
7f1386e19000-7f1387934000 rw-p 00000000 00:00 0
7f1387934000-7f1387972000 r-xp 00000000 08:51 12715666 /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
7f1387972000-7f1387b71000 ---p 0003e000 08:51 12715666 /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
7f1387b71000-7f1387b72000 r--p 0003d000 08:51 12715666 /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
7f1387b72000-7f1387b73000 rw-p 0003e000 08:51 12715666 /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
7f1387b73000-7f1387bb0000 r-xp 00000000 08:51 15467402 /usr/lib/atlas-base/atlas/libblas.so.3.0
7f1387bb0000-7f1387db0000 ---p 0003d000 08:51 15467402 /usr/lib/atlas-base/atlas/libblas.so.3.0
7f1387db0000-7f1387db1000 rw-p 0003d000 08:51 15467402 /usr/lib/atlas-base/atlas/libblas.so.3.0
7f1387db1000-7f1387dc7000 r-xp 00000000 08:51 24510991 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f1387dc7000-7f1387fc6000 ---p 00016000 08:51 24510991 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f1387fc6000-7f1387fc7000 rw-p 00015000 08:51 24510991 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f1387fc7000-7f13880f0000 r-xp 00000000 08:51 12723156 /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0
7f13880f0000-7f13882ef000 ---p 00129000 08:51 12723156 /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0
7f13882ef000-7f13882f0000 r--p 00128000 08:51 12723156 /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0
7f13882f0000-7f13882f2000 rw-p 00129000 08:51 12723156 /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0
7f13882f2000-7f1388689000 r-xp 00000000 08:51 15467403 /usr/lib/atlas-base/libatlas.so.3.0
7f1388689000-7f1388889000 ---p 00397000 08:51 15467403 /usr/lib/atlas-base/libatlas.so.3.0
7f1388889000-7f1388890000 rw-p 00397000 08:51 15467403 /usr/lib/atlas-base/libatlas.so.3.0
7f1388890000-7f13888b1000 r-xp 00000000 08:51 15467404 /usr/lib/atlas-base/libcblas.so.3.0
7f13888b1000-7f1388ab1000 ---p 00021000 08:51 15467404 /usr/lib/atlas-base/libcblas.so.3.0
7f1388ab1000-7f1388ab2000 rw-p 00021000 08:51 15467404 /usr/lib/atlas-base/libcblas.so.3.0
7f1388ab2000-7f1388ab5000 r-xp 00000000 08:51 24510799 /lib/x86_64-linux-gnu/libdl-2.23.so
7f1388ab5000-7f1388cb4000 ---p 00003000 08:51 24510799 /lib/x86_64-linux-gnu/libdl-2.23.so
7f1388cb4000-7f1388cb5000 r--p 00002000 08:51 24510799 /lib/x86_64-linux-gnu/libdl-2.23.so
7f1388cb5000-7f1388cb6000 rw-p 00003000 08:51 24510799 /lib/x86_64-linux-gnu/libdl-2.23.so
7f1388cb6000-7f1389295000 r-xp 00000000 08:51 15467401 /usr/lib/atlas-base/atlas/liblapack.so.3.0
7f1389295000-7f1389495000 ---p 005df000 08:51 15467401 /usr/lib/atlas-base/atlas/liblapack.so.3.0
7f1389495000-7f138949a000 rw-p 005df000 08:51 15467401 /usr/lib/atlas-base/atlas/liblapack.so.3.0
7f138949a000-7f13894ba000 r-xp 00000000 08:51 15467399 /usr/lib/atlas-base/libf77blas.so.3.0
7f13894ba000-7f13896b9000 ---p 00020000 08:51 15467399 /usr/lib/atlas-base/libf77blas.so.3.0
7f13896b9000-7f13896ba000 rw-p 0001f000 08:51 15467399 /usr/lib/atlas-base/libf77blas.so.3.0
7f13896ba000-7f13899ac000 r-xp 00000000 00:3c 13373086725 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3f.so.3.5.7
7f13899ac000-7f1389bab000 ---p 002f2000 00:3c 13373086725 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3f.so.3.5.7
7f1389bab000-7f1389bc6000 r--p 002f1000 00:3c 13373086725 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3f.so.3.5.7
7f1389bc6000-7f1389bc7000 rw-p 0030c000 00:3c 13373086725 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3f.so.3.5.7
7f1389bc7000-7f1389d87000 r-xp 00000000 08:51 24510951 /lib/x86_64-linux-gnu/libc-2.23.so
7f1389d87000-7f1389f87000 ---p 001c0000 08:51 24510951 /lib/x86_64-linux-gnu/libc-2.23.so
7f1389f87000-7f1389f8b000 r--p 001c0000 08:51 24510951 /lib/x86_64-linux-gnu/libc-2.23.so
7f1389f8b000-7f1389f8d000 rw-p 001c4000 08:51 24510951 /lib/x86_64-linux-gnu/libc-2.23.so
7f1389f8d000-7f1389f91000 rw-p 00000000 00:00 0
7f1389f91000-7f1389fa9000 r-xp 00000000 08:51 24510959 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f1389fa9000-7f138a1a8000 ---p 00018000 08:51 24510959 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f138a1a8000-7f138a1a9000 r--p 00017000 08:51 24510959 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f138a1a9000-7f138a1aa000 rw-p 00018000 08:51 24510959 /lib/x86_64-linux-gnu/libpthread-2.23.so
7f138a1aa000-7f138a1ae000 rw-p 00000000 00:00 0
7f138a1ae000-7f138a1cf000 r-xp 00000000 08:51 12721565 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
7f138a1cf000-7f138a3ce000 ---p 00021000 08:51 12721565 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
7f138a3ce000-7f138a3cf000 r--p 00020000 08:51 12721565 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
7f138a3cf000-7f138a3d0000 rw-p 00021000 08:51 12721565 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
7f138a3d0000-7f138a68e000 r-xp 00000000 00:3c 13373086729 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3.so.3.5.7
7f138a68e000-7f138a88d000 ---p 002be000 00:3c 13373086729 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3.so.3.5.7
7f138a88d000-7f138a8a8000 r--p 002bd000 00:3c 13373086729 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3.so.3.5.7
7f138a8a8000-7f138a8a9000 rw-p 002d8000 00:3c 13373086729 /nfs/packages/opt/Linux_x86_64/fftw3/3.3.7/gnu-5/lib/libfftw3.so.3.5.7
7f138a8a9000-7f138a9b1000 r-xp 00000000 08:51 24510972 /lib/x86_64-linux-gnu/libm-2.23.so
7f138a9b1000-7f138abb0000 ---p 00108000 08:51 24510972 /lib/x86_64-linux-gnu/libm-2.23.so
7f138abb0000-7f138abb1000 r--p 00107000 08:51 24510972 /lib/x86_64-linux-gnu/libm-2.23.so
7f138abb1000-7f138abb2000 rw-p 00108000 08:51 24510972 /lib/x86_64-linux-gnu/libm-2.23.so
7f138abb2000-7f138b0d2000 r-xp 00000000 00:35 4821786366 /nfs/homes/rsexton/opt/gromacs-4.6.2/lib/libgmx.so.8
7f138b0d2000-7f138b2d1000 ---p 00520000 00:35 4821786366 /nfs/homes/rsexton/opt/gromacs-4.6.2/lib/libgmx.so.8
7f138b2d1000-7f138b2d7000 r--p 0051f000 00:35 4821786366 /nfs/homes/rsexton/opt/gromacs-4.6.2/lib/libgmx.so.8
7f138b2d7000-7f138b2ec000 rw-p 00525000 00:35 4821786366 /nfs/homes/rsexton/opt/gromacs-4.6.2/lib/libgmx.so.8
7f138b2ec000-7f138b2ed000 rw-p 00000000 00:00 0
7f138b2ed000-7f138b313000 r-xp 00000000 08:51 24511084 /lib/x86_64-linux-gnu/ld-2.23.so
7f138b3d4000-7f138b4fb000 rw-p 00000000 00:00 0
7f138b510000-7f138b512000 rw-p 00000000 00:00 0
7f138b512000-7f138b513000 r--p 00025000 08:51 24511084 /lib/x86_64-linux-gnu/ld-2.23.so
7f138b513000-7f138b514000 rw-p 00026000 08:51 24511084 /lib/x86_64-linux-gnu/ld-2.23.so
7f138b514000-7f138b515000 rw-p 00000000 00:00 0
7ffe7669a000-7ffe766bc000 rw-p 00000000 00:00 0 [stack]
7ffe7677b000-7ffe7677e000 r--p 00000000 00:00 0 [vvar]
7ffe7677e000-7ffe76780000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
Aborted (core dumped)
`

@vgapsys
Copy link
Owner

vgapsys commented Aug 14, 2020

I can see two reasons for this to occur:

  1. the issue might be in the index group used for POPE+POPG if the selections representing each lipid type contain different number of atoms. g_lomepro expects an index file where POPE and POPG would be represented by equivalent number of atoms. A good choice to test if this is an issue, would be to use only phosphorus atoms (or phosphate group) as a selection to represent every lipid.
    NOTE: this consideration is only valid for the "master" branch g_lomepro. The "develop" branch version can deal with the different lipid species without the requirement of equivalent atom number.

  2. another source of error could be in setting the -lip_num option. It is important to provide in -lip_num the number of lipids that is selected for analysis.

@rsexton2
Copy link
Author

I have compiled the development version and the analyses work for the groups individually with the correct number of lipids provided (POPE 340, POPG 85) but when trying to use the group for all lipids (425 in all) I get another memory corruption error. If I use the group for all lipids but with the wrong lip_num (85 for example) it doesn't crash with an error, but other options (such as lip_num 424) also cause the error.

@vgapsys
Copy link
Owner

vgapsys commented Aug 19, 2020

The develop version is not yet well documented, but the command line for two lipid species would require setting the flags as follows: -lipGroup_num 2 -lip_num "340 85"
Afterwards, you will be prompted to select lipid group for POPE and later for POPG separately.

This independent lipid selection in the "develop" branch only is supported for the thickness, apl and lipid density calculations so far.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants