Caches são estruturas dos processadores modernos que dão ao programador a ilusão de acessar uma memória grande tão rápido quanto uma memória pequena. Com base no princípio de que o software não precisa acessar todos os seus dados ao mesmo tempo nem com a mesma probabilidade.