2 it uses dependence analysis and a simple cache model to drive its optimizations