Coder Social home page Coder Social logo

thunder's People

Contributors

lemonade7296 avatar lx-dragonxiao avatar narutowang avatar netheril96 avatar paradoxstar avatar r3alloc avatar rensushan avatar small-gh avatar thucryoem avatar thuem avatar zarrathustra avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

thunder's Issues

Thunder run on GPU cluster: parameter, benchmark, scratch

Now we have a GPU cluster which contains 4X 4-2080Ti GPU nodes. The CPU is E5-2650(2x12 cores) and Physical Memory is 256G. We have used NVIDIA driver 410.93, CUDA-9.2, NCCL 2.4.2 for THUNDER. We are trying to run THUNDER on our GPU cluster. We have so many questions.

  1. How should we specify processes and threads? It said that on a cluster, we should specify one node with one process, and the thread number set as the number of CPU cores. However, when we only want to use 2 nodes to run THUNDER, (and other two nodes were used by others), we found that mpirun -np 2 cannnot work. Would more process speed up the job running? Or only more threads speed up it? And also, please give us suggestions on threads setting if we want to run THUNDER on 2 nodes.
  2. We want to run a benchmark to test if THUNDER installation have no problem. Now I used relion benchmark data (EMPAIR 10028 Ribosome, 51G, ~10K Particles). How long should such a dataset process by THUNDER on one of our nodes? I have also found there is a THUNDER-benchmark data on GitHub however I cannot download the data set. Should I use that dataset to run THUNDER benchmark?
  3. Our cluster have SSD scrach on each machine, not shared. On Relion and cryosparc v2, we can set scrach dir on local scrach directory. However, I didn't find the place to set local scratch or open it. Could I use local scrach? If I could use, how could I use it?
  4. I found THUNDER will copy my benchmark data to physical memory. However, when there are milions of particles, it will run out of physical memory and cause job failed (Happened on our old workstation with only 128G to run EMPAIR 10028 Particles). If I don't want to write particles into phsical memory, how could I do?
    Thanks!

THUNDER runs on cpu cluster

Hi, specialist. I was trying to run THUNDER on our cpu cluster, which contains 15 nodes and each node has 20 cores. we use PBS as our Job scheduling system. The submitted job works fine with other programs like relion, however, It came to some issues with THUNDER. Below are our original relion job script and THUNDER script.

relion:

#!/bin/bash
###Inherit all current environment variables
#PBS -V
###Job name
#PBS -N Class2D/run1
###Keep Output and Error
#PBS -k eo
###Queue name
#PBS -q quick
###Specify the number of nodes and thread (ppn) for your job.
#PBS -l nodes=15:ppn=20
#################################
###Switch to the working directory;
cd $PBS_O_WORKDIR

#Environment
source ~/.bashrc

NP=wc -l < $PBS_NODEFILE

###Run:
echo "starting RELION..."
mpirun --bynode -np 300 which relion_refine_mpi --o Class2D/job001/run --i particles.star --dont_combine_weights_via_disc --pool 7 --ctf --iter 30 --tau2_fudge 2 --particle_diameter 420 --K 150 --flatten_solvent --zero_mask --oversampling 1 --psi_step 12 --offset_range 15 --offset_step 2 --norm --scale --j 1
echo "done"

THUNDER

#!/bin/bash
###Inherit all current environment variables
#PBS -V
###Job name
#PBS -N Class2D/run1
###Keep Output and Error
#PBS -k eo
###Queue name
#PBS -q quick
###Specify the number of nodes and thread (ppn) for your job.
#PBS -l nodes=10:ppn=20
#################################
###Switch to the working directory;
cd $PBS_O_WORKDIR

#Environment
source ~/.bashrc

NP=wc -l < $PBS_NODEFILE

###Run:
echo "starting THUNDER"
mpirun --bynode -np 200 thunder_cpu demo.json
echo "done"

The THUNDER job works only on the master node, and the error message says it did not recognize the bynode argument, but it works fine with relion job without this message. Does anyone have ideas?

Thanks for your help,
Shuangbo

Crash during 1st iteration of GPU refinement

Hello, I was able to compile THUNDER using CentOS 7.4, GCC 5.3.1, CUDA 9.0, NCCL 2.3.7-2+cuda9.0, OpenMPI 1.10.6, and only using compute 6.1 sm 6.1 as I have 1080 Ti cards. I needed to use cmake3 .. -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-9.0 -DNCCL_INCLUDES=/usr/include/ -DNCCL_LIBRARIES=/usr/lib64/libnccl.so -DCMAKE_BUILD_TYPE=debug for the compilation to succeed (presumably due to the search path being a bit different on CentOS than Ubuntu). I have tested both debug and release build types.

Here is the last part of the thunder.log:

08/01/2019 07:39:50.064 INFO  [LOGGER_ROUND] A_LEAD: Inserting High Probability 2D Images into Reconstructor
08/01/2019 07:39:53.487 INFO  [LOGGER_ROUND] B_LEAD: Inserting High Probability 2D Images into Reconstructor
08/01/2019 07:39:54.318 INFO  [trivial] Prepare Parameter for Tranlate and Insert.
08/01/2019 07:39:56.454 INFO  [trivial] Prepare Parameter for Tranlate and Insert.

On standard error mpirun informs me a process has exited with exit code 1. My JSON file is here (extension changed to .txt for Github). I ran thunder via mpirun -n 3 thunder demo.json. Only the Meta_Round_000.thu file was created.

Please let me know if there is anything specific I can do to help determine the issue!

Weired behavior when start running

Dear developers,
I have two problem
problems.tar.gz

