Você pode estar sem partes disponíveis da memória.
Por exemplo, o programa pode exigir 300MB de memória, e o sistema pode mostrar 500MB livres, mas não há um bloco de 300MB disponível, há dois blocos de 200MB e um bloco de 100MB.
Embora eu ainda não saiba o que consumiria 4 GB de memória ...