[gmx-developers] mknb doesn't work on BlueGene with --enable-ppc-sqrt in single precision

Erik Lindahl lindahl at cbr.su.se
Thu Sep 3 19:07:46 CEST 2009


On Sep 3, 2009, at 3:18 AM, Roland Schulz wrote:

> I fixed it in the release branch (thus it will be in 4.0.6).
> How is one supposed to change the kernels in the head branch? Is  
> there some script to generate the generic kernels? The output of  
> mknb -fortran --ppc_invsqrt is different than what is in  
> nb_kernel_power6. So changing something in nb_kernel_power6 requires  
> to change each file?

Uhm... I *think* I generated them with the mknb, but I might have  
changed something in the generator since.

One of the main reasons for abandoning mknb is that it should at least  
be possible to implement a new interaction by simply copying-and- 
changing a routine, rather than first having to understand a stupid  
meta-language. So, while we could of course try to extend/modify it,  
that would just put us back in the same position if all changes *have*  
to be incorporated in mknb.

While it's a neat idea to have a single generator to write exactly the  
code we need for every single architecture, it will probably turn into  
a maintenance nightmare in the long run, in particular since the  
present version of mknb is a horrible hack I wrote years ago. I'd be  
quite interested in good suggestions, in particular since we're  
preparing an overhaul of the nonbonded kernels to enable more features  
like analytic switch/shift, kernels that only compute potentials  
(=speedup!), etc.



More information about the gromacs.org_gmx-developers mailing list