Running on linux-64 (Ubuntu 15.04) using AMD OpenCL and OpenMM master, FAHBench detects NaNs in the positions, but hangs while throwing an exception.
I built in debug mode with the some modifications to print "NaNs detected!" right before the throw, and run gdb --args ~/opt/fahbench-dev/bin/FAHBench-cmd --nan-check 1
.
$ gdb --args ~/opt/fahbench-dev/bin/FAHBench-cmd --nan-check 1
GNU gdb (Ubuntu 7.9-1ubuntu1) 7.9
Copyright (C) 2015 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-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /home/rmcgibbo/opt/fahbench-dev/bin/FAHBench-cmd...done.
(gdb) run
Starting program: /home/rmcgibbo/opt/fahbench-dev/bin/FAHBench-cmd --nan-check 1
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
FAHBench Simulation
-----------------
Plugin directory: "/home/rmcgibbo/opt/fahbench-dev/lib/plugins"
Work unit: dhfr
WU Name: Dihydrofolate reductase
WU Description: A common system for benchmarking molecular dynamics
System XML: /home/rmcgibbo/opt/fahbench-dev/share/fahbench/workunits/dhfr/system.xml
Integrator XML: /home/rmcgibbo/opt/fahbench-dev/share/fahbench/workunits/dhfr/integrator.xml
State XML: /home/rmcgibbo/opt/fahbench-dev/share/fahbench/workunits/dhfr/state.xml
Steps: 9000
Device ID 0; Platform OpenCL; Platform ID 0
Loading plugins from plugin directory
Number of registered plugins: 3
Deserializing system...
Deserializing state...
Deserializing integrator...
Creating context...
Checking for accuracy...
Creating reference context...
Comparing forces and energy...
Starting Benchmark
NaNs detected!
[5 seconds later, hit Ctrl-C]
^C[New Thread 0x7fffebe7f700 (LWP 13210)]
[New Thread 0x7ffff0e9a700 (LWP 13209)]
Program received signal SIGINT, Interrupt.
0x00007ffff7debc08 in tls_get_addr_tail (ti=0x7ffff74d0398, dtv=0x7ffff7fce050, the_map=0x7ffff7ff5a60) at dl-tls.c:767
767 dl-tls.c: No such file or directory.
(gdb) where
#0 0x00007ffff7debc08 in tls_get_addr_tail (ti=0x7ffff74d0398, dtv=0x7ffff7fce050, the_map=0x7ffff7ff5a60) at dl-tls.c:767
#1 0x00007ffff72370dc in __cxa_get_globals () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#2 0x00007ffff72380f3 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff7b57edc in StateTests::checkForNans (state=...) at /home/rmcgibbo/projects/fahbench/fahbench/StateTests.cpp:36
#4 0x00007ffff7b66e74 in Simulation::benchmark (this=0x7fffffffc400, context=..., update=...) at /home/rmcgibbo/projects/fahbench/fahbench/Simulation.cpp:141
#5 0x00007ffff7b667ff in Simulation::run (this=0x7fffffffc400, update=...) at /home/rmcgibbo/projects/fahbench/fahbench/Simulation.cpp:112
#6 0x000000000044dbc0 in main (argc=3, argv=0x7fffffffc8c8) at /home/rmcgibbo/projects/fahbench/fahbench/cmd/cmd-main.cpp:193