[
https://issues.apache.org/jira/browse/THRIFT-2502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13983149#comment-13983149
]
ASF GitHub Bot commented on THRIFT-2502:
----------------------------------------
GitHub user apesternikov opened a pull request:
https://github.com/apache/thrift/pull/110
THRIFT-2502 Go simplify and optimize
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apesternikov/thrift go_simplify_and_optimize
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/thrift/pull/110.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #110
----
commit 7ece8e6f16f7ff46cda4b896215d595ac986d332
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-26T17:45:12Z
simplify buffered transport by reusing bufio
commit 814b661d7e5c3c27ad4035a42925eae619447ee3
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-26T18:05:12Z
zero-initialize buffers in framed transport
commit 0f576138e24fae8e7f8d210cfb480889a41d1d9a
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-26T19:19:39Z
do not buffer the whole frame while reading in framed transport
reuse frame header buffer
commit 4db9b65458eb34e1b1676dba76d1e664c6339a57
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-26T19:43:07Z
enforce max frame size in framed transport
commit 58ecc23ec1a2176f7dc5db7a658a51817dc626e6
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-27T00:31:16Z
microbenchmarks for serialization/deserialization
(binary,compact)x(memoryBuffer,Stream,framedMemoryBuffer)x(bool,byte,i16,i32,i64,double,string,binary)
commit 156116f484db513251e0e6c65942466ed5a8142c
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-27T00:32:09Z
Merge branch 'go_microbench' into go_simplify_and_optimize
commit 1c27c0913cf5a8c0352afff1dae9e9fc9f758409
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-27T22:45:52Z
do not allocate buffer in TBinaryProtocol.WriteByte
commit 86addfb0585e04c648cde1b9cb1566d7976f8cda
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-27T23:46:12Z
no extra alloc in double marshaling test
commit 98ac62b0a80d4f27dce736b561005953cb915a90
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-27T23:46:50Z
Merge branch 'go_microbench' into go_simplify_and_optimize
commit 76c26624578a5455cacd08bb0167444748aaa41d
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-28T12:48:41Z
optimized ReadByte, WriteByte
commit 5a79d81d326582dbbdcf523ebc0180390ac24497
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-28T13:03:26Z
optimized WriteString
commit f6d4a9aa65434831cbd2993148fa12c12b2a342c
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-28T15:35:06Z
compact protocol optimization
commit 03bdb6b9f097a47ef54826483867c23d49374ac0
Author: Aleksey Pesternikov <[email protected]>
Date: 2014-04-28T16:08:52Z
cache reader and writer to aviod interface conversions
----
> Optimize go implementations of binary and compact protocols for speed
> ---------------------------------------------------------------------
>
> Key: THRIFT-2502
> URL: https://issues.apache.org/jira/browse/THRIFT-2502
> Project: Thrift
> Issue Type: Improvement
> Components: Go - Library
> Reporter: Aleksey Pesternikov
> Priority: Minor
>
> Go implementation of binary and compact protocols are slow and creating
> unnecessary memory garbage
--
This message was sent by Atlassian JIRA
(v6.2#6252)