[gmx-users] g_tcaf issue

Justin Lemkul jalemkul at vt.edu
Thu Dec 19 02:55:13 CET 2013



On 12/18/13 1:21 PM, Jones de Andrade wrote:
> Hi Justin.
>
> Thanks for the suggestion.
>
> Unfortunately, only today we could work on the problem again. We recompiled
> it with option -DCMAKE_BUILD_TYPE=DEBUG on the cmake step. After, we ran
> the gdb g_tcaf to get the following:
>
>> gdb g_tcaf_mpi
> GNU gdb (GDB) SUSE (7.3-0.6.1)
> Copyright (C) 2011 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html
>>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "x86_64-suse-linux".
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>...
> Reading symbols from
> /storage/home/taytyanne/bin/gromacs2/bin/g_tcaf_mpi...done.
> (gdb) run
> Starting program: /storage/home/taytyanne/bin/gromacs2/bin/g_tcaf_mpi
> Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
> Try: zypper install -C
> "debuginfo(build-id)=181860a35c8e9a0456dd6675f85c2eb0f062e956"
> Missing separate debuginfo for /lib64/libdl.so.2
> Try: zypper install -C
> "debuginfo(build-id)=3e4f6bfee9fdf77ca975b77b8c325347d9228bb8"
> Missing separate debuginfo for /lib64/librt.so.1
> Try: zypper install -C
> "debuginfo(build-id)=44612b93c19e6567318299411987b113d2387081"
> Missing separate debuginfo for /lib64/libpthread.so.0
> Try: zypper install -C
> "debuginfo(build-id)=09dae90d04b1e2e43758ce58845f026b4085aec9"
> [Thread debugging using libthread_db enabled]
> Missing separate debuginfo for /usr/lib64/libblas.so.3
> Try: zypper install -C
> "debuginfo(build-id)=685e344cfea9180ba1557a81cf584d7b1fe62eb4"
> Missing separate debuginfo for /usr/lib64/liblapack.so.3
> Try: zypper install -C
> "debuginfo(build-id)=9f4fafa64bbde4ad346f3791ffaf394daf297424"
> Missing separate debuginfo for /lib64/libm.so.6
> Try: zypper install -C
> "debuginfo(build-id)=e05f2e72f47391363a03eff3cde10ad4c007c045"
> Missing separate debuginfo for /lib64/libc.so.6
> Try: zypper install -C
> "debuginfo(build-id)=469835eb7eeb4aa3f653537c36a72810e01fb602"
> Missing separate debuginfo for /lib64/libgcc_s.so.1
> Try: zypper install -C
> "debuginfo(build-id)=fe7c25bfb3e605f9d6c1cb00b3c5f96ed95be6e5"
> Missing separate debuginfo for /usr/lib64/libgfortran.so.3
> Try: zypper install -C
> "debuginfo(build-id)=c141baedf020fb494dc72929af873205e06651f8"
> Missing separate debuginfo for /usr/lib64/libquadmath.so.0
> Try: zypper install -C
> "debuginfo(build-id)=35220c888c4243e2e3e2f11347ceb12236d3bc21"
>                           :-)  G  R  O  M  A  C  S  (-:
>
>                  Gravel Rubs Often Many Awfully Cauterized Sores
>
>                              :-)  VERSION 4.6.3  (-:
>
>          Contributions from Mark Abraham, Emile Apol, Rossen Apostolov,
>             Herman J.C. Berendsen, Aldert van Buuren, Pär Bjelkmar,
>       Rudi van Drunen, Anton Feenstra, Gerrit Groenhof, Christoph Junghans,
>          Peter Kasson, Carsten Kutzner, Per Larsson, Pieter Meulenhoff,
>             Teemu Murtola, Szilard Pall, Sander Pronk, Roland Schulz,
>                  Michael Shirts, Alfons Sijbers, Peter Tieleman,
>
>                 Berk Hess, David van der Spoel, and Erik Lindahl.
>
>         Copyright (c) 1991-2000, University of Groningen, The Netherlands.
>           Copyright (c) 2001-2012,2013, The GROMACS development team at
>          Uppsala University & The Royal Institute of Technology, Sweden.
>              check out http://www.gromacs.org for more information.
>
>           This program is free software; you can redistribute it and/or
>         modify it under the terms of the GNU Lesser General Public License
>          as published by the Free Software Foundation; either version 2.1
>               of the License, or (at your option) any later version.
>
>           :-)  /storage/home/taytyanne/bin/gromacs2/bin/g_tcaf_mpi  (-:
>
> Option     Filename  Type         Description
> ------------------------------------------------------------
>    -f       traj.trr  Input        Full precision trajectory: trr trj cpt
>    -s      topol.tpr  Input, Opt.  Structure+mass(db): tpr tpb tpa gro g96
> pdb
>    -n      index.ndx  Input, Opt.  Index file
>   -ot   transcur.xvg  Output, Opt. xvgr/xmgr file
>   -oa   tcaf_all.xvg  Output       xvgr/xmgr file
>    -o       tcaf.xvg  Output       xvgr/xmgr file
>   -of   tcaf_fit.xvg  Output       xvgr/xmgr file
>   -oc   tcaf_cub.xvg  Output, Opt. xvgr/xmgr file
>   -ov     visc_k.xvg  Output       xvgr/xmgr file
>
> Option       Type   Value   Description
> ------------------------------------------------------
> -[no]h       bool   no      Print help info and quit
> -[no]version bool   no      Print version info and quit
> -nice        int    19      Set the nicelevel
> -b           time   0       First frame (ps) to read from trajectory
> -e           time   0       Last frame (ps) to read from trajectory
> -dt          time   0       Only use frame when t MOD dt = first time (ps)
> -[no]w       bool   no      View output .xvg, .xpm, .eps and .pdb files
> -xvg         enum   xmgrace  xvg plot formatting: xmgrace, xmgr or none
> -[no]mol     bool   no      Calculate TCAF of molecules
> -[no]k34     bool   no      Also use k=(3,0,0) and k=(4,0,0)
> -wt          real   5       Exponential decay time for the TCAF fit weights
> -acflen      int    -1      Length of the ACF, default is half the number of
>                              frames
> -[no]normalize bool yes     Normalize ACF
> -P           enum   0       Order of Legendre polynomial for ACF (0
> indicates
>                              none): 0, 1, 2 or 3
> -fitfn       enum   none    Fit function: none, exp, aexp, exp_exp, vac,
>                              exp5, exp7, exp9 or erffit
> -ncskip      int    0       Skip this many points in the output file of
>                              correlation functions
> -beginfit    real   0       Time where to begin the exponential fit of the
>                              correlation function
> -endfit      real   -1      Time where to end the exponential fit of the
>                              correlation function, -1 is until the end
>
> Reading file topol.tpr, VERSION 4.6.3 (double precision)
> Reading file topol.tpr, VERSION 4.6.3 (double precision)
> Group     0 (         System) has 30000 elements
> Group     1 (          Other) has 30000 elements
> Group     2 (            BMI) has 25000 elements
> Group     3 (            ANI) has  5000 elements
> Select a group: 0
> Selected 0: 'System'
> trn version: GMX_trn_file (double precision)
> Last frame         -1 time    0.000
> Last frame         -1 time 4646.000
> Density = 1229.95 (kg/m^3)
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x00002aaaaca258d2 in *__strlen_sse42 () from /lib64/libc.so.6*
>
> (gdb) backtrace
> #0  0x00002aaaaca258d2 in __strlen_sse42 () from /lib64/libc.so.6
> #1  0x0000000000429689 in bputs (msg=0x7fffffffb610* "Not enough memory.
> Failed to calloc ld elements of size ld for "*, len=0x7fffffffb5a8,
>      s=0xffffffff80000001 <Address 0xffffffff80000001 out of bounds>, fld=0)
> at
> /storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/gmxlib/gmx_fatal.c:151
> #2  0x000000000042a297 in parse_printf_args (fmt=0xf87208 "Not enough
> memory. Failed to calloc %lld elements of size %lld for %s\n(called from
> file %s, line %d)",
>      ap=0x7fffffffc610, msg=0x7fffffffb610 "Not enough memory. Failed to
> calloc ld elements of size ld for ")
>      at
> /storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/gmxlib/gmx_fatal.c:472
> #3  0x000000000042a3d1 in gmx_fatal (f_errno=12, file=0xf871c0
> "/storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/gmxlib/smalloc.c",
> line=191,
>      fmt=0xf87208 "Not enough memory. Failed to calloc %lld elements of size
> %lld for %s\n(called from file %s, line %d)")
>      at
> /storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/gmxlib/gmx_fatal.c:495
> #4  0x0000000000426ea8 in save_calloc (name=0xf8438c "tcaf[k]",
> file=0xf84340
> "/storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/tools/gmx_tcaf.c",
> line=118,
>      nelem=18446744071562067969, elsize=4) at
> /storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/gmxlib/smalloc.c:191
> #5  0x00000000004190c0 in process_tcaf (nframes=1, dt=-nan(0x400000),
> nkc=4, tc=0x123e000, kfac=0x7fffffffcb40, rho=1229.94922, wt=5,
> fn_trans=0x0,
>      fn_tca=0x123d760 "tcaf_all.xvg", fn_tc=0x123d7a0 "tcaf.xvg",
> fn_tcf=0x123d7e0 "tcaf_fit.xvg", fn_cub=0x0, fn_vk=0x123d860 "visc_k.xvg",
> oenv=0x123d5d0)
>      at
> /storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/tools/gmx_tcaf.c:118
> #6  0x000000000041af6c in gmx_tcaf (argc=1, argv=0x7fffffffdae8) at
> /storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/tools/gmx_tcaf.c:489
> #7  0x0000000000418867 in main (argc=1, argv=0x7fffffffdae8) at
> /storage/home/taytyanne/src/gromacs/gromacs-4.6.3/src/tools/g_tcaf.c:52
> (gdb) quit
> A debugging session is active.
>
>      Inferior 1 [process 748478] will be killed.
>
> Quit anyway? (y or n) y
>>
>
> There are two strange things showing up here: first, it complains about
> "__strlen_sse42 () from /lib64/libc.so.6", which is not only a very well
> known library, but also the "more /proc/cpuinfo" clearly states:
>
> model name    : Intel(R) Xeon(R) CPU E7- 8837  @ 2.67GHz
> flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx
> pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl
> xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2
> ssse3 cx16 xtpr pdcm dca sse4_1 *sse4_2* x2apic popcnt lahf_lm ida arat epb
> dtherm tpr_shadow vnmi flexpriority ept vpid
>
> So, this processor does have sse4.2 instructions available. :(
>

The output does not suggest that __strlen_sse42 is problematic, merely that the 
way in which Gromacs is using it is causing it to fail.  The problem is 
upstream, it's just that __strlen_sse42 ultimately fails.

> Second, it complains about "Not enough memory. Failed to calloc ld elements
> of size ld for", but this for gdb usage was executed out of the queue,
> meaning it should have about 1 terabyte available!
>

There seems to be a small output bug that is preventing really useful numbers 
from being printed ("ld" formatting specifier rather than an actual number).

> Is this still worth a redmine issue? Or is there some sort of really stupid
> mistake for which I should already feel ashamed?
>

Please file a redmine issue.  Include the information from above and a set of 
files that will reproduce the issue.

-Justin

-- 
==================================================

Justin A. Lemkul, Ph.D.
Postdoctoral Fellow

Department of Pharmaceutical Sciences
School of Pharmacy
Health Sciences Facility II, Room 601
University of Maryland, Baltimore
20 Penn St.
Baltimore, MD 21201

jalemkul at outerbanks.umaryland.edu | (410) 706-7441

==================================================


More information about the gromacs.org_gmx-users mailing list