Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(108)

Issue 15027008: Speed improvements to SubstringSetMatcher (Closed)

Created:
7 years, 7 months ago by vabr (Chromium)
Modified:
7 years, 7 months ago
Reviewers:
battre
CC:
chromium-reviews, Aaron Boodman, chromium-apps-reviews_chromium.org
Visibility:
Public.

Description

Speed improvements to SubstringSetMatcher This is a 2nd attempt to reland https://codereview.chromium.org/14780003/ which was reverted as https://codereview.chromium.org/15045002/, relanded as https://codereview.chromium.org/15059003 and reverted again as https://codereview.chromium.org/15027007/. Patch set 1 here is identical with p.s. 2 in https://codereview.chromium.org/15059003. This time it failed on Win XP debug bot's unit_tests, throwing assertions related to sorting patterns in the SubstringSetMatcher: c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\algorithm(3657) : Assertion failed: invalid operator< c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xstring(78) : Assertion failed: string iterator not dereferencable c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xstring(79) : Assertion failed: "Standard C++ Libraries Out of Range" && 0 Affected unit tests: SubstringSetMatcherTest.TestMatcher and WebRequestRulesRegistryTest.GetMatchesCheckFulfilled History of previous descriptions: This is an attempt to reland https://codereview.chromium.org/14780003/ which was reverted as https://codereview.chromium.org/15045002/. Patch set 1 here is identical with p.s. 7 in https://codereview.chromium.org/14780003/. The failing buildbot was linux compile (dbg), so trying it here explicitly. Original description: The main one is coputing the Aho-Corasick tree size in advance. Also contained are code clean-ups and minor optimisations, like removing HasEdge/GetEdge sequences, or adding const to aid compiler optimisations. This was tested on a benchmark adding 20k+ patterns. It showed a reduction of the running time by 30%. BUG=236368 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=200253

Patch Set 1 #

Total comments: 2

Patch Set 2 : Fix errors detected by the win dbg trybot #

Unified diffs Side-by-side diffs Delta from patch set Stats (+123 lines, -55 lines) Patch
M extensions/common/matcher/substring_set_matcher.h View 4 chunks +15 lines, -11 lines 0 comments Download
M extensions/common/matcher/substring_set_matcher.cc View 1 9 chunks +108 lines, -44 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
vabr (Chromium)
Hi Dominic, Could you please take a quick look? Note that you have already reviewed ...
7 years, 7 months ago (2013-05-15 06:58:59 UTC) #1
vabr (Chromium)
https://codereview.chromium.org/15027008/diff/1/extensions/common/matcher/substring_set_matcher.cc File extensions/common/matcher/substring_set_matcher.cc (right): https://codereview.chromium.org/15027008/diff/1/extensions/common/matcher/substring_set_matcher.cc#newcode19 extensions/common/matcher/substring_set_matcher.cc:19: return a->pattern() <= b->pattern(); This needs to be strict, ...
7 years, 7 months ago (2013-05-15 07:04:16 UTC) #2
battre
Cool. LGTM.
7 years, 7 months ago (2013-05-15 07:24:09 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vabr@chromium.org/15027008/7001
7 years, 7 months ago (2013-05-15 07:32:08 UTC) #4
commit-bot: I haz the power
7 years, 7 months ago (2013-05-15 13:21:44 UTC) #5
Message was sent while issue was closed.
Change committed as 200253

Powered by Google App Engine
This is Rietveld 408576698