next up previous contents
Next: Computational Costs Up: Castep Previous: Castep   Contents


Parallelisation

Since the eigenstates at different k-points are almost independent of each other, interacting only via the density, it is natural to distribute the data over the k-points. Unfortunately the number of k-points required decreases with increasing system size, and for large systems $N_k$ is O(1). This means that on HPC machines it is rarely possible to distribute the data and workload efficiently using k-point parallelism alone.

A further distribution strategy used by Castep is to distribute the data by the Fourier components, i.e. the `G-vectors'. Since the number of plane-waves is often large, and grows with simulation cell size, this enables efficient data distribution and load-balancing.

By combining both k- and G-parallelism Castep has demonstrated excellent scaling properties from 1 to O(100) nodes across many different computer architectures.



Sarfraz A Nadeem 2008-09-01