  We introduce a universal sparse preconditioner that accelerates geometry
optimisation and saddle point search tasks that are common in the atomic scale
simulation of materials. Our preconditioner is based on the neighbourhood
structure and we demonstrate the gain in computational efficiency in a wide
range of materials that include metals, insulators and molecular solids. The
simple structure of the preconditioner means that the gains can be realised in
practice not only when using expensive electronic structure models but also for
fast empirical potentials. Even for relatively small systems of a few hundred
atoms, we observe speedups of a factor of two or more, and the gain grows with
system size. An open source Python implementation within the Atomic Simulation
Environment is available, offering interfaces to a wide range of atomistic
codes.
