You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Tomek Rękawek (JIRA)" <ji...@apache.org> on 2016/12/05 12:21:58 UTC
[jira] [Comment Edited] (OAK-5222) Optimize the multiplexing node
store
[ https://issues.apache.org/jira/browse/OAK-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15722121#comment-15722121 ]
Tomek Rękawek edited comment on OAK-5222 at 12/5/16 12:21 PM:
--------------------------------------------------------------
[~rombert], the low-hanging fruit is to switch {{Map<MountedNodeStore, NodeState>}} in the MultiplexingNodeState/Builder implementations to {{Map<NodeStore, NodeState>}}. This way we'll be dependent on the number of configured node stores, rather than number of mounts. We'll always have #mounts >= #node stores, so it should help.
On my machine, the throughput for Oak-Segment-Tar is 4772:
{noformat}
$ java -jar target/oak-run-1.6-SNAPSHOT.jar benchmark ReadDeepTreeTest Oak-Segment-Tar
# ReadDeepTreeTest C min 10% 50% 90% max N
Oak-Segment-Tar 1 10 11 12 15 26 4772
{noformat}
was (Author: tomek.rekawek):
[~rombert], the low-hanging fruit is to switch {{Map<MountedNodeStore, NodeState>}} in the MultiplexingNodeState/Builder implementations to {{Map<NodeStore, NodeState>}}. This way we'll be dependent on the number of configured node stores, rather than number of mounts. We'll always have #mounts >= #node stores, so it should help.
On my machine, the throughput for Oak-Segment-Tar is 4772:
{noformat}
$ java -jar target/oak-run-1.6-SNAPSHOT.jar benchmark ReadDeepTreeTest Oak-Segment-Tar
Oak-Segment-Tar 1 10 11 12 15 26 4772
{noformat}
> Optimize the multiplexing node store
> ------------------------------------
>
> Key: OAK-5222
> URL: https://issues.apache.org/jira/browse/OAK-5222
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: core
> Reporter: Tomek Rękawek
> Assignee: Tomek Rękawek
> Fix For: 1.6
>
>
> I added support for the multiplexing node store for the oak-run benchmark fixtures. It seems that the performance in ReadDeepTreeTest is linearly dependent on the mount counts:
> {noformat}
> Mounts N
> 0 729
> 1 402
> 2 287
> 3 209
> 4 188
> 5 154
> 6 133
> 7 126
> 8 104
> 9 100
> 10 85
> 20 46
> {noformat}
> {{N}} - throughput in 60 seconds. Following command was used:
> {noformat}
> $ java -jar target/oak-run-1.6-SNAPSHOT.jar benchmark ReadDeepTreeTest Oak-Multiplexing --mounts=10
> {noformat}
> It should be possible to improve this, so we won't have a noticeable performance decrease for 1000 mounts.
> //cc: [~rombert]
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)