I wonder if this varies by OS... I've just tried every one of the windows releases (they have both gnu and msvc compiled versions) on the ripgrep site and I can't find a single one which isn't at least 60% slower than standard GNU grep build for MinGW when it comes to searching our codebase of CPP files for a literal string.
$ time rg -F -cpp wsregex_iterator PGApplicationInformation\PGHostedFileHelper.cpp:1
real 0m3.690s user 0m0.015s sys 0m0.031s
ben.staniford@L-8N7F4M2 MINGW64 /z/WindowsClient (bs/92539/CrashServiceNowDiscoverScan) $ time grep -r --include=*.{cpp,hpp,h} wsregex_iterator * PGApplicationInformation/PGHostedFileHelper.cpp: auto itPs1Files = std::wsregex_iterator(tmp.begin(), tmp.end(), rgxPs1File);
real 0m2.286s user 0m0.171s sys 0m1.921s
So ripgrep seems to kinda suck on Windows although it's not as bad as silver searcher which takes more than 5x longer than grep to do this search..
Comment
I wonder if this varies by OS... I've just tried every one of the windows releases (they have both gnu and msvc compiled versions) on the ripgrep site and I can't find a single one which isn't at least 60% slower than standard GNU grep build for MinGW when it comes to searching our codebase of CPP files for a literal string.
$ time rg -F -cpp wsregex_iterator
PGApplicationInformation\PGHostedFileHelper.cpp:1
real 0m3.690s
user 0m0.015s
sys 0m0.031s
ben.staniford@L-8N7F4M2 MINGW64 /z/WindowsClient (bs/92539/CrashServiceNowDiscoverScan)
$ time grep -r --include=*.{cpp,hpp,h} wsregex_iterator *
PGApplicationInformation/PGHostedFileHelper.cpp: auto itPs1Files = std::wsregex_iterator(tmp.begin(), tmp.end(), rgxPs1File);
real 0m2.286s
user 0m0.171s
sys 0m1.921s
So ripgrep seems to kinda suck on Windows although it's not as bad as silver searcher which takes more than 5x longer than grep to do this search..