]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
grep: replace the internal queue with a ring buffer
authorKyle Evans <kevans@FreeBSD.org>
Wed, 9 Dec 2020 05:27:45 +0000 (05:27 +0000)
committerKyle Evans <kevans@FreeBSD.org>
Wed, 9 Dec 2020 05:27:45 +0000 (05:27 +0000)
commitdf546c3b730d4abcace1da24226bd5f01280588e
tree52b01dd3a801b1ab48b3cae31f5ed71a51346be4
parent281412ce7bfaf058ae9ea0edf20e13a52f5b37dc
grep: replace the internal queue with a ring buffer

We know up front how many items we can have in the queue (-B/Bflag), so
pay the cost of those particular allocations early on.

The reduced queue maintenance overhead seemed to yield about an ~8%
improvement for my earlier `grep -C8 -r closefrom .` test.

MFC after: 2 weeks
usr.bin/grep/grep.c
usr.bin/grep/grep.h
usr.bin/grep/queue.c