Details
-
Improvement
-
Resolution: Fixed
-
Critical
-
7.1.0
-
Security Level: Public
-
1
Description
Originally I thought the "bucket backed cache feature" in Eveniting regressed and is was no longer working in Eventing I expected to have at least a 18X performance improvement when I run with "cache": true.
Testing showed I was wrong it worked, however all tests were typically for small bytes/chars thus the ticket closed.
However upon further research the problem indeed exists but only for very large documents (the caching operation actually slows down as documents approach the largest store size of 20MB). Refer to "current cache speedup" now if we avoid v8::JSON::Parse by catching a preparse (onetime parsed) handle we should get much better performance see "potential speedup v8 handle is cached"
doc size | current cache speedup | potential speedup v8 handle is cached |
---|---|---|
7 | 20.7X | 21.04X |
1041 | 14.52X | 20.63X |
2065 | 12.14X | 19.39X |
4113 | 8.03X | 19.02X |
8209 | 5.51X | 17.96X |
16401 | 3.41X | 15.25X |
32785 | 2.74X | 12.41X |
65553 | 2.44X | 14.45X |
131089 | 2.08X | 23.04X |
262161 | 1.99X | 24.45X |
524305 | 1.68X | 16.62X |
1048593 | 1.61X | 16.68X |
2097169 | 1.64X | 10.17X |
4194321 | 1.85X | 22.10X |
8388625 | 1.68X | 19.56X |
16777233 | 1.42X | 18.50X |
See BucketBackedCachePerfForDocSizes.json for "current cache speedup" test. Also the ANALYSIS.log used to create the above table.