theweipeng opened a new pull request, #1313: URL: https://github.com/apache/incubator-fury/pull/1313
## Refactor the code generator 1. Currently, JavaScript can only register a Object by Type.object, because the generator is too simple 2. Primitive generator of types like stringănumber can't be inlined in the holder collection, which cause necessary polymorphic that affect the performance ## Enhancement performance 1. Currently, Buffer.latin1Slice would transfer from native code generated by JIT to v8 runtime, This has a significant impact on performance, so we use String.fromCharCode to create little string when the string length is less than 15. It is a magic number, but I have tested it and it works fine. ## Improve When useSliceString is disabled, the performance of deserialization improves by 100%. It is 3 times faster than native JSON and twice as fast as protobuf. When useSliceString is enabled, the performance of deserialization improves by 30%. It is 5 times faster than native JSON and 3 times faster than protobuf. ### Before: #### Disable useSliceString  #### Enable useSliceString  ### After: #### Disable useSliceString  #### Enable useSliceString  -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
