Graphs have been updated!

> On Mar 17, 2016, at 8:00 PM, Hartmut Kaiser <[email protected]> wrote:
> 
> Thanks Anton, that's very much appreciated! Would you mind updating the 
> graphs on the github site with the data you collected?
> 
> Regards Hartmut
> ---------------
> http://boost-spirit.com
> http://stellar.cct.lsu.edu
> 
> 
>> -----Original Message-----
>> From: Anton Bikineev [mailto:[email protected]]
>> Sent: Thursday, March 17, 2016 9:39 AM
>> To: [email protected]
>> Cc: Vinay Amatya <[email protected]>; [email protected]
>> Subject: Re: About Serialization Library
>> 
>> Hi all,
>> 
>> Let me cc this to hpx-users, because it covers some recent results on
>> benchmarking our serialization library.
>> Vinay and Hartmut, please forgive me for being late in response, my mind
>> has been exhausted at my day-to-day job.
>> 
>> I’ve compiled those benchmarks (https://github.com/stellar-group/cpp-
>> serializers) using trunk-gcc (gcc-6.0), boost-1.60 and hpx with HEAD on 17
>> Feb.
>> I also removed avro library, because new gcc rejected to compile it, and
>> updated thrift. Result I got are quite interesting — running benchmark for
>> 1 million iterations gave me the following results:
>> 
>> [09:02:07]:[email protected]:/home/abikineev/cpp-
>> serializers/build:0:$ ./test 1000000
>> performing 1000000 iterations
>> 
>> thrift-binary: version = 0.9.3
>> thrift-binary: size = 17017 bytes
>> thrift-binary: time = 28548 milliseconds
>> 
>> thrift-compact: version = 0.9.3
>> thrift-compact: size = 11597 bytes
>> thrift-compact: time = 33778 milliseconds
>> 
>> protobuf: version = 2006000
>> protobuf: size = 12571 bytes
>> protobuf: time = 24545 milliseconds
>> 
>> boost: version = 106000
>> boost: size = 17470 bytes
>> boost: time = 16060 milliseconds
>> 
>> msgpack: version = 0.5.9
>> msgpack: size = 11902 bytes
>> msgpack: time = 30098 milliseconds
>> 
>> cereal: size = 17416 bytes
>> cereal: time = 13382 milliseconds
>> 
>> hpx: size = 17433 bytes
>> hpx: time = 12140 milliseconds
>> 
>> hpx zero copy: size = 9433 bytes
>> hpx zero copy: time = 8122 milliseconds
>> 
>> 
>> Then I noticed, that version of cereal lib was quite old (namely 1.0.0)
>> and I updated it to the latest 1.1.2. And I got results as follows:
>> 
>> [09:20:26]:[email protected]:/home/abikineev/cpp-
>> serializers/build:0:$ ./test 1000000
>> performing 1000000 iterations
>> 
>> thrift-binary: version = 0.9.3
>> thrift-binary: size = 17017 bytes
>> thrift-binary: time = 28025 milliseconds
>> 
>> thrift-compact: version = 0.9.3
>> thrift-compact: size = 11597 bytes
>> thrift-compact: time = 33802 milliseconds
>> 
>> protobuf: version = 2006000
>> protobuf: size = 12571 bytes
>> protobuf: time = 23843 milliseconds
>> 
>> boost: version = 106000
>> boost: size = 17470 bytes
>> boost: time = 16188 milliseconds
>> 
>> msgpack: version = 0.5.9
>> msgpack: size = 11902 bytes
>> msgpack: time = 30051 milliseconds
>> 
>> cereal: size = 17416 bytes
>> cereal: time = 13083 milliseconds
>> 
>> hpx: size = 17433 bytes
>> hpx: time = 12371 milliseconds
>> 
>> hpx zero copy: size = 9433 bytes
>> hpx zero copy: time = 8138 milliseconds
>> 
>> Summarizing, to be honest I didn’t expect that we slightly outperform
>> cereal, because it is quite concentrated on serialization itself and
>> doesn’t perform some runtime checks as we do such as filter and zero-copy
>> buffer presence, endianess, etc…
>> 
>> If you want to play with parameters, I can send you the binary and my
>> envs, or my local changes for cpp-serializers and cmake command.
>> 
>> Sincerely,
>> Anton.
>> 
>>> On Mar 1, 2016, at 11:51 PM, Hartmut Kaiser <[email protected]>
>> wrote:
>>> 
>>> Vinay,
>>> 
>>>> Thank you so much Hartmut for the pointers. I'll go through the links.
>> Any
>>>> quick insights on why HPX is a little slower than cereal? The byte size
>>>> (for objects) seems to be similar for both. But the HPX results are
>>>> impressive nonetheless!
>>> 
>>> Those numbers have been collected a while ago and I believe we have
>> improved on those already. I don't remember what the actual reason was,
>> however. I'm cc'ing Anton, he is the main author of our serialization
>> library, he might have some more insights.
>>> 
>>> Regards Hartmut
>>> ---------------
>>> http://boost-spirit.com
>>> http://stellar.cct.lsu.edu
>>> 
>>> 
>>>> 
>>>> Regards,
>>>> Vinay
>>>> 
>>>> On Tue, Mar 1, 2016 at 12:17 PM, Hartmut Kaiser
>> <[email protected]>
>>>> wrote:
>>>> Hey Vinay,
>>>> 
>>>>> I have a quick question with your experience with regards to
>>>> serialization
>>>>> library. I'm involved in another project(for graph processing - still
>>>>> initial stage, at least for me) that is currently trying to decide
>> what
>>>>> serialization library works best for distributed runtime system. The
>>>>> criteria is it has to be C++11 enabled. They don't want to use Boost.
>>>> The
>>>>> alternative we see is Cereal Serialization Library. What I wanted to
>> ask
>>>>> was did you have an experience with this library? Also, what test
>>>>> parameters should I look into that'd give me an idea about its
>>>> usefulness
>>>>> in general (besides the time overhead)?
>>>> 
>>>> We gave up on Boost serialization as well (most out of performance
>>>> reasons) and implemented our own. The main criteria I'd look for is
>>>> genericity, extensibility and performance. One (possibly minor) thing
>> I'd
>>>> look out for is whether a library supports zero-copy operations (i.e.
>>>> avoids copying data, if possible).
>>>> 
>>>>> Also, is there any other comparable library you could point to?
>>>> 
>>>> There is a small project comparing the performance of various libraries
>>>> here: https://github.com/thekvs/cpp-serializers. We have added our own
>>>> serialization library to the mix in our fork of this project here:
>>>> https://github.com/STEllAR-GROUP/cpp-serializers.
>>>> 
>>>>> Btw, I hope the last tropical storm was not too disruptive there.
>>>> 
>>>> Yah, all went by gracefully and all we got was some rain.
>>>> 
>>>> HTH
>>>> Regards Hartmut
>>>> ---------------
>>>> http://boost-spirit.com
>>>> http://stellar.cct.lsu.edu
>>>> 
>>>> 
>>> 
>>> 
> 

_______________________________________________
hpx-users mailing list
[email protected]
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users

Reply via email to