А что плохого в линейной памяти? 16 битный х86 имел нелинейную, и было не очень круто как-то
Плохо то, что на самом деле она нелинейная и процессор ей как-то сам распоряжается, на основе своих алгоритмов и эвристик. Соответственно делая оптимизатор приходится учитывать это и что-то выдумывать, чтобы процессор быстрее отрабатывал твой код