Appendix F: expert-level options
This section catalogs very advanced functionality that is stable and well-tested, but switched off by default.
CUDA GPU support
Several functions in Spinach can make use of CUDA GPUs. If your computer has a recent NVidia graphics card, enabling that functionality may be beneficial. This is done by adding 'gpu' to the enable switch:
sys.enable={'gpu'};
Spinach kernel modules that can make use of GPU arithmetic are:
- Matrix exponential calculation in propagator.m function.
Numerical pseudocontact shift solvers also support GPUs for the Fourier solver option. Is is enabled in ipcs.m and kpcs.m by specifying
options.gpu=1;
For the typical 128x128x128 point grids used in paramagnetic centre probability density reconstructions from PCS, using a Tesla K40 card results in up to an order of magnitude acceleration relative to 32 CPU cores.