For long builds logs (for example firefox: 1.4M lines, with the last >>> near the start at line 700), read_buildlog() can take over 1s (and it used to be close to 2s with the privious release of the rev_lines crate). Timings are longer during a build (either due to cpu use or file fragmentation). Given that b3sum or ripgrep can process the same file in under 100ms, we should be able to speed emlop up here.
Perhaps parsing the file front to back is the right thing to do. Could hopefully use fast string search algos.
For long builds logs (for example firefox: 1.4M lines, with the last
>>>
near the start at line 700),read_buildlog()
can take over 1s (and it used to be close to 2s with the privious release of therev_lines
crate). Timings are longer during a build (either due to cpu use or file fragmentation). Given thatb3sum
orripgrep
can process the same file in under 100ms, we should be able to speed emlop up here.Perhaps parsing the file front to back is the right thing to do. Could hopefully use fast string search algos.