Chromium Code Reviews
DescriptionInsertion by one sometimes gives dramatically better results than
insert + sort + merge.
I used components_perftests/HQPPerfTestOnePopularURL.Backspacing for my
measurements. As you can see, sometimes inserting range by one can be up to 20
times faster. This big of a difference seems unacceptable even for the worst case.
This is why I think we need better algorithm for bulk insert.
Measurement results:
Buffered <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[ RUN ] HQPPerfTestOnePopularURL.Backspacing
54-50= [12,4,4,4,4,] ms
49-45= [4,5,5,16,35,] ms
44-40= [35,34,32,32,36,] ms
39-35= [31,33,32,35,31,] ms
34-30= [35,36,32,32,37,] ms
29-25= [28,32,30,28,28,] ms
24-20= [28,30,32,33,30,] ms
19-15= [29,33,31,37,30,] ms
14-10= [29,40,26,25,25,] ms
9-5= [27,34,23,22,23,] ms
4-0= [23,24,25,30,1,] ms
By one <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[ RUN ] HQPPerfTestOnePopularURL.Backspacing
54-50= [12,5,4,4,4,] ms
49-45= [4,5,5,17,43,] ms
44-40= [39,34,38,34,36,] ms
39-35= [39,34,36,34,33,] ms
34-30= [32,35,34,33,34,] ms
29-25= [30,34,29,31,33,] ms
24-20= [31,32,30,30,34,] ms
19-15= [30,36,32,32,30,] ms
14-10= [34,46,29,27,27,] ms
9-5= [29,37,25,24,26,] ms
4-0= [24,26,25,34,1,] ms
Insert merge <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[ RUN ] HQPPerfTestOnePopularURL.Backspacing
54-50= [12,4,4,4,4,] ms
49-45= [4,5,5,37,34,] ms
44-40= [38,34,33,32,33,] ms
39-35= [33,34,32,32,34,] ms
34-30= [32,35,32,56,834,] ms
29-25= [33,33,31,34,29,] ms
24-20= [29,32,30,29,29,] ms
19-15= [30,33,31,30,32,] ms
14-10= [49,812,31,26,28,] ms
9-5= [54,803,24,25,26,] ms
4-0= [24,28,51,839,1,] ms
BUG=682249
Patch Set 1 #
Messages
Total messages: 3 (3 generated)
|
||||||||||||||||||||||||||||