grep에 --mmap 옵션이 사라진지 오래됐다. 순차 읽기는 페이지 폴트만 유발하므로 TLB 미스에 의한 비용이 더 크다는 것이다. .... ..라고 해서 주섬주섬 뭘 짜서 실험했더니 순차 파일 처리에 mmap이 두 배 빠르다;;
man 페이지에 따르면 MAP_POPULATE가 미리 폴트 시켜놓는다고 했는데 이걸 끄나 켜나 빠르다.. 아마도 fopen 류는 신경쓰지 않으면 멤카피 오버헤드가 실험에 영향을 끼친 것 같고, 또는 프라이빗 할당에 있어서 저 플래그가 디폴트일지도 모르겠다.
...라고 찾아보니
즉슨 .. 이런게 나왔다..
..라고 쓰고 디스어셈블 보니까 O3가 루프 최적화 하면서 프리딕션을 올린 것 같음... (정확히 해석은 못했음)