RE: NAMD Configuration file error

From: Jim Phillips (jim_at_ks.uiuc.edu)
Date: Thu Mar 07 2019 - 11:13:51 CST

For posterity, the error "tried before startup to read config file
parameter that was not set" basically means that there was an unknown Tcl
"command" with no arguments, that is interpreted as trying to access that
value in the unparsed configuration list. This feature supports, e.g.:

cutoff 12.0
pairlistdist [expr [cutoff] + 1.5]

In both lines "cutoff" is interpreted as a command, first to set the
parameter to 12.0 and then, without an argument, to access it.

The code that implements this doesn't validate the parameter names until
it reaches a "run" or "minimize" command, so any unrecognized command will
be checked against the previously set parameters and throw this error.

The error message for this case could easily be improved by adding
something like "unknown Tcl command or" to the beginning.

Jim

On Thu, 7 Mar 2019, Vermaas, Joshua wrote:

> In that directory, what do you get when you grep for the ++++? Or what is on line 26 of 1ca2_min.conf like the error message is telling you? I've never seen this before, so I suspect its something you added into your configuration file by mistake that is confusing the parser.
>
> -Josh
>
>
>
> On 2019-03-06 23:35:44-07:00 owner-namd-l_at_ks.uiuc.edu wrote:
>
> Hi everyone
> I am trying run a MD simulation on namd (a single node operation on a supercomputer.) However, I keep getting the following two error messages:
> Charm++: standalone mode (not using charmrun)
> Converse/Charm++ Commit ID: v6.8.2-0-g26d4bd8-namd-charm-6.8.2-build-2018-Jan-11-30463
> Warning> Randomization of virtual memory (ASLR) is turned on in the kernel, thread migration may not work! Run 'echo 0 > /proc/sys/kernel/randomize_va_space' as root to disable it, or try running with '+isomalloc_sync'.
> Warning> net-* deprecated (Charm >= 6.8.0), please use verbs-*
> Charm++> scheduler running in netpoll mode.
> Charm++ communication thread will sleep due to single-process run.
> CharmLB> Load balancer assumes all CPUs are same.
> Charm++> cpu affinity enabled.
> Charm++> Running on 1 unique compute nodes (32-way SMP).
> Charm++> cpu topology info is gathered in 0.001 seconds.
> Info: Built with CUDA version 9010
> Did not find +devices i,j,k,... argument, using all
> Pe 5 physical rank 5 will use CUDA device of pe 4
> Pe 7 physical rank 7 will use CUDA device of pe 8
> Pe 11 physical rank 11 will use CUDA device of pe 12
> Pe 1 physical rank 1 will use CUDA device of pe 2
> Pe 6 physical rank 6 will use CUDA device of pe 4
> Pe 0 physical rank 0 will use CUDA device of pe 2
> Pe 9 physical rank 9 will use CUDA device of pe 8
> Pe 3 physical rank 3 will use CUDA device of pe 2
> Pe 13 physical rank 13 will use CUDA device of pe 12
> Pe 10 physical rank 10 will use CUDA device of pe 8
> Pe 12 physical rank 12 binding to CUDA device 3 on c37.chundoong: 'GeForce GTX 1080' Mem: 8119MB Rev: 6.1 PCI: 0:84:0
> Pe 2 physical rank 2 binding to CUDA device 0 on c37.chundoong: 'GeForce GTX 1080' Mem: 8119MB Rev: 6.1 PCI: 0:2:0
> Pe 8 physical rank 8 binding to CUDA device 2 on c37.chundoong: 'GeForce GTX 1080' Mem: 8119MB Rev: 6.1 PCI: 0:83:0
> Pe 4 physical rank 4 binding to CUDA device 1 on c37.chundoong: 'GeForce GTX 1080' Mem: 8119MB Rev: 6.1 PCI: 0:3:0
> Info: NAMD 2.13 for Linux-x86_64-ibverbs-smp-CUDA
> Info:
> Info: Please visit http://www.ks.uiuc.edu/Research/namd/
> Info: for updates, documentation, and support information.
> Info:
> Info: Please cite Phillips et al., J. Comp. Chem. 26:1781-1802 (2005)
> Info: in all publications reporting results obtained with NAMD.
> Info:
> Info: Based on Charm++/Converse 60800 for net-linux-x86_64-ibverbs-smp-iccstatic
> Info: Built Fri Nov 9 14:45:54 CST 2018 by jim on ganymede.ks.uiuc.edu<http://ganymede.ks.uiuc.edu>
> Info: 1 NAMD 2.13 Linux-x86_64-ibverbs-smp-CUDA 14 c37.chundoong user330
> Info: Running on 14 processors, 1 nodes, 1 physical nodes.
> Info: CPU topology information available.
> Info: Charm++/Converse parallel runtime startup completed at 2.84055 s
> CkLoopLib is used in SMP with a simple dynamic scheduling (converse-level notification) but not using node-level queue
> Info: 1239.88 MB of memory in use based on /proc/self/stat
> Info: Configuration file is ./1ca2_min.conf
> Info: Changed directory to .
> TCL: tried before startup to read config file parameter that was not set
> FATAL ERROR: tried before startup to read config file parameter that was not set
> while executing
> "++++"
> (file "1ca2_min.conf" line 26)
> [0] Stack Traceback:
> [0:0] [0x4fc92c]
> [0:1] [0x519450]
> [0:2] __libc_start_main+0xf5 [0x7fed1e106b15]
> [0:3] [0x4124e9]
> [0] Stack Traceback:
> [0:0] [0x4fc92c]
> [0:1] [0x519450]
> [0:2] __libc_start_main+0xf5 [0x7fed1e106b15]
> [0:3] [0x4124e9]
> Abort (core dumped)
> -------------------------------------------------------
> Primary job terminated normally, but 1 process returned
> a non-zero exit code.. Per user-direction, the job has been aborted.
> -------------------------------------------------------
> --------------------------------------------------------------------------
> mpirun detected that one or more processes exited with non-zero status, thus causing
> the job to be terminated. The first process to do so was:
> Process name: [[10251,1],0]
> Exit code: 134
> --------------------------------------------------------------------------
> ------------- Processor 0 Exiting: Called CmiAbort ------------
> Reason: FATAL ERROR: tried before startup to read config file parameter that was not set
> while executing
> "++++"
> (file "1ca2_min.conf" line 26)
> Charm++ fatal error:
> FATAL ERROR: tried before startup to read config file parameter that was not set
> while executing
> "++++"
> (file "1ca2_min.conf" line 26)
> The bash script that I am running is: ./dir/namd2 +p14 +setcpuaffiinity ./config
> I am running the job in the same directory that my configuration file is in. How can I resolve this error?
> Thanks
>

This archive was generated by hypermail 2.1.6 : Thu Dec 31 2020 - 23:17:10 CST