On Monday, 3 August 2015 at 12:21:05 UTC, Per Nordlöw wrote:
On Monday, 3 August 2015 at 11:51:24 UTC, Atila Neves wrote:
Yes. `cerealise` and `decerealise`. The former is slightly weird for performance reasons. It takes a lambda that tells it what to do with the resulting bytes.

Close with LDC and DMD, faster with GDC: http://forum.dlang.org/post/nkcelouzpjsgmqtvn...@forum.dlang.org

Nice!

Are there any plans to add different backends (for instance msgpack) to Cereal? Then we could have one package to rule them all!

I'll try Cereal in favor of msgpack next time!

Thanks, Atila!

As I tried the changes on the same test as in [0]
It went on my PC like this:

DMD debug:
Cerealed: 2 secs, 854 ms, 687 μs, and 2 hnsecs
MsgPack:  2 secs, 328 ms, 698 μs, and 3 hnsecs

DMD release:
Cerealed: 1 sec, 619 ms, 570 μs, and 9 hnsecs
MsgPack:  1 sec, 554 ms, and 185 μs

LDC2 release:
Cerealed: 966 ms, 398 μs, and 4 hnsecs
MsgPack:  926 ms, 792 μs, and 3 hnsecs

GDC release:
Cerealed: 1 sec, 97 ms, 892 μs, and 1 hnsec
MsgPack:  1 sec, 138 ms, 359 μs, and 2 hnsecs

So it's almost the same now.

[0] http://forum.dlang.org/post/nkcelouzpjsgmqtvn...@forum.dlang.org

Reply via email to