[
https://issues.apache.org/jira/browse/TINKERPOP-2161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16770999#comment-16770999
]
Jorge Bay commented on TINKERPOP-2161:
--------------------------------------
I've pushed a commit to optimize the write path by remove the use of composite
buffers: https://github.com/apache/tinkerpop/tree/write-TINKERPOP-2161-1
With the current approach, I've obtained the following serialization benchmark
results:
{code}
Benchmark Mode Cnt Score
Error Units
SerializationBenchmark.testReadMessage1Binary thrpt 20 4699805.045 ±
289657.843 ops/s
SerializationBenchmark.testReadMessage1GraphSON thrpt 20 40095.029 ±
1921.030 ops/s
SerializationBenchmark.testReadMessage2Binary thrpt 20 970825.257 ±
32252.988 ops/s
SerializationBenchmark.testReadMessage2GraphSON thrpt 20 28624.405 ±
1571.170 ops/s
SerializationBenchmark.testWriteBytecodeBinary thrpt 20 462364.186 ±
17254.689 ops/s
SerializationBenchmark.testWriteBytecodeGraphSON thrpt 20 636226.623 ±
52341.880 ops/s
SerializationBenchmark.testWriteResponseBinary thrpt 20 601825.324 ±
61370.149 ops/s
SerializationBenchmark.testWriteResponseGraphSON thrpt 20 642978.971 ±
29259.051 ops/s
{code}
It's an improvement but there is still some way to go.
I'll try another approach on a different branch that will involve changing the
binary serialization API a little bit but I think it will be worth it.
> GraphBinary: Write serialization performance issue
> ---------------------------------------------------
>
> Key: TINKERPOP-2161
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2161
> Project: TinkerPop
> Issue Type: Bug
> Components: io
> Affects Versions: 3.4.0
> Reporter: Jorge Bay
> Priority: Major
>
> There seems to be a performance issue regarding the write path in GraphBinary:
> {code}
> Benchmark Mode Cnt Score
> Error Units
> SerializationBenchmark.testReadMessage1Binary thrpt 20 4800832.981 ±
> 430909.102 ops/s
> SerializationBenchmark.testReadMessage1GraphSON thrpt 20 34109.669 ±
> 5231.210 ops/s
> SerializationBenchmark.testReadMessage2Binary thrpt 20 827266.707 ±
> 78214.379 ops/s
> SerializationBenchmark.testReadMessage2GraphSON thrpt 20 18462.919 ±
> 2640.093 ops/s
> SerializationBenchmark.testWriteBytecodeBinary thrpt 20 130486.109 ±
> 5505.113 ops/s
> SerializationBenchmark.testWriteBytecodeGraphSON thrpt 20 592658.686 ±
> 68063.966 ops/s
> SerializationBenchmark.testWriteResponseBinary thrpt 20 290240.715 ±
> 25620.656 ops/s
> SerializationBenchmark.testWriteResponseGraphSON thrpt 20 612832.036 ±
> 48173.673 ops/s
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)