Announcement

Collapse
No announcement yet.

New test-set (md-gromacs) & suite (molecular-dynamics)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by uncle_fungus View Post
    What happens if I run a test on two different machines and they report different scales (1 reports Mflops, the other Gflops)?
    Hmmm good question. At this point there is no support in the merge results functionality for converting result formats..... Though you could just turn all md-gromacs results into mflops or gflops in the results parser and then just have them all be the same. I haven't run into a test yet aside from this where there have been two different scales, but always convert back to one.
    Michael Larabel
    http://www.michaellarabel.com/

    Comment


    • #12
      I think for the moment I'll just convert everything to Gflops in the parser and see what happens.
      I've managed to clean up the output, and I haven't had the parser fail on me yet, so I think that bug is fixed.

      Comment


      • #13
        Ok v0.3 with fixed flop counting, verbosity and result parsing.

        Patch:
        Code:
        diff --git a/pts/test-profiles/md-gromacs.xml b/pts/test-profiles/md-gromacs.xml
        index 548a63d..20da79f 100644
        --- a/pts/test-profiles/md-gromacs.xml
        +++ b/pts/test-profiles/md-gromacs.xml
        @@ -1,6 +1,6 @@
         <PhoronixTestSuite>
                <TestProfile>
        -               <Version>0.2</Version>
        +               <Version>0.3</Version>
                        <TestType>Processor</TestType>
                        <SoftwareType>Scientific</SoftwareType>
                        <License>FREE</License>
        @@ -13,7 +13,7 @@
                        <Version>3.3.3</Version>
                        <TimesToRun>3</TimesToRun>
                        <Executable>gromacs</Executable>
        -               <ResultScale>Gflops</ResultScale>
        +               <ResultScale>GFLOPS</ResultScale>
                        <Proportion>HIB</Proportion>
                        <Description>This test runs a series of molecular dynamics simulations using the GROMACS MD package. This test is capable of running on multiple cores by using the MPICH2 library, and is similar in configuration to the SMP GROMACS cores (FahCore_a1) used by the Folding@HOME distributed computing project.</Description>
                        <ExternalDependencies>build-utilities, fortran-compiler</ExternalDependencies>
        diff --git a/pts/test-resources/md-gromacs/install.sh b/pts/test-resources/md-gromacs/install.sh
        index 2e0e375..21ff98f 100644
        --- a/pts/test-resources/md-gromacs/install.sh
        +++ b/pts/test-resources/md-gromacs/install.sh
        @@ -44,8 +44,12 @@ if [ -d $THIS_DIR/gmxbench ]
           then
             rm -rf $THIS_DIR/gmxbench/
         fi
        +if [ -f $THIS_DIR/flopcount ]
        +  then
        +    rm -f $THIS_DIR/flopcount
        +fi
         mkdir $THIS_DIR/gmxbench
        -tar -xvf gmxbench-3.0.tar.gz -C $THIS_DIR/gmxbench/
        +tar -xvf gmxbench-3.0.tar.gz -C $THIS_DIR/gmxbench/ &>/dev/null
        
         case "\$1" in
         \"villin\")
        @@ -71,18 +75,20 @@ esac
        
         case "\$2" in
         \"mpi\")
        -       $THIS_DIR/gromacs333_/bin/grompp -np \$NUM_CPU_CORES
        -       $THIS_DIR/mpich2_/bin/mpiexec -np \$NUM_CPU_CORES $THIS_DIR/gromacs333_/bin/mdrun 2>&1
        +       $THIS_DIR/gromacs333_/bin/grompp -np \$NUM_CPU_CORES -nov &>/dev/null
        +       $THIS_DIR/mpich2_/bin/mpiexec -np \$NUM_CPU_CORES $THIS_DIR/gromacs333_/bin/mdrun &> $THIS_DIR/flopcount
                ;;
         \"single-node\")
        -       $THIS_DIR/gromacs333_/bin/grompp
        -       $THIS_DIR/gromacs333_/bin/mdrun_single 2>&1
        +       $THIS_DIR/gromacs333_/bin/grompp -nov &>/dev/null
        +       $THIS_DIR/gromacs333_/bin/mdrun_single &> $THIS_DIR/flopcount
                ;;
         *)
                exit
                ;;
         esac
        
        +grep -C 1 'Performance:' $THIS_DIR/flopcount
        +
         cd $THIS_DIR/
         sleep 3" > gromacs
         chmod +x gromacs
        diff --git a/pts/test-resources/md-gromacs/parse-results.php b/pts/test-resources/md-gromacs/parse-results.php
        index c9b3c9f..74f622a 100644
        --- a/pts/test-resources/md-gromacs/parse-results.php
        +++ b/pts/test-resources/md-gromacs/parse-results.php
        @@ -1,5 +1,29 @@
         <?php
        
        +preg_match("/\((.{0,1})Flops\)/", $argv[1], $match);
        +
        +switch($match[1])
        +{
        +       case 'K':
        +               $factor = 0.000001;
        +               break;
        +       case 'M':
        +               $factor = 0.001;
        +               break;
        +       case 'G':
        +               $factor = 1;
        +               break;
        +       case 'T':
        +               $factor = 1000;
        +               break;
        +       case 'P':
        +               $factor = 1000000;
        +               break;
        +       default:
        +               $factor = 0.000000001; //nothing detected, therefore flops
        +               break;
        +}
        +
         $BENCHMARK_RESULTS = substr($argv[1], strpos($argv[1], "Performance:"));
         $BENCHMARK_RESULTS = substr($BENCHMARK_RESULTS, 0, strpos($BENCHMARK_RESULTS, "\n"));
         $array = explode(" ", $BENCHMARK_RESULTS);
        @@ -10,5 +34,5 @@ foreach($array as $value)
                        array_push($array2, $value);
        
         if(!empty($array2[2]))
        -       echo $array2[2];
        +       echo $array2[2] * $factor;
         ?>
        Full download http://fire-salamander.co.uk/pts-tes...cs-0.3.tar.bz2

        Comment


        • #14
          Pushed it into git, but it seems broken for at least the test I tried:

          -------------------------------------------------------
          Program grompp, VERSION 3.3.3
          Source code file: futil.c, line: 345

          File input/output error:
          grompp.mdp
          -------------------------------------------------------

          "Got Coffee, Got Donuts, Got Wasted" (F. Black)

          :-) G R O M A C S (-:

          God Rules Over Mankind, Animals, Cosmos and Such

          :-) VERSION 3.3.3 (-:


          Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
          Copyright (c) 1991-2000, University of Groningen, The Netherlands.
          Copyright (c) 2001-2008, The GROMACS development team,
          check out http://www.gromacs.org for more information.

          This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
          as published by the Free Software Foundation; either version 2
          of the License, or (at your option) any later version.

          :-) /home/michael/pts-benchmark-env/md-gromacs/gromacs333_/bin/mdrun_single (-:

          Option Filename Type Description
          ------------------------------------------------------------
          -s topol.tpr Input Generic run input: tpr tpb tpa xml
          -o traj.trr Output Full precision trajectory: trr trj
          -x traj.xtc Output, Opt. Compressed trajectory (portable xdr format)
          -c confout.gro Output Generic structure: gro g96 pdb xml
          -e ener.edr Output Generic energy: edr ene
          -g md.log Output Log file
          -dgdl dgdl.xvg Output, Opt. xvgr/xmgr file
          -field field.xvg Output, Opt. xvgr/xmgr file
          -table table.xvg Input, Opt. xvgr/xmgr file
          -tablep tablep.xvg Input, Opt. xvgr/xmgr file
          -rerun rerun.xtc Input, Opt. Generic trajectory: xtc trr trj gro g96 pdb
          -tpi tpi.xvg Output, Opt. xvgr/xmgr file
          -ei sam.edi Input, Opt. ED sampling input
          -eo sam.edo Output, Opt. ED sampling output
          -j wham.gct Input, Opt. General coupling stuff
          -jo bam.gct Output, Opt. General coupling stuff
          -ffout gct.xvg Output, Opt. xvgr/xmgr file
          -devout deviatie.xvg Output, Opt. xvgr/xmgr file
          -runav runaver.xvg Output, Opt. xvgr/xmgr file
          -pi pull.ppa Input, Opt. Pull parameters
          -po pullout.ppa Output, Opt. Pull parameters
          -pd pull.pdo Output, Opt. Pull data output
          -pn pull.ndx Input, Opt. Index file
          -mtx nm.mtx Output, Opt. Hessian matrix
          -dn dipole.ndx Output, Opt. Index file

          Option Type Value Description
          ------------------------------------------------------
          -[no]h bool no Print help info and quit
          -nice int 19 Set the nicelevel
          -deffnm string Set the default filename for all file options
          -[no]xvgr bool yes Add specific codes (legends etc.) in the output
          xvg files for the xmgrace program
          -np int 1 Number of nodes, must be the same as used for
          grompp
          -nt int 1 Number of threads to start on each node
          -[no]v bool no Be loud and noisy
          -[no]compact bool yes Write a compact log file
          -[no]sepdvdl bool no Write separate V and dVdl terms for each
          interaction type and node to the log file(s)
          -[no]multi bool no Do multiple simulations in parallel (only with
          -np > 1)
          -replex int 0 Attempt replica exchange every # steps
          -reseed int -1 Seed for replica exchange, -1 is generate a seed
          -[no]glas bool no Do glass simulation with special long range
          corrections
          -[no]ionize bool no Do a simulation including the effect of an X-Ray
          bombardment on your system


          Back Off! I just backed up md.log to ./#md.log.1#

          -------------------------------------------------------
          Program mdrun_single, VERSION 3.3.3
          Source code file: gmxfio.c, line: 706

          Can not open file:
          topol.tpr
          -------------------------------------------------------

          "Got Coffee, Got Donuts, Got Wasted" (F. Black)

          :-) G R O M A C S (-:

          God Rules Over Mankind, Animals, Cosmos and Such

          :-) VERSION 3.3.3 (-:


          Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
          Copyright (c) 1991-2000, University of Groningen, The Netherlands.
          Copyright (c) 2001-2008, The GROMACS development team,
          check out http://www.gromacs.org for more information.

          This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
          as published by the Free Software Foundation; either version 2
          of the License, or (at your option) any later version.

          :-) /home/michael/pts-benchmark-env/md-gromacs/gromacs333_/bin/grompp (-:

          creating statusfile for 1 node...
          d.dppc/
          d.dppc/conf.gro
          d.dppc/grompp.mdp
          d.dppc/topol.top
          d.lzm/
          d.lzm/conf.gro
          d.lzm/cutoff.mdp
          d.lzm/topol.top
          d.lzm/pme.mdp
          d.poly-ch2/
          d.poly-ch2/grompp.mdp
          d.poly-ch2/conf.gro
          d.poly-ch2/topol.top
          d.villin/
          d.villin/conf.gro
          d.villin/topol.top
          d.villin/grompp.mdp

          ====================================
          GROMACS MD Benchmark (Run 3 of 3)
          ====================================

          cd: 30: can't cd to /home/michael/pts-benchmark-env/md-gromacs/gmxbench/d.poly-ch2/
          Option Filename Type Description
          ------------------------------------------------------------
          -f grompp.mdp Input, Opt. grompp input file with MD parameters
          -po mdout.mdp Output grompp input file with MD parameters
          -c conf.gro Input Generic structure: gro g96 pdb tpr tpb tpa
          xml
          -r conf.gro Input, Opt. Generic structure: gro g96 pdb tpr tpb tpa
          xml
          -rb conf.gro Input, Opt. Generic structure: gro g96 pdb tpr tpb tpa
          xml
          -n index.ndx Input, Opt. Index file
          -deshuf deshuf.ndx Output, Opt. Index file
          -p topol.top Input Topology file
          -pp processed.top Output, Opt. Topology file
          -o topol.tpr Output Generic run input: tpr tpb tpa xml
          -t traj.trr Input, Opt. Full precision trajectory: trr trj
          -e ener.edr Input, Opt. Generic energy: edr ene

          Option Type Value Description
          ------------------------------------------------------
          -[no]h bool no Print help info and quit
          -nice int 0 Set the nicelevel
          -[no]v bool no Be loud and noisy
          -time real -1 Take frame at or first after this time.
          -np int 1 Generate statusfile for # nodes
          -[no]shuffle bool no Shuffle molecules over nodes
          -[no]sort bool no Sort molecules according to X coordinate
          -[no]rmvsbds bool yes Remove constant bonded interactions with virtual
          sites
          -load string Releative load capacity of each node on a
          parallel machine. Be sure to use quotes around
          the string, which should contain a number for
          each node
          -maxwarn int 10 Number of warnings after which input processing
          stops
          -[no]check14 bool no Remove 1-4 interactions without Van der Waals
          -[no]zero bool no Set parameters for bonded interactions without
          defaults to zero instead of generating an error
          -[no]renum bool yes Renumber atomtypes and minimize number of
          atomtypes


          -------------------------------------------------------
          Program grompp, VERSION 3.3.3
          Source code file: futil.c, line: 345

          File input/output error:
          grompp.mdp
          -------------------------------------------------------
          Michael Larabel
          http://www.michaellarabel.com/

          Comment


          • #15
            Which test did you try to run?

            Comment


            • #16
              Poly-CH2 single threaded

              and it also occurs with the villin.
              Michael Larabel
              http://www.michaellarabel.com/

              Comment


              • #17
                -------------------------------------------------------
                Program mdrun_single, VERSION 3.3.3
                Source code file: gmxfio.c, line: 706

                Can not open file:
                topol.tpr
                -------------------------------------------------------



                Err I've now tried it with all four and they all fail.
                Michael Larabel
                http://www.michaellarabel.com/

                Comment


                • #18
                  Oh dear. I'm not sure what's broken that.

                  Comment


                  • #19
                    The tests all work for me.

                    This is the problem:
                    cd: 30: can't cd to /home/michael/pts-benchmark-env/md-gromacs/gmxbench/d.poly-ch2/
                    It looks like the gmxbench-3.0.tar.gz isn't being extracted to the right place.

                    Edit: I've tried it on another machine which is using the latest git code and it works fine too.
                    Last edited by uncle_fungus; 05-07-2008, 02:24 PM. Reason: New info

                    Comment


                    • #20
                      Hmmm I still can't get it working for me. I've wiped out everything and did a fresh install, etc.
                      Michael Larabel
                      http://www.michaellarabel.com/

                      Comment

                      Working...
                      X