The present CASTEP code is written in Fortran 95 using a carefully designed modular structure. It was written to be highly portable, and with parallel computing in mind. It can run on all levels of computing hardware from desktop pcs, through to HPC clusters and National-level supercomputers.
CASTEP employs three levels of parallelism: G-vectors (ie basis-set), k-points, and bands. For certain calculations an additional "Task farming" parallelism is available. All of these parallel strategies may be employed simultaneously to achieve good scaling to well over 1000 processing elements.
For more information on parallelism in CASTEP see the following talk from the CASTEP workshop:
- CASTEP in Parallel Prof Stewart Clark (Durham)