To learn, it must remember every step. That's the wall.
To improve, a model runs your input forward through every layer — and to learn from its mistake, it must keep every one of those in-between results, ready for the backward pass. The math was never the problem. The memory is. On a deep enough model, holding the whole forward pass at once is exactly what runs you out of room.