[gmx-developers] [RFC] setting up dependency between GMX_OPENMP and TNG_USE_OPENMP

David van der Spoel spoel at xray.bmc.uu.se
Tue Feb 11 19:10:14 CET 2014

On 2014-02-11 14:40, Roland Schulz wrote:
> Hi,
> why does TNG_USE_OPENMP even exist? Why would a user want to set
> TNG_USE_OPENMP to something other than GMX_OPENMP? If it is really
> needed I suggest making TNG_USE_OPENMP a multi-choice (on, off, auto),
> where auto is the default and auto takes the value from GMX_OPENMP.
I guess because tng is also distributed as a separate package.

> Roland
> On Mon, Feb 10, 2014 at 1:36 PM, Mark Abraham <mark.j.abraham at gmail.com
> <mailto:mark.j.abraham at gmail.com>> wrote:
>     Hi,
>     Good question. I think it may be unsolvable in the current setup.
>     The TNG CMakeLists.cmake declares TNG_USE_OPENMP in its cache in the
>     normal way, but since there is only one cache and GROMACS accesses
>     that file with add_subdirectory, that makes that variable exist on
>     the GROMACS cache. Now getting that variable to track GMX_OPENMP
>     unless set by the user might be hard.
>     Using gmx_dependent_option seems like it might work, but I have not
>     yet put enough time into reading/testing how those functions work. I
>     am not sure from reading the descriptions if it can implement "copy
>     this value unless at some point these two values differed." Unless
>     Teemu has some insight from how he built these, we might have to
>     experiment and then document/extend accordingly.
>     Alternative: I believe we can give TNG its own cache by using what
>     is called an external project. Since I don't think we need a
>     separate cache variable in the GROMACS configuration UI for this
>     OpenMP setting, this should side-step the above, because the TNG
>     CMake will always see the parent project set the OpenMP in the TNG
>     cache. Might have other benefits also.
>     Mark
>     On Feb 10, 2014 2:49 PM, "Szilárd Páll" <pall.szilard at gmail.com
>     <mailto:pall.szilard at gmail.com>> wrote:
>         Hi,
>         I'm trying to fix issue #1432, but I realized that I know very
>         little
>         about the gmxOptionUtilities cmake module, so I thought I'd ask for
>         comments and suggestions.
>         Here's what I need to do (ideally/if possible):
>         - The value of the TNG_USE_OPENMP cache variable should always have
>         the same value as GMX_OPENMP (even if the latter gets changed
>         multiple
>         times) *unless*
>         - The user manually set a value for the TNG_USE_OPENMP variable.
>         I'm guessing I should use the gmx_dependent_option() macro, but I'm
>         not sure how. Tips would be appreciated!
>         Cheers,
>         --
>         Szilárd
>         --
>         Gromacs Developers mailing list
>         * Please search the archive at
>         http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List
>         before posting!
>         * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>         * For (un)subscribe requests visit
>         https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers
>         or send a mail to gmx-developers-request at gromacs.org
>         <mailto:gmx-developers-request at gromacs.org>.
> --
> ORNL/UT Center for Molecular Biophysics cmb.ornl.gov <http://cmb.ornl.gov>
> 865-241-1537, ORNL PO BOX 2008 MS6309

David van der Spoel, Ph.D., Professor of Biology
Dept. of Cell & Molec. Biol., Uppsala University.
Box 596, 75124 Uppsala, Sweden. Phone:	+46184714205.
spoel at xray.bmc.uu.se    http://folding.bmc.uu.se

More information about the gromacs.org_gmx-developers mailing list