s while running thunder_gpu, the installation process went well, and when I start run refinement jobs, I have encountered two problems, the command line goes like:
mpirun -n 3 thunder_gpu demo_3D.json; for both problems.
and the output of problem 1 goes like:
thunder_gpu: /home/linhua/Programs/THUNDER_self_compile/external/boost/boost/container/vector.hpp:1581: boost::container::vector<T, Allocator>::reference boost::container::vector<T, Allocator>::operator[](boost::container::vector<T, Allocator>::size_type) [with T = Projector; Allocator = boost::container::new_allocator; boost::container::vector<T, Allocator>::reference = Projector&; boost::container::vector<T, Allocator>::size_type = long unsigned int]: Assertion this->m_holder.m_size > n' failed. [Guinevere:34959] *** Process received signal *** [Guinevere:34959] Signal: Aborted (6) [Guinevere:34959] Signal code: (-6) thunder_gpu: /home/linhua/Programs/THUNDER_self_compile/external/boost/boost/container/vector.hpp:1581: boost::container::vector<T, Allocator>::reference boost::container::vector<T, Allocator>::operator[](boost::container::vector<T, Allocator>::size_type) [with T = Projector; Allocator = boost::container::new_allocator<Projector>; boost::container::vector<T, Allocator>::reference = Projector&; boost::container::vector<T, Allocator>::size_type = long unsigned int]: Assertion this->m_holder.m_size > n' failed.
[Guinevere:34960] *** Process received signal ***
[Guinevere:34960] Signal: Aborted (6)
[Guinevere:34960] Signal code: (-6)
[Guinevere:34959] [ 0] /lib64/libpthread.so.0(+0xf6d0)[0x7f250dcd36d0]
[Guinevere:34959] [ 1] /lib64/libc.so.6(gsignal+0x37)[0x7f24ff7fc277]
[Guinevere:34959] [Guinevere:34960] [ 0] /lib64/libpthread.so.0(+0xf6d0)[0x7feae6d706d0]
[Guinevere:34960] [ 1] /lib64/libc.so.6(gsignal+0x37)[0x7fead8899277]
[Guinevere:34960] [ 2] /lib64/libc.so.6(abort+0x148)[0x7fead889a968]
[Guinevere:34960] [ 3] [ 2] /lib64/libc.so.6(+0x2f096)[0x7fead8892096]
[Guinevere:34960] [ 4] /lib64/libc.so.6(+0x2f142)[0x7fead8892142]
[Guinevere:34960] [ 5] /lib64/libc.so.6(abort+0x148)[0x7f24ff7fd968]
[Guinevere:34959] [ 3] /lib64/libc.so.6(+0x2f096)[0x7f24ff7f5096]
[Guinevere:34959] [ 4] /lib64/libc.so.6(+0x2f142)[0x7f24ff7f5142]
[Guinevere:34959] [ 5] thunder_gpu[0x48564d]
[Guinevere:34960] [ 6] thunder_gpu[0x48564d]
[Guinevere:34959] [ 6] thunder_gpu[0x486251]
[Guinevere:34960] [ 7] thunder_gpu[0x486251]
[Guinevere:34959] [ 7] thunder_gpu(_ZN9Optimiser12refreshScaleEbb+0x105a)[0x4a80ba]
[Guinevere:34960] [ 8] thunder_gpu(_ZN9Optimiser12refreshScaleEbb+0x105a)[0x4a80ba]
[Guinevere:34959] [ 8] thunder_gpu(_ZN9Optimiser12correctScaleEbbb+0x40)[0x4a9150]
[Guinevere:34960] [ 9] thunder_gpu(_ZN9Optimiser12correctScaleEbbb+0x40)[0x4a9150]
[Guinevere:34959] [ 9] thunder_gpu(_ZN9Optimiser4initEv+0x1062)[0x4c64f2]
[Guinevere:34960] [10] thunder_gpu(_ZN9Optimiser4initEv+0x1062)[0x4c64f2]
[Guinevere:34959] [10] thunder_gpu(_ZN9Optimiser3runEv+0xbe)[0x4cac7e]
[Guinevere:34960] [11] thunder_gpu(_ZN9Optimiser3runEv+0xbe)[0x4cac7e]
[Guinevere:34959] [11] thunder_gpu(main+0x3aa)[0x45b4ca]
[Guinevere:34960] [12] thunder_gpu(main+0x3aa)[0x45b4ca]
[Guinevere:34959] [12] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7fead8885445]
[Guinevere:34960] [13] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f24ff7e8445]
[Guinevere:34959] [13] thunder_gpu[0x45f71a]
[Guinevere:34960] *** End of error message ***
thunder_gpu[0x45f71a]
[Guinevere:34959] *** End of error message ***

Primary job terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.


mpirun noticed that process rank 1 with PID 0 on node Guinevere exited on signal 6 (Aborted).

I have renamed the json file and the output log file to problem1.XXX

the output for problem2 goes like:
01/07/2019 10:22:19.717 WARN [LOGGER_SYS] MASTER: _rS is Larger than _r, Set _rS to _r
[Guinevere:13778] *** Process received signal ***
[Guinevere:13778] Signal: Floating point exception (8)
[Guinevere:13778] Signal code: Integer divide-by-zero (1)
[Guinevere:13778] Failing at address: 0x4c0e2f
[Guinevere:13778] [ 0] /lib64/libpthread.so.0(+0xf6d0)[0x7fde05ad36d0]
[Guinevere:13778] [ 1] thunder_gpu(_ZN9Optimiser12expectationGEv+0x74f)[0x4c0e2f]
[Guinevere:13778] [ 2] thunder_gpu(_ZN9Optimiser3runEv+0x194a)[0x4cbfba]
[Guinevere:13778] [ 3] thunder_gpu(main+0x3aa)[0x45b4ba]
[Guinevere:13778] [ 4] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7fddf75e8445]
[Guinevere:13778] [ 5] thunder_gpu[0x45f70a]
[Guinevere:13778] *** End of error message ***
[Guinevere:13779] *** Process received signal ***
[Guinevere:13779] Signal: Floating point exception (8)
[Guinevere:13779] Signal code: Integer divide-by-zero (1)
[Guinevere:13779] Failing at address: 0x4c0e2f
[Guinevere:13779] [ 0] /lib64/libpthread.so.0(+0xf6d0)[0x7f6e4b90d6d0]
[Guinevere:13779] [ 1] thunder_gpu(_ZN9Optimiser12expectationGEv+0x74f)[0x4c0e2f]
[Guinevere:13779] [ 2] thunder_gpu(_ZN9Optimiser3runEv+0x194a)[0x4cbfba]
[Guinevere:13779] [ 3] thunder_gpu(main+0x3aa)[0x45b4ba]
[Guinevere:13779] [ 4] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f6e3d422445]
[Guinevere:13779] [ 5] thunder_gpu[0x45f70a]
[Guinevere:13779] *** End of error message ***

Primary job terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.


mpiexec noticed that process rank 2 with PID 0 on node Guinevere exited on signal 8 (Floating point exception).

I have renamed the json file and the output log file to problem2.XXX

