Re:FlexBuffers
by jeffbee on Sunday June 21, 2020 @11:51AM
(#23592679)
We do that all the time in high-performance computing. You keep a packed representation in memory and unpack it in small pieces to operate on it. Sparse matrices, compressed columns, etc. This is not evil, it’s an adaptation to the way the machine works. Saying that Kenton’s definition of zero-copy is unconditionally better is an aesthetic argument and I don’t buy it.
[ Parent
| on HN ]
Re:FlexBuffers
by fluffything on Sunday June 21, 2020 @12:11PM
(#23592833)
You are still not getting it.
They are not talking about "unpacking on the fly for processing", but rather about "unpacking on memory to be able to call an opaque API outside your control that expects the unpacked representation". That requires copying in-memory to interface with that API.
Your approach only works if you are willing to "re-implement the world" to interface with whatever packed format suits your application.
With zero-copy serialization you don't have to do that.
We can both advocate for different perspectives on this issue without either of us “not getting it”.
Re:FlexBuffers
by Dylan16807 on Monday June 22, 2020 @04:45AM
(#23598339)
> Saying that Kenton’s definition of zero-copy is unconditionally better
It feels like you're conflating things here.
It's not always a better algorithm, but it's a better definition.