<div dir="ltr">Hi,<div><br></div><div>That&#39;s mystifying - in normal C the static const float should be in scope every time CUDA compiles the file. Clearly it works fine with other compilers, but we don&#39;t test the CUDA build on Windows. <a href="http://stackoverflow.com/questions/15004955/host-float-constant-usage-in-a-kernel-in-cuda">http://stackoverflow.com/questions/15004955/host-float-constant-usage-in-a-kernel-in-cuda</a> suggests that file static int and float are different for CUDA. <a href="http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#variable-type-qualifiers">http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#variable-type-qualifiers</a> suggests that using static const __device__ float might force MSVC to do what perhaps other compilers achieve via optimization? I&#39;m pretty sure that value isn&#39;t used by GROMACS on the host, so it might just work. Not sure if any of the other qualifiers will help improve speed.</div><div><br></div><div>Mark</div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Nov 23, 2016 at 9:41 AM Wahab Mirco &lt;<a href="mailto:Mirco.Wahab@chemie.tu-freiberg.de">Mirco.Wahab@chemie.tu-freiberg.de</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I&#39;m about to build 2016.1 on a windows machine w/VS2015<br class="gmail_msg">
and hitting a wall:<br class="gmail_msg">
<br class="gmail_msg">
...<br class="gmail_msg">
2&gt;  Building NVCC (Device) object<br class="gmail_msg">
src/gromacs/CMakeFiles/libgromacs.dir/mdlib/nbnxn_cuda/Release/libgromacs_generated_nbnxn_cuda.cu.obj<br class="gmail_msg">
2&gt;  <a href="http://nbnxn_cuda.cu" rel="noreferrer" class="gmail_msg" target="_blank">nbnxn_cuda.cu</a><br class="gmail_msg">
2&gt;<br class="gmail_msg">
2&gt;CUSTOMBUILD : nvcc warning : The &#39;compute_20&#39;, &#39;sm_20&#39;, and &#39;sm_21&#39;<br class="gmail_msg">
architectures are deprecated, and may be removed in a future release<br class="gmail_msg">
(Use -Wno-deprecated-gpu-targets to suppress warning).<br class="gmail_msg">
2&gt;<br class="gmail_msg">
2&gt;D:/LibSrc/Gromacs2016/gromacs-2016.1/src\gromacs/mdlib/nbnxn_cuda/nbnxn_cuda_kernel_utils.cuh(351):<br class="gmail_msg">
error : identifier &quot;c_oneSixth&quot; is undefined<br class="gmail_msg">
2&gt;D:/LibSrc/Gromacs2016/gromacs-2016.1/src\gromacs/mdlib/nbnxn_cuda/nbnxn_cuda_kernel_fermi.cuh(243):<br class="gmail_msg">
error : identifier &quot;c_oneSixth&quot; is undefined in device code<br class="gmail_msg">
...<br class="gmail_msg">
<br class="gmail_msg">
and so on. A quick look into the file reveals &quot;c_oneSixth&quot; at line 78:<br class="gmail_msg">
<br class="gmail_msg">
[nbnxn_cuda_kernel_utils.cuh]<br class="gmail_msg">
...<br class="gmail_msg">
78: static const float  c_oneSixth    = 0.16666667f;<br class="gmail_msg">
79: static const float  c_oneTwelveth = 0.08333333f;<br class="gmail_msg">
...<br class="gmail_msg">
<br class="gmail_msg">
I&#39;m not sure where to start looking for a solution ...<br class="gmail_msg">
<br class="gmail_msg">
Regards<br class="gmail_msg">
<br class="gmail_msg">
Mirco<br class="gmail_msg">
<br class="gmail_msg">
--<br class="gmail_msg">
Gromacs Developers mailing list<br class="gmail_msg">
<br class="gmail_msg">
* Please search the archive at <a href="http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List" rel="noreferrer" class="gmail_msg" target="_blank">http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List</a> before posting!<br class="gmail_msg">
<br class="gmail_msg">
* Can&#39;t post? Read <a href="http://www.gromacs.org/Support/Mailing_Lists" rel="noreferrer" class="gmail_msg" target="_blank">http://www.gromacs.org/Support/Mailing_Lists</a><br class="gmail_msg">
<br class="gmail_msg">
* For (un)subscribe requests visit<br class="gmail_msg">
<a href="https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers" rel="noreferrer" class="gmail_msg" target="_blank">https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers</a> or send a mail to <a href="mailto:gmx-developers-request@gromacs.org" class="gmail_msg" target="_blank">gmx-developers-request@gromacs.org</a>.<br class="gmail_msg">
</blockquote></div>