dysfun@treehouse.systems ("gaytabase") wrote:
part of the problem with portability is that now it's disk-backed, you're stuck with the layout you used when you wrote it. thus, it would be incredibly beneficial if the format was always the same regardless of the hardware capabilities.
unfortunately, what i worked out for the in-memory predecessor to this was that one great way to improve performance was to take advantage of the hardware that was available by reorganising layouts.
anyway, i eventually sorted it all. it's still a bit of a compromise and it's not optimal everywhere, but at least the cpu part is going to get lost in the noise when you consider I/O. wasted padding per branch node is capped to a cacheline. i'm far more worried about wasted disk block space around leaves, where i'm just hoping that loose ends will end up being statistically uncommon when i'm done.