[
https://issues.apache.org/jira/browse/THRIFT-3217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14613505#comment-14613505
]
Ben Craig commented on THRIFT-3217:
-----------------------------------
Beefed up the performance test a bit. Here's my latest snapshot from my
Windows laptop...
Write big endian: 639.91 kHz
Read big endian: 319.973 kHz
Write little endian: 799.936 kHz
Read little endian: 399.957 kHz
Write big endian: 639.914 kHz
Read big endian: 319.976 kHz
Double write big endian: 22856.2 kHz
Double read big endian: 26665.2 kHz
Double write little endian: 58172 kHz
Double read little endian: 29088.1 kHz
Double write big endian: 26663.9 kHz
Double read big endian: 29088.6 kHz
There appears to be a big win with write doubles little endian. I think that
is because there is less crossing between the floating point and integer
domains. The read side of things has more intermediate copies, and I think
that is reducing the value of eliding the endianness change.
> Provide a little endian variant of the binary protocol in C++
> -------------------------------------------------------------
>
> Key: THRIFT-3217
> URL: https://issues.apache.org/jira/browse/THRIFT-3217
> Project: Thrift
> Issue Type: Improvement
> Components: C++ - Library
> Affects Versions: 0.9.3
> Reporter: Ben Craig
> Assignee: Ben Craig
>
> Most computers these days are little endian. With Thrift's current binary
> protocol, we end up adjusting endianness on both sides of the connection most
> of the time. We should provide a variant that is optimized for the common
> case of little endian machines.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)