  Lattice spin models are useful for studying critical phenomena and allow the
extraction of equilibrium and dynamical properties. Simulations of such systems
are usually based on Monte Carlo (MC) techniques, and the main difficulty is
often the large computational effort needed when approaching critical points.
In this work, it is shown how such simulations can be accelerated with the use
of NVIDIA graphics processing units (GPUs) using the CUDA programming
architecture. We have developed two different algorithms for lattice spin
models, the first useful for equilibrium properties near a second-order phase
transition point and the second for dynamical slowing down near a glass
transition. The algorithms are based on parallel MC techniques, and speedups
from 70- to 150-fold over conventional single-threaded computer codes are
obtained using consumer-grade hardware.
