Official request: Please make GNU grep the default
Daniel Braniss
danny at cs.huji.ac.il
Sat Aug 14 08:44:34 UTC 2010
> This message is in MIME format. The first part should be readable text,
> while the remaining parts are likely unreadable without MIME-aware tools.
>
> --56599777-398594934-1281714095=:35204
> Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
>
> On Fri, 13 Aug 2010, Gabor Kovesdan wrote:
>
> > Em 2010.08.13. 10:43, Doug Barton escreveu:
> >> My reason is simple, performance. While doing some portmaster work
> >> recently I was regression testing some changes I made to the --index*
> >> options and noticed that things were dramatically slower than the
> >> last time I tested those features. Thinking that I had made a
> >> programming mistake I dug into my code, and while the regexps that I
> >> was using could be tuned for slightly better performance the problem
> >> was not in my code. I then installed textproc/gnugrep to compare,
> >> and the differences were very dramatic using a highly pessimized test
> >> case (finding a match on the last line of INDEX). The script I used
> >> to test is at http://people.freebsd.org/~dougb/grep-time-trial.sh.txt
> >> and a typical result was:
> >>
> >> GNU grep
> >> Elapsed time: 2 seconds
> >>
> >> BSD grep
> >> Elapsed time: 47 seconds
> >>
> > Ok, I'll take care of this soon, and make GNU grep default, again with
> > a knob to build BSD grep. I agree with you that we cannot allow such a
> > big performance drawback but I my measures only showed significant
> > differences for very big searches and I didn't imagine that it could
> > add up to such a big diference. I'm sorry for the bad decision I took
> > making it default.
>
> This should trim some time off BSD grep. It removes the lock/unlock for
> each fgetc() by locking/unlocking the file once. stdio can be slow.
>
> You probably want to replace flockfile() with ftrylockfile() if threads
> will be involved at some point (threading or making a libgrep that may
> be used in a threaded process).
why would you want to lock a file for reading anyways?
BTW, back in the jurasic age, ATT/Bell had this poster:
Reach out and GREP someone!
danny
More information about the freebsd-current
mailing list