My workstation has two Intel(R) Xeon(R) CPU E5-2640 v4 CPUs, and one Gtx1080 Ti & two Titan x(Pascal) GPUs.
Thank you very much in advance!

make problem

when i use make ,then make errors.
the following is the output
In file included from /usr/include/stdio.h:862:0,
from /usr/include/c++/7/cstdio:42,
from /usr/include/c++/7/ext/string_conversions.h:43,
from /usr/include/c++/7/bits/basic_string.h:6352,
from /usr/include/c++/7/string:52,
from /usr/include/c++/7/bits/locale_classes.h:40,
from /usr/include/c++/7/bits/ios_base.h:41,
from /usr/include/c++/7/ios:42,
from /usr/include/c++/7/istream:38,
from /usr/include/c++/7/sstream:38,
from /home/barry/THUNDER/include/Optimiser.h:15,
from /home/barry/THUNDER/src/Optimiser.cpp:10:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:34:43: note: ‘__builtin___sprintf_chk’ output between 26 and 1054 bytes into a destination of size 1024
__bos (__s), __fmt, __va_arg_pack ());
^
CMakeFiles/Makefile2:228: recipe for target 'CMakeFiles/core.dir/all' failed
make[1]: *** [CMakeFiles/core.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
pls help

GPU version compilation error

Dear All,
I can compile THUNDER successfully without GPU, but always get error near the end with GPU on.
Our GPU workstation have 8 GTX1080, CUDA8.0 and gcc 4.8.5, Cmake 3.5
Google search suggest it may due to issue in CMake setting up, but I can't find any clear solution of it.


[ 18%] Completed 'GSL'
[ 18%] Built target GSL
Scanning dependencies of target cuthuem
[ 19%] Building CXX object gpu/interface/CMakeFiles/cuthuem.dir/Interface.cpp.o
[ 20%] Linking CXX static library ../../lib/libcuthuem.a
[ 20%] Built target cuthuem
[ 21%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/cuthuemcore_generated_cuthunder.cu.o
[ 22%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Weilume.cu.o
[ 24%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Vec2.cu.o
[ 25%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Mat33.cu.o
[ 26%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Volume.cu.o
[ 26%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Interpolation.cu.o
[ 28%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Image.cu.o
[ 29%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Complex.cu.o
[ 31%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Vec4.cu.o
[ 36%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_Vec3.cu.o
[ 36%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/cuthuemcore_generated_ManagedCalPoint.cu.o
[ 32%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/util/cuthuemcore_generated_TabFunction.cu.o
[ 34%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/cuthuemcore_generated_ManagedArrayTexture.cu.o
[ 36%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/cuthuemcore_generated_Kernel.cu.o
[ 36%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/acc/cuthuemcore_generated_Constructor.cu.o
[ 38%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/cuthuemcore_generated_Device.cu.o
[ 38%] Building NVCC (Device) object gpu/src/CMakeFiles/cuthuemcore.dir/cuthuemcore_generated_ReconstructManager.cu.o
[ 39%] Building NVCC intermediate link file gpu/src/CMakeFiles/cuthuemcore.dir/cuthuemcore_intermediate_link.o
Scanning dependencies of target cuthuemcore
[ 40%] Linking CXX static library ../../lib/libcuthuemcore.a
[ 40%] Built target cuthuemcore
Scanning dependencies of target SimpleCMakeTest
Scanning dependencies of target ReconstructorAccTest
Scanning dependencies of target CastTest
Scanning dependencies of target core
[ 41%] Building CXX object gpu/testsrc/CMakeFiles/SimpleCMakeTest.dir/SimpleCMakeTest.cpp.o
[ 42%] Building CXX object gpu/testsrc/CMakeFiles/ReconstructorAccTest.dir/ReconstructorAccTest.cpp.o
[ 43%] Building CXX object gpu/testsrc/CMakeFiles/CastTest.dir/CastTest.cpp.o
[ 45%] Building CXX object CMakeFiles/core.dir/src/Precision.cpp.o
[ 45%] Building CXX object CMakeFiles/core.dir/src/Coordinate5D.cpp.o
[ 46%] Building CXX object CMakeFiles/core.dir/src/Utils.cpp.o
[ 48%] Building CXX object CMakeFiles/core.dir/src/CTF.cpp.o
[ 48%] Building CXX object CMakeFiles/core.dir/src/FFT.cpp.o
[ 49%] Building CXX object CMakeFiles/core.dir/src/Reconstructor.cpp.o
[ 51%] Building CXX object CMakeFiles/core.dir/src/Logging.cpp.o
[ 51%] Building CXX object CMakeFiles/core.dir/src/Projector.cpp.o
[ 52%] Building CXX object CMakeFiles/core.dir/src/Geometry/Symmetry.cpp.o
[ 53%] Building CXX object CMakeFiles/core.dir/src/Geometry/SymmetryOperation.cpp.o
[ 54%] Building CXX object CMakeFiles/core.dir/src/Geometry/Euler.cpp.o
[ 55%] Building CXX object CMakeFiles/core.dir/src/Geometry/DirectionalStat.cpp.o
[ 56%] Building CXX object CMakeFiles/core.dir/src/Geometry/SymmetryFunctions.cpp.o
[ 57%] Building CXX object CMakeFiles/core.dir/src/Parallel.cpp.o
[ 58%] Building CXX object CMakeFiles/core.dir/src/Database.cpp.o
[ 59%] Building CXX object CMakeFiles/core.dir/src/Functions/Filter.cpp.o
[ 61%] Building CXX object CMakeFiles/core.dir/src/Functions/Mask.cpp.o
[ 61%] Building CXX object CMakeFiles/core.dir/src/Functions/Functions.cpp.o
[ 63%] Building CXX object CMakeFiles/core.dir/src/Functions/Spectrum.cpp.o
[ 63%] Building CXX object CMakeFiles/core.dir/src/Functions/Random.cpp.o
[ 64%] Building CXX object CMakeFiles/core.dir/src/Optimiser.cpp.o
[ 67%] Building CXX object CMakeFiles/core.dir/src/Image/ImageBase.cpp.o
[ 67%] Building CXX object CMakeFiles/core.dir/src/Image/ImageFile.cpp.o
[ 68%] Building CXX object CMakeFiles/core.dir/src/Image/BMP.cpp.o
[ 70%] Building CXX object CMakeFiles/core.dir/src/Image/ImageFunctions.cpp.o
[ 71%] Building CXX object CMakeFiles/core.dir/src/Image/Volume.cpp.o
[ 71%] Building CXX object CMakeFiles/core.dir/src/Image/Image.cpp.o
[ 72%] Building CXX object CMakeFiles/core.dir/src/Particle.cpp.o
[ 73%] Building CXX object CMakeFiles/core.dir/src/TabFunction.cpp.o
[ 74%] Building CXX object CMakeFiles/core.dir/src/Model.cpp.o
[ 75%] Building CXX object CMakeFiles/core.dir/src/Postprocess.cpp.o
[ 76%] Linking CXX executable ../../cutest/SimpleCMakeTest
[ 76%] Built target SimpleCMakeTest
[ 77%] Linking CXX executable ../../cutest/ReconstructorAccTest
[ 78%] Linking CXX executable ../../cutest/CastTest
[ 78%] Built target CastTest
../../lib/libcuthuemcore.a(cuthuemcore_intermediate_link.o): In function __cudaRegisterLinkedBinary_66_tmpxft_00001a84_00000000_17_cuda_device_runtime_compute_61_cpp1_ii_8b1a5d37': link.stub:(.text+0x4f6): undefined reference to __fatbinwrap_66_tmpxft_00001a84_00000000_17_cuda_device_runtime_compute_61_cpp1_ii_8b1a5d37'
collect2: error: ld returned 1 exit status
make[2]: *** [cutest/ReconstructorAccTest] Error 1
make[1]: *** [gpu/testsrc/CMakeFiles/ReconstructorAccTest.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 79%] Linking CXX static library libcore.a
[ 79%] Built target core
make: *** [all] Error 2
-bash-4.2$

Kernel CTF calculation error

Dear Author,
Hi, I'm using thunder_gpu and I ran into an error that I don't understand, the error message goes:
Fatal error: Kernel CTF calculation error. (invalid device function at /opt/THUNDER-master/THUNDER/gpu/src/cuthunder.cu:9749)
*** FAILED - ABORTING
Fatal error: Kernel CTF calculation error. (invalid device function at /opt/THUNDER-master/THUNDER/gpu/src/cuthunder.cu:9749)
*** FAILED - ABORTING
I'm running on a single workstation with 8 GPUs, boxsize 320, 290k particles, could you please help me out here?

Job stuck in CTF estimation step

When we run a 3D refine job on THUNDER, it stucked here:
26/08/2019 14:46:32.044 INFO [LOGGER_MEM] A_LEAD: Before Initialsing CTFs, Physic Memory Usage : 20G
26/08/2019 14:46:32.044 INFO [LOGGER_INIT] A_LEAD: Generating CTFs
26/08/2019 14:46:32.372 INFO [trivial] Step1: Prepare Parameter for CTF calculation
26/08/2019 14:46:32.373 INFO [trivial] Allocate Memory.
26/08/2019 14:46:32.373 INFO [trivial] Allocate memory done, begin to calculate

And then it won't continue. It stuck here for almost one day.
I think it shouldn't because of memory used up because we have 256GB. And the memory has already allocated. But the CTF calculation won't stop (or start? I didn't see calculation resource occupied).

In this workstation, we have THUNDER on:
system=CentOS-7.6
CUDA=9.2
cmake=3.13.5
mpirun=1.10.7
nccl=2.4.2-1+CUDA9.2
gcc=4.8.5
Thanks!

Integration in Scipion?

Dear THUNDER developers, we have received a request to integrate THUNDER in Scipion.
We haven't got the manpower to integrate it, but we can guide/help /assist any developer that might want to integrate it.

We think good reasons can be found here: http://scipion.i2pc.es/developers

If you are interested in reaching a wider audience, let us know, and we can find a way to collaborate.

How to continue a crashed run

Dear developers,
I'm running Thunder on a cpu cluster. Despite using 8 nodes with 16 cores each, my run didn't finish in 14 days. unfortunately this 14 days is the time limit for a run on this cluster, so the run was cancelled. I would like to continue it and I wonder how I should do it. If I put the last .thu file in the json as ".thu File Storing Paths and CTFs of Images", Thunder seems to restart the run from the beginning. I chose a new folder for the output not to overwrite the files from the previous, crashed run.
I would be grateful if you could tell me how to continue the run from where it crashed.
Thank you,
Gabor

Make fail in CPU/GPU mode - CUDA 10.1 - THUNDERconfig.h not found?

Hello,

I tried compiling with CUDA 10.1/CMAKE3.5/gcc5.4.0 and when executing make -j 10
I got this error: fatal error: THUNDERCONFIG.h: No such file or directory

I can compile successfully with CPU only but not with GPU.

I am trying not to downgrade to CUDA 9 and hope that there will be an easy fix to this.

Many thanks in advance!

make problem - ubuntu 17.10

I also have problem during make. I'm looking forward to trying THUNDER, so help will be appreciated Here is the system information:
linux version
NAME="Ubuntu"
VERSION="17.10 (Artful Aardvark)"

gcc version
gcc (Ubuntu 6.4.0-8ubuntu1) 6.4.0 20171010

cuda version
Cuda compilation tools, release 9.1, V9.1.85

GPU info
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.42 Driver Version: 390.42 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 108... Off | 00000000:02:00.0 On | N/A |
| 32% 57C P2 54W / 250W | 1388MiB / 11177MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 GeForce GTX 108... Off | 00000000:03:00.0 Off | N/A |
| 33% 57C P5 24W / 250W | 1293MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 2 GeForce GTX 108... Off | 00000000:82:00.0 Off | N/A |
| 31% 53C P2 53W / 250W | 1293MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 3 GeForce GTX 108... Off | 00000000:83:00.0 Off | N/A |
| 32% 55C P2 52W / 250W | 1293MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+

make output:
[ 8%] Built target GSL
[ 9%] Building CXX object external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o
[ 17%] Built target FFTW
Scanning dependencies of target cuthuem
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:234:14: error: ‘scoped_ptr’ in namespace ‘std’ does not name a template type
typedef std::scoped_ptr const CharReaderPtr;
^~~~~~~~~~
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp: In function ‘bool Json::parseFromStream(const Json::CharReader::Factory&, std::istream&, Json::Value*, std::__cxx11::string*)’:
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:2007:3: error: ‘CharReaderPtr’ was not declared in this scope
CharReaderPtr const reader(fact.newCharReader());
^~~~~~~~~~~~~
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:2008:10: error: ‘reader’ was not declared in this scope
return reader->parse(begin, end, root, errs);
^~~~~~
[ 18%] Building CXX object gpu/interface/CMakeFiles/cuthuem.dir/Interface.cpp.o
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp: At global scope:
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:3803:14: error: ‘scoped_ptr’ in namespace ‘std’ does not name a template type
typedef std::scoped_ptr const StreamWriterPtr;
^~~~~~~~~~
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp: In function ‘std::__cxx11::string Json::writeString(const Json::StreamWriter::Factory&, const Json::Value&)’:
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:4924:3: error: ‘StreamWriterPtr’ was not declared in this scope
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:4925:3: error: ‘writer’ was not declared in this scope
writer->write(root, &sout);
^~~~~~
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp: In function ‘std::ostream& Json::operator<<(std::ostream&, const Json::Value&)’:
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:4931:3: error: ‘StreamWriterPtr’ was not declared in this scope
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
/ws/local/progs/THUNDER/external/jsoncpp/jsoncpp.cpp:4932:3: error: ‘writer’ was not declared in this scope
writer->write(root, &sout);
^~~~~~
external/jsoncpp/CMakeFiles/jsoncpp.dir/build.make:62: recipe for target 'external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o' failed
make[2]: *** [external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o] Error 1
CMakeFiles/Makefile2:588: recipe for target 'external/jsoncpp/CMakeFiles/jsoncpp.dir/all' failed
make[1]: *** [external/jsoncpp/CMakeFiles/jsoncpp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
In file included from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Core:263:0,
from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Dense:1,
from /ws/local/progs/THUNDER/include/Typedef.h:14,
from /ws/local/progs/THUNDER/include/Image/Image.h:19,
from /ws/local/progs/THUNDER/gpu/interface/Interface.h:5,
from /ws/local/progs/THUNDER/gpu/interface/Interface.cpp:1:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:29:39: warning: ignoring attributes on template argument ‘__m128 {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct is_arithmetic<__m128> { enum { value = true }; };
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:30:40: warning: ignoring attributes on template argument ‘__m128i {aka __vector(2) long long int}’ [-Wignored-attributes]
template<> struct is_arithmetic<__m128i> { enum { value = true }; };
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:31:40: warning: ignoring attributes on template argument ‘__m128d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct is_arithmetic<__m128d> { enum { value = true }; };
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:101:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct unpacket_traits { typedef float type; enum {size=4}; };
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:102:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct unpacket_traits { typedef double type; enum {size=2}; };
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:103:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i {aka __vector(2) long long int}’ [-Wignored-attributes]
template<> struct unpacket_traits { typedef int type; enum {size=4}; };
^
In file included from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Core:263:0,
from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Dense:1,
from /ws/local/progs/THUNDER/include/Typedef.h:14,
from /ws/local/progs/THUNDER/include/Image/Image.h:19,
from /ws/local/progs/THUNDER/gpu/interface/Interface.h:5,
from /ws/local/progs/THUNDER/gpu/interface/Interface.cpp:1:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:519:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
struct palign_impl<Offset,Packet4f>
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:529:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i {aka __vector(2) long long int}’ [-Wignored-attributes]
struct palign_impl<Offset,Packet4i>
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:539:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
struct palign_impl<Offset,Packet2d>
^
In file included from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Core:265:0,
from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Dense:1,
from /ws/local/progs/THUNDER/include/Typedef.h:14,
from /ws/local/progs/THUNDER/include/Image/Image.h:19,
from /ws/local/progs/THUNDER/gpu/interface/Interface.h:5,
from /ws/local/progs/THUNDER/gpu/interface/Interface.cpp:1:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/Complex.h:211:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct conj_helper<Packet4f, Packet2cf, false,false>
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/Complex.h:220:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct conj_helper<Packet2cf, Packet4f, false,false>
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/Complex.h:407:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct conj_helper<Packet2d, Packet1cd, false,false>
^
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/arch/SSE/Complex.h:416:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct conj_helper<Packet1cd, Packet2d, false,false>
^
In file included from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Core:326:0,
from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Dense:1,
from /ws/local/progs/THUNDER/include/Typedef.h:14,
from /ws/local/progs/THUNDER/include/Image/Image.h:19,
from /ws/local/progs/THUNDER/gpu/interface/Interface.h:5,
from /ws/local/progs/THUNDER/gpu/interface/Interface.cpp:1:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h: In member function ‘void Eigen::internal::gebp_kernel<LhsScalar, RhsScalar, Index, mr, nr, ConjugateLhs, ConjugateRhs>::operator()(Eigen::internal::gebp_kernel<LhsScalar, RhsScalar, Index, mr, nr, ConjugateLhs, ConjugateRhs>::ResScalar*, Index, const LhsScalar*, const RhsScalar*, Index, Index, Index, Eigen::internal::gebp_kernel<LhsScalar, RhsScalar, Index, mr, nr, ConjugateLhs, ConjugateRhs>::ResScalar, Index, Index, Index, Index, RhsScalar*)’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h:574:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if(nr==4) traits.initAcc(C3);
^~
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h:575:19: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
traits.initAcc(C4);
^~~~~~
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h:946:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if(nr==4) R3 = ploadu(r3);
^~
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h:948:19: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
traits.acc(C0, alphav, R0);
^~~~~~
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h:951:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if(nr==4) traits.acc(C3, alphav, R3);
^~
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h:953:19: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
pstoreu(r0, R0);
^~~~~~~
In file included from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Core:277:0,
from /ws/local/progs/THUNDER/external/Eigen3/Eigen/Dense:1,
from /ws/local/progs/THUNDER/include/Typedef.h:14,
from /ws/local/progs/THUNDER/include/Image/Image.h:19,
from /ws/local/progs/THUNDER/gpu/interface/Interface.h:5,
from /ws/local/progs/THUNDER/gpu/interface/Interface.cpp:1:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<float, 4, 1>, float, float, Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<float, 4, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<float, 4, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<float, 4, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<float, 4, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Geometry/Quaternion.h:282:16: required from ‘class Eigen::Quaternion’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:22:3: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(4) float}’ [-Wignored-attributes]
>::type PacketReturnType;
^~~~~~~~~~~~~~~~
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, 4, 1>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, 4, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, 4, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, 4, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<double, 4, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Geometry/Quaternion.h:282:16: required from ‘class Eigen::Quaternion’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:63:3: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 1>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 1>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 1>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, 3, 1>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 1>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, 3, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, 3, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, 3, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<double, 3, 1>’
/ws/local/progs/THUNDER/include/Geometry/SymmetryOperation.h:35:11: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 3>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 3>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 3>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, 3, 3>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, 3, 3>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, 3, 3> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, 3, 3> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, 3, 3> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<double, 3, 3>’
/ws/local/progs/THUNDER/include/Geometry/Symmetry.h:69:28: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 4>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 4>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 4>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, -1, 4>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 4>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, -1, 4> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, -1, 4> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 4> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<double, -1, 4>’
/ws/local/progs/THUNDER/include/Particle.h:128:15: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 2>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 2>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 2>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, -1, 2>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 2>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, -1, 2> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, -1, 2> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 2> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<double, -1, 2>’
/ws/local/progs/THUNDER/include/Particle.h:134:15: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 1>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 1>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 1>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, -1, 1>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, -1, 1>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, -1, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, -1, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<double, -1, 1>’
/ws/local/progs/THUNDER/include/Particle.h:139:14: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 2, 1>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 2, 1>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 2, 1>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, 2, 1>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, 2, 1>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, 2, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, 2, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, 2, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<double, 2, 1>’
/ws/local/progs/THUNDER/include/Particle.h:228:15: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, -1, 1>, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, -1, 1>, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, -1, 1>, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<float, -1, 1>, float, float, Eigen::DenseCoeffsBase<Eigen::Matrix<float, -1, 1>, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<float, -1, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<float, -1, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:88:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<float, -1, 1> >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:127:7: required from ‘class Eigen::Matrix<float, -1, 1>’
/ws/local/progs/THUNDER/gpu/interface/Interface.cpp:743:34: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(4) float}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >, float, float, Eigen::DenseCoeffsBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> > >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> > >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MapBase.h:27:34: required from ‘class Eigen::MapBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >, 0>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MapBase.h:172:34: required from ‘class Eigen::MapBase<Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Map.h:104:79: required from ‘class Eigen::Map<Eigen::Matrix<float, -1, 1>, 0, Eigen::Stride<0, 0> >’
/ws/local/progs/THUNDER/gpu/interface/Interface.cpp:749:44: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(4) float}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 4, 1> >, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 4, 1> >, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 4, 1> >, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::SwapWrapper<Eigen::Matrix<double, 4, 1> >, double, double, Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 4, 1> >, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::SwapWrapper<Eigen::Matrix<double, 4, 1> > >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:384:7: required from ‘void Eigen::DenseBase::swap(Eigen::PlainObjectBase&) [with OtherDerived = Eigen::Matrix<double, 4, 1>; Derived = Eigen::Matrix<double, 4, 1>]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:805:5: required from ‘static void Eigen::internal::matrix_swap_impl<MatrixTypeA, MatrixTypeB, SwapPointers>::run(MatrixTypeA&, MatrixTypeB&) [with MatrixTypeA = Eigen::Matrix<double, 4, 1>; MatrixTypeB = Eigen::Matrix<double, 4, 1>; bool SwapPointers = false]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:682:81: required from ‘void Eigen::PlainObjectBase::_swap(const Eigen::DenseBase&) [with OtherDerived = Eigen::Matrix<double, 4, 1>; Derived = Eigen::Matrix<double, 4, 1>]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:334:7: required from ‘void Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>::swap(const Eigen::MatrixBase&) [with OtherDerived = Eigen::Matrix<double, 4, 1>; _Scalar = double; int _Rows = 4; int _Cols = 1; int _Options = 0; int _MaxRows = 4; int _MaxCols = 1]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:224:7: required from ‘Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>& Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>::operator=(Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>&&) [with _Scalar = double; int _Rows = 4; int _Cols = 1; int _Options = 0; int _MaxRows = 4; int _MaxCols = 1]’
/ws/local/progs/THUNDER/include/Particle.h:271:41: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 2, 1> >, 0>’:
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:274:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 2, 1> >, 1>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:636:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 2, 1> >, 3>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/util/XprHelper.h:371:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::SwapWrapper<Eigen::Matrix<double, 2, 1> >, double, double, Eigen::DenseCoeffsBase<Eigen::SwapWrapper<Eigen::Matrix<double, 2, 1> >, 3>, false>’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::SwapWrapper<Eigen::Matrix<double, 2, 1> > >’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/MatrixBase.h:48:34: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseBase.h:384:7: required from ‘void Eigen::DenseBase::swap(Eigen::PlainObjectBase&) [with OtherDerived = Eigen::Matrix<double, 2, 1>; Derived = Eigen::Matrix<double, 2, 1>]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:805:5: required from ‘static void Eigen::internal::matrix_swap_impl<MatrixTypeA, MatrixTypeB, SwapPointers>::run(MatrixTypeA&, MatrixTypeB&) [with MatrixTypeA = Eigen::Matrix<double, 2, 1>; MatrixTypeB = Eigen::Matrix<double, 2, 1>; bool SwapPointers = false]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/PlainObjectBase.h:682:81: required from ‘void Eigen::PlainObjectBase::_swap(const Eigen::DenseBase&) [with OtherDerived = Eigen::Matrix<double, 2, 1>; Derived = Eigen::Matrix<double, 2, 1>]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:334:7: required from ‘void Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>::swap(const Eigen::MatrixBase&) [with OtherDerived = Eigen::Matrix<double, 2, 1>; _Scalar = double; int _Rows = 2; int _Cols = 1; int _Options = 0; int _MaxRows = 2; int _MaxCols = 1]’
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/Matrix.h:224:7: required from ‘Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>& Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>::operator=(Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>&&) [with _Scalar = double; int _Rows = 2; int _Cols = 1; int _Options = 0; int _MaxRows = 2; int _MaxCols = 1]’
/ws/local/progs/THUNDER/include/Particle.h:274:35: required from here
/ws/local/progs/THUNDER/external/Eigen3/Eigen/src/Core/DenseCoeffsBase.h:56:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits::type {aka __vector(2) double}’ [-Wignored-attributes]
[ 19%] Linking CXX static library ../../lib/libcuthuem.a
[ 19%] Built target cuthuem
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

jsoncpp compilation error

I ran into following error when compiling jsoncpp. jsoncpp Github page suggests it may related to gcc/g++ version and/or standard, but I do not understand the way to solve it in the context of THUNDER.
I am using gcc/g++ 7.3 on Ubuntu 18.04 LTS, cuda 9.1. Thanks for your help in advance.


[ 71%] Linking CXX static library libcore.a
[ 71%] Built target core
Scanning dependencies of target jsoncpp
[ 72%] Building CXX object external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:234:14: error: ‘scoped_ptr’ in namespace ‘std’ does not name a template type
typedef std::scoped_ptr const CharReaderPtr;
^~~~~~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp: In function ‘bool Json::parseFromStream(const Json::CharReader::Factory&, std::istream&, Json::Value*, std::__cxx11::string*)’:
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:2007:3: error: ‘CharReaderPtr’ was not declared in this scope
CharReaderPtr const reader(fact.newCharReader());
^~~~~~~~~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:2007:3: note: suggested alternative: ‘CharReader’
CharReaderPtr const reader(fact.newCharReader());
^~~~~~~~~~~~~
CharReader
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:2008:10: error: ‘reader’ was not declared in this scope
return reader->parse(begin, end, root, errs);
^~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:2008:10: note: suggested alternative: ‘Reader’
return reader->parse(begin, end, root, errs);
^~~~~~
Reader
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp: At global scope:
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:3803:14: error: ‘scoped_ptr’ in namespace ‘std’ does not name a template type
typedef std::scoped_ptr const StreamWriterPtr;
^~~~~~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp: In function ‘std::__cxx11::string Json::writeString(const Json::StreamWriter::Factory&, const Json::Value&)’:
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4924:3: error: ‘StreamWriterPtr’ was not declared in this scope
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4924:3: note: suggested alternative: ‘StreamWriter’
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
StreamWriter
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4925:3: error: ‘writer’ was not declared in this scope
writer->write(root, &sout);
^~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4925:3: note: suggested alternative: ‘Writer’
writer->write(root, &sout);
^~~~~~
Writer
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp: In function ‘std::ostream& Json::operator<<(std::ostream&, const Json::Value&)’:
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4931:3: error: ‘StreamWriterPtr’ was not declared in this scope
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4931:3: note: suggested alternative: ‘StreamWriter’
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
StreamWriter
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4932:3: error: ‘writer’ was not declared in this scope
writer->write(root, &sout);
^~~~~~
/home/jianshi/Downloads/THUNDER-master/external/jsoncpp/jsoncpp.cpp:4932:3: note: suggested alternative: ‘Writer’
writer->write(root, &sout);
^~~~~~
Writer
external/jsoncpp/CMakeFiles/jsoncpp.dir/build.make:62: recipe for target 'external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o' failed
make[2]: *** [external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o] Error 1
CMakeFiles/Makefile2:588: recipe for target 'external/jsoncpp/CMakeFiles/jsoncpp.dir/all' failed
make[1]: *** [external/jsoncpp/CMakeFiles/jsoncpp.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

about RELION_2_THU.py

Hello! If I am going to use the results of the relion to continue local refine, I need to convert the Euler angles in the star file into a unit quaternion to a thu file. This code does not seem to work, does it?

Sample data

Dear THUNDER developers,

Do you have example test data to confirm correct installation / compiling of THUNDER? I am keen on using this and it would be very helpful to have pre-formatted data and .thu files so that I can confirm how to run the software before trying it on un-tested samples.

Thank you,
Mike

Questions about THUNDER running

Dear author, I encountered some problems when compiling and using the THUNDER software you released. After I followed the README steps, many executable binary files appeared in the folder after compilation, and the GUI part was also compiled. May I ask how I should use this program next? How should the GUI be opened? I turn on thunder_stackView.pro with Qt5, and it only gives me strings. Is there something wrong with the way I turn it on?

Compiling error

Dear developers,

I have run into this compiling error when compiling for CPU THUNDER:

[ 68%] Building CXX object CMakeFiles/core.dir/src/TabFunction.cpp.o
icpc: command line warning #10006: ignoring unknown option '-Wno-deprecated-declarations'
/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/detail/unique_ptr_meta_utils.hpp(432): error: parameter type involves pointer to array of unknown bound
     static true_t  dispatch(U);
                             ^
          detected during:
            instantiation of class "boost::move_upmu::is_convertible<T, U> [with T=RFLOAT={float} (*)[], U=float (*)[]]" at line 48 of "/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/default_delete.hpp"
            instantiation of class "boost::move_upd::def_del_compatible_cond<U, T> [with U=RFLOAT={float} [], T=float []]" at line 58 of "/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/default_delete.hpp"
            instantiation of class "boost::move_upd::enable_def_del<U, T, Type> [with U=RFLOAT={float} [], T=float [], Type=void]" at line 76 of "/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/default_delete.hpp"
            instantiation of class "boost::move_upd::enable_defdel_call<U, T [], Type> [with U=RFLOAT={float}, T=float, Type=void]" at line 567 of "/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/unique_ptr.hpp"
            instantiation of "boost::movelib::unique_ptr<T, D>::~unique_ptr() [with T=RFLOAT={float} [], D=boost::movelib::default_delete<RFLOAT={float} []>]" at line 11 of "/home/cosmic2/software_dependencies/THUNDER/src/TabFunction.cpp"

/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/detail/unique_ptr_meta_utils.hpp(432): error: parameter type involves pointer to array of unknown bound
     static true_t  dispatch(U);
                             ^
          detected during:
            instantiation of class "boost::move_upmu::is_convertible<T, U> [with T=RFLOAT={float} *, U=RFLOAT={float} (*)[]]" at line 567
            processing of template argument list for "boost::move_upmu::missing_virtual_destructor_default_delete" based on template arguments <RFLOAT={float} [], RFLOAT={float}> at line 585
            instantiation of class "boost::move_upmu::missing_virtual_destructor<boost::movelib::default_delete<T>, U> [with T=RFLOAT={float} [], U=RFLOAT={float}]" at line 185 of "/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/default_delete.hpp"
            instantiation of "boost::move_upd::enable_defdel_call<U, T, void>::type boost::movelib::default_delete<T>::operator()(U *) const [with T=RFLOAT={float} [], U=RFLOAT={float}]" at line 567 of "/home/cosmic2/software_dependencies/THUNDER/external/boost/boost/move/unique_ptr.hpp"
            instantiation of "boost::movelib::unique_ptr<T, D>::~unique_ptr() [with T=RFLOAT={float} [], D=boost::movelib::default_delete<RFLOAT={float} []>]" at line 11 of "/home/cosmic2/software_dependencies/THUNDER/src/TabFunction.cpp"

compilation aborted for /home/cosmic2/software_dependencies/THUNDER/src/TabFunction.cpp (code 2)
make[2]: *** [CMakeFiles/core.dir/src/TabFunction.cpp.o] Error 2
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/core.dir/all] Error 2
make: *** [all] Error 2

Is this an error related to the C-language used? I'm finding this error to be hard to interpret and any information would be very helpful.

Thank you,
Mike

make fails

  1. nvcc: NVIDIA (R) Cuda compiler driver
    Copyright (c) 2005-2019 NVIDIA Corporation
    Built on Fri_Feb__8_19:08:17_PST_2019
    Cuda compilation tools, release 10.1, V10.1.105

  2. openmpi 1.5.4

  3. gcc 7.2.0

  4. NCCL 2.4.7-1+cuda10.1_x86_64

  5. Scientific Linux release 7.6

Make fails with an error:

[ 31%] Building CXX object CMakeFiles/core_CPU.dir/src/Parallel.cpp.o
In file included from /net/nfs1/public/EM/OpenMPI/openmpi-1.5.4/build/include/mpi.h:253:0,
                 from /lmb/home/gsharov/soft/THUNDER/include/Parallel.h:29,
                 from /lmb/home/gsharov/soft/THUNDER/src/Parallel.cpp:9:
/net/nfs1/public/EM/OpenMPI/openmpi-1.5.4/build/include/mpi_portable_platform.h:374:34: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
              _STRINGIFY(__GNUC__)"."_STRINGIFY(__GNUC_MINOR__)"."_STRINGIFY(__GNUC_PATCHLEVEL__)
                                  ^
/net/nfs1/public/EM/OpenMPI/openmpi-1.5.4/build/include/mpi_portable_platform.h:374:63: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
              _STRINGIFY(__GNUC__)"."_STRINGIFY(__GNUC_MINOR__)"."_STRINGIFY(__GNUC_PATCHLEVEL__)
                                                               ^
/lmb/home/gsharov/soft/THUNDER/src/Parallel.cpp: In function ‘void MPI_Ssend_Large(const void*, size_t, MPI_Datatype, int, int, MPI_Comm)’:
/lmb/home/gsharov/soft/THUNDER/src/Parallel.cpp:244:23: error: invalid conversion from ‘const void*’ to ‘void*’ [-fpermissive]
                   comm);
                       ^
In file included from /lmb/home/gsharov/soft/THUNDER/include/Parallel.h:29:0,
                 from /lmb/home/gsharov/soft/THUNDER/src/Parallel.cpp:9:
/net/nfs1/public/EM/OpenMPI/openmpi-1.5.4/build/include/mpi.h:1396:20: note:   initializing argument 1 of ‘int MPI_Ssend(void*, int, MPI_Datatype, int, int, MPI_Comm)’
 OMPI_DECLSPEC  int MPI_Ssend(void *buf, int count, MPI_Datatype datatype, int dest,
                    ^~~~~~~~~
make[2]: *** [CMakeFiles/core_CPU.dir/src/Parallel.cpp.o] Error 1
make[1]: *** [CMakeFiles/core_CPU.dir/all] Error 2
make: *** [all] Error 2

make problem Debian 4.9

Hi,

I received an error message during the make process. System info:
4.9.0-7-amd64 #1 SMP Debian 4.9.110-3+deb9u2 x86_64 GNU/Linux

Cmake version: 3.7.2

gcc version: 6.3.0 20170516 (Debian 6.3.0-18+deb9u1)

CUDA version: 9.2.148

Last couple of lines of the make output:

[ 70%] Building CXX object CMakeFiles/core.dir/src/Utils.cpp.o
[ 71%] Linking CXX static library libcore.a
[ 71%] Built target core
Scanning dependencies of target jsoncpp
[ 72%] Building CXX object external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:234:14: error: ‘scoped_ptr’ in namespace ‘std’ does not name a template type
typedef std::scoped_ptr const CharReaderPtr;
^~~~~~~~~~
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp: In function ‘bool Json::parseFromStream(const Json::CharReader::Factory&, std::istream&, Json::Value*, std::__cxx11::string*)’:
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:2007:3: error: ‘CharReaderPtr’ was not declared in this scope
CharReaderPtr const reader(fact.newCharReader());
^~~~~~~~~~~~~
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:2008:10: error: ‘reader’ was not declared in this scope
return reader->parse(begin, end, root, errs);
^~~~~~
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp: At global scope:
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:3803:14: error: ‘scoped_ptr’ in namespace ‘std’ does not name a template type
typedef std::scoped_ptr const StreamWriterPtr;
^~~~~~~~~~
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp: In function ‘std::__cxx11::string Json::writeString(const Json::StreamWriter::Factory&, const Json::Value&)’:
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:4924:3: error: ‘StreamWriterPtr’ was not declared in this scope
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:4925:3: error: ‘writer’ was not declared in this scope
writer->write(root, &sout);
^~~~~~
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp: In function ‘std::ostream& Json::operator<<(std::ostream&, const Json::Value&)’:
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:4931:3: error: ‘StreamWriterPtr’ was not declared in this scope
StreamWriterPtr const writer(builder.newStreamWriter());
^~~~~~~~~~~~~~~
/usr/local/packages/THUNDER/external/jsoncpp/jsoncpp.cpp:4932:3: error: ‘writer’ was not declared in this scope
writer->write(root, &sout);
^~~~~~
external/jsoncpp/CMakeFiles/jsoncpp.dir/build.make:62: recipe for target 'external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o' failed
make[2]: *** [external/jsoncpp/CMakeFiles/jsoncpp.dir/jsoncpp.cpp.o] Error 1
CMakeFiles/Makefile2:588: recipe for target 'external/jsoncpp/CMakeFiles/jsoncpp.dir/all' failed
make[1]: *** [external/jsoncpp/CMakeFiles/jsoncpp.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

I would greatly appreciate your help!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.