[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