Thanks Sikandar, I think I will try the first option for now. I went through the relative entropy code to understand its code structure, since I want to use some of its functions, and I have the following question:
The EvalNonbonded function in csg_reupdate.cc takes in only one interaction information, and that's why you defined "_dUFrame" to construct a nlamda by 1 matrix for the first derivative of U w.r.t potential parameters. And then, since you want the <U_i> you reset _dUFrame.clear() in EvalConfiguration and do the following running sum over the frames: _DS(row) += _dUFrame(row); My question is that can we do the following in the EvalNonbonded: _dUFrame(row) += dU_i ; And the would _dUFrame(row) /= _nframes be equal <U_i> ? Please let me know if I am missing something? Thanks, Hossein On Friday, November 4, 2016 at 11:15:21 AM UTC-5, sikandar wrote: > > Hi, > > Currently VOTCA supports multi-thread parallel computations on single node > only using shared memory parallel implementation. It exploits trivial > parallelism in processing the frames in the MD trajectory. Since each frame > can be processed independently of other frames, total number of frames are > divided among the threads and at the end partial results from all the > threads are gathered to compute total quantities. > > To run VOTCA across multiple nodes, you need to implement distributed > memory based parallel computations using MPI. There are two options > > (i) use the similar frame based parallel computations where the frames are > now divided not only among threads but also among different nodes. This > should be easy to implement with basic MPI. > > (ii) domain decomposition where particles are distributed among different > nodes and pair potentials and force computations are done in parallel. This > is similar to what MD engine uses and not trivial to implement. > > I believe option (i) would be helpful if you have too many frames, which > is usually not the case for coarse-graining as for CG relatively short > trajectories are used for optimization. > > Best, > Sikandar > > > > > > On Thu, Nov 3, 2016 at 9:54 PM, Mohammad Motevaselian < > [email protected] <javascript:>> wrote: > >> Thank you Christoph, now I was able to add and compile my program in >> VOTCA. >> I have another question, when I use any coarse graining method in VOTCA, >> it only utilizes the existing number of threads of a core. If I am >> correct I cannot use multiple cores (like mpi) to run any VOTCA csg >> programs. I was wondering if there is any way to do that or >> it needs to be implemented in VOTCA? >> >> On Wednesday, November 2, 2016 at 6:40:32 PM UTC-5, Christoph Junghans >> wrote: >>> >>> 2016-11-02 17:12 GMT-06:00 Mohammad Motevaselian <[email protected]>: >>> >>> > Hi, >>> > >>> > So far I have worked with VOTCA to do coarse graining and went through >>> the >>> > structure of the codes and scripts (specifically csg_reupdate.cc and >>> > csg_fmatch.cc). >>> > I want now to implement a new C function in VOTCA. Could you please >>> tell me, >>> > where should I specify the name of my new function, such that cmake >>> > understand >>> > that it exists and compile it. >>> All file named <PROGNAME>*.cc get compile into <PROGNAME>, e.g. >>> csg_stat.cc csg_stat_imc.cc csg_stat_imc.h get compile into csg_stat. >>> After adding the file to csg/src/tools you need to re-run cmake. >>> >>> If you need a function in two csg programs, you need to add the file >>> to libcsg (dir csg/src/libcsg) and rerun cmake. >>> >>> Christoph >>> > >>> > thanks >>> > Mohammad >>> > >>> > -- >>> > You received this message because you are subscribed to the Google >>> Groups >>> > "votca" group. >>> > To unsubscribe from this group and stop receiving emails from it, send >>> an >>> > email to [email protected]. >>> > To post to this group, send email to [email protected]. >>> > Visit this group at https://groups.google.com/group/votca. >>> > For more options, visit https://groups.google.com/d/optout. >>> >>> >>> >>> -- >>> Christoph Junghans >>> Web: http://www.compphys.de >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "votca" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To post to this group, send email to [email protected] <javascript:> >> . >> Visit this group at https://groups.google.com/group/votca. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "votca" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/votca. For more options, visit https://groups.google.com/d/optout.
