News for hackers. Stuff that matters.
Re:Building a Cloud Database from Scratch: Why We Moved from... by kllrnohj on Saturday May 28, 2022 @05:27PM (#31544038)
None of those let you allocate objects from those arenas. You can't deserialized into a ByteBuffer.

Hell, you can't even do linear object arrays in the JVM (still waiting on value types...), the most basic of memory optimization techniques.

Also for a JVM or Python, you can't avoid the extra overhead in an object (such as the ref count for python), which increases cache pressure and limits how much cache locality you can exploit.

Re:Building a Cloud Database from Scratch: Why We Moved from... by kaba0 on Sunday May 29, 2022 @03:05AM (#31547087)
Because objects in these languages don’t have a uniform representation, it is up to the implementation how a java object is layed out in memory for example. But an allocated memory region is just a.. memory region in java and in C++ as well - you can store your custom data structure in both.

Sure, value types will be a huge win, but it is not like you can’t store your RGB class’s data quite trivially into a huge linear structure as SOA or AOS as needed, and deserialize as needed.