You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Vladimir Ozerov <vo...@gridgain.com> on 2015/09/25 13:28:19 UTC
Optimizing portable protocol.
Igniters,
Thorough analysis of portable object format lead me to conclusion that
significant part of transferred data is either zeros, several constants
(e.g. 0, 1, -1, true, false) or some redundant information.
I created two tickets for this with high priority and I think we should at
least evaluate them before 1.5 is released.
1) Portable object header can be shrunk from 18 to 10-11 bytes in the most
common cases.
https://issues.apache.org/jira/browse/IGNITE-1548
2) Portable object primitive fields in non-raw mode (the most common case
for user object) can be decreased in size on ~30-50%:
bool: 10 -> 5 bytes (50%)
byte: 10 -> 5-6 bytes (45%)
short: 11 -> 5-7 bytes (~45%)
int: 13 -> 5-9 bytes (~45%)
long: 17 -> 5-13 bytes (~35% on average)
https://issues.apache.org/jira/browse/IGNITE-1549
Vladimir.
Re: Optimizing portable protocol.
Posted by Yakov Zhdanov <yz...@apache.org>.
Vova, very good points!
--Yakov
2015-09-25 14:28 GMT+03:00 Vladimir Ozerov <vo...@gridgain.com>:
> Igniters,
>
> Thorough analysis of portable object format lead me to conclusion that
> significant part of transferred data is either zeros, several constants
> (e.g. 0, 1, -1, true, false) or some redundant information.
>
> I created two tickets for this with high priority and I think we should at
> least evaluate them before 1.5 is released.
>
> 1) Portable object header can be shrunk from 18 to 10-11 bytes in the most
> common cases.
> https://issues.apache.org/jira/browse/IGNITE-1548
>
> 2) Portable object primitive fields in non-raw mode (the most common case
> for user object) can be decreased in size on ~30-50%:
> bool: 10 -> 5 bytes (50%)
> byte: 10 -> 5-6 bytes (45%)
> short: 11 -> 5-7 bytes (~45%)
> int: 13 -> 5-9 bytes (~45%)
> long: 17 -> 5-13 bytes (~35% on average)
> https://issues.apache.org/jira/browse/IGNITE-1549
>
> Vladimir.
>