prepared the nbnxn code for non-x86 SIMD
authorBerk Hess <hess@kth.se>
Tue, 8 Jan 2013 10:46:40 +0000 (11:46 +0100)
committerGerrit Code Review <gerrit@gerrit.gromacs.org>
Sat, 12 Jan 2013 21:32:41 +0000 (22:32 +0100)
commit3e239d05a055ea6139735c19f1e4e64929f3f940
tree652ae10e34991034e97307ff588808b1215a3ebc
parent64adf0c27eff380409c8eb80c5b22859fb274708
prepared the nbnxn code for non-x86 SIMD

Put #ifdef GMX_X86_SSE around all x86 specific code.
Memory alignment is determined instead of hard coded.
The diagonal exclusion masks are now calculated in a generic fashion.
Also made the GPU setup constants fully macro driven.
Added documentation for most of the nbnxn macro setup.

Change-Id: Ib59fe5cec3cf2402f4701e58de59f5707cb797b3
15 files changed:
include/gmx_simd_macros.h
include/types/nb_verlet.h
include/types/nbnxn_pairlist.h
src/mdlib/nbnxn_atomdata.c
src/mdlib/nbnxn_consts.h
src/mdlib/nbnxn_cuda/nbnxn_cuda_kernel.cuh
src/mdlib/nbnxn_cuda/nbnxn_cuda_kernel_legacy.cuh
src/mdlib/nbnxn_cuda/nbnxn_cuda_kernel_utils.cuh
src/mdlib/nbnxn_internal.h
src/mdlib/nbnxn_kernels/nbnxn_kernel_gpu_ref.c
src/mdlib/nbnxn_kernels/nbnxn_kernel_simd_2xnn_outer.h
src/mdlib/nbnxn_kernels/nbnxn_kernel_simd_4xn_inner.h
src/mdlib/nbnxn_kernels/nbnxn_kernel_simd_4xn_outer.h
src/mdlib/nbnxn_kernels/nbnxn_kernel_simd_utils.h
src/mdlib/nbnxn_search.c