Mpi serialization works but not detected by mpi executables

Member Site Forums Rosetta 3 Rosetta 3 – Build/Install Mpi serialization works but not detected by mpi executables

Viewing 1 reply thread
  • Author
    Posts
    • #3351
      Anonymous

        I tried it with rna_denovo.mpi.linuxgccrelease and it threw an error after searching for database.

         

        core.init: (0) Checking for fconfig files in pwd and ./rosetta/flags

        core.init: (0) Rosetta version: rosetta.binary.linux.release-231 r231 2019.35+release.767c1ea 767c1ea25c572fbc078db45ad65dddb507240ad3 https://www.rosettacommons.org 2019-08-30T12:04:30.133343

        core.init: (0) command: rna_denovo.mpi.linuxgccrelease @flags

        basic.random.init_random_generator: (0) ‘RNG device’ seed mode, using ‘/dev/urandom’, seed=1660569085 seed_offset=0 real_seed=1660569085

        basic.random.init_random_generator: (0) RandomGenerator:init: Normal mode, seed=1660569085 RG_type=mt19937

        core.init: (0) Resolved executable path: /home/harald/Documents/rosetta_bin_linux_3.11_bundle/rosetta_bin_linux_2019.35.60890_bundle/main/source/build/src/release/linux/4.15/64/x86/gcc/7/mpi/rna_denovo.mpi.linuxgccrelease

        core.init: (0) Looking for database based on location of executable: /home/harald/Documents/rosetta_bin_linux_3.11_bundle/rosetta_bin_linux_2019.35.60890_bundle/main/database/

        protocols.jd3.JobDistributorFactory: (0) [ ERROR ] JD3 cannot be used with MPI but without serialization; you must add “extras=mpi,serlization” to your ./scons.py build command

         

        But when i run rna_denovo.mpiserializaition.linuxgccrelase everything works fine, my job finishes optimally. Problem is some applications do not work with mpiserialization and i need mpi executables to work.

        what could be the issue?

      • #15160
        Anonymous

          The mpiserialization executable that you said works fine IS MPI.  It just ALSO has serialization (which is used to send data between nodes).  Just use that.

          • #15162
            Anonymous

              So wait, remodel in mpi serialization works by employing all but 1 core to do one iteration at a time, compared to rna_denovo where there are x-1 cores and iterations being executed? I tought serialization was just sending multiple iterations to multiple cores while mpi was the former.

            • #15163
              Anonymous

                Serialization is used for JD3, which hasn’t been published yet.  rna_denovo uses this Job Distribution machinery to better divide work (which used to be a set of python scripts).  For JD3 apps, there are a few nodes that are doing writing of PDBs vs instructions coming from the head node to write pdbs for JD2.  It’s much, much more complicated than standard JD2 apps like remodel.  Different cores can run different sets of protocols, wheras for JD2  – every core essentially runs on the same thing, but perhaps a different input PDB.

                However, you should be able to run the serialization build with JD2 apps.  The serialization build just has extra lines compiled for serializable objects.  IE – objects that are able to be transmitted from one node to another. 

              • #15652
                Anonymous

                  Hi,

                      I have the exact same problem when running rna_denovo.mpi.linuxgccrelease. But I do not see a rna_denovo.mpiserializaition.linuxgccrelase executable. So is it something wrong with the compiling? By adding “extras=mpi,serlization”? Thank you.

                  Best,

                  Dan

                • #15719
                  Anonymous

                    Yes, the middle bit of application name is the list of extras. So rna_denovo.mpi.linuxgccrelease was compiled with “extras=mpi” and if you want rna_denovo.mpiserializaition.linuxgccrelase you would need to compile with “extras=mpi,serlization”

              Viewing 1 reply thread
              • You must be logged in to reply to this topic.