[gmx-developers] C++ in kernels
Erik Lindahl
erik.lindahl at scilifelab.se
Fri Jan 10 22:47:49 CET 2014
Hi,
Yes. Remember that after a lot of deliberation we agreed on a compromise to allow _very_ limited amounts of C++. This ended up being pushed to accept a lot more C++ (including Boost, exceptions, etc.). The decision we made about only allowing single templates also appear to have been broken rapidly...
Remember that most developers are not professional C++ programmers, and I’m a bit worried that large parts of the code are turning into pretty heavy C++. That might be a necessary evil (I _do_ realize it gives us lots of other features), but before moving this any further it is time to show that all the other C++ code we have is stable on all architectures, that it does not cause portability issues (for instance, that all the C++ compilers support SIMD instruction sets well enough), that it does not hurt performance, and that it works for the vast majority of developers. Remember that we still haven’t released any C++ version of Gromacs yet - 5.0 will be the big test there.
The question is not whether performance is fine for a vanilla compiler on Intel, but whether it is guaranteed not to suffer over 20 different architectures with lots of different compilers!
Cheers,
Erik
On 10 Jan 2014, at 22:21, Roland Schulz <roland at utk.edu> wrote:
> Hi,
>
> is there any reason to limit C++ in performance critical code as long as it doesn't impact performance? So far it seems that C++ hasn't been used in any compute intensive functions so I wanted to check. Specially we would like to change the variable says arrays in e.g nbnxn_pairlist_t (those with _nalloc) to stl::vector. This would simplify the code and would it make it easier to copy the data for MIC offload.
>
> Roland
>
> --
> ORNL/UT Center for Molecular Biophysics cmb.ornl.gov
> 865-241-1537, ORNL PO BOX 2008 MS6309
> --
> 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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20140110/b745ea51/attachment.html>
More information about the gromacs.org_gmx-developers
mailing list