By: Eric Fink (eric.delete@this.anon.com), June 5, 2022 4:26 am
Room: Moderated Discussions
⚛ (0xe2.0x9a.0x9b.delete@this.gmail.com) on June 4, 2022 11:39 am wrote:
The two major differences between a fixed-length and a variable-length encoding are that (1)
> variable-length encoding takes a small amount of time to initialize/determine those time-invariant boundaries
> and offsets and (2) fixed-length encoding is slightly less space efficient and thus takes slightly longer to
> load from memory in case of a cache miss. In practice, (1) and (2) cancel each other out.
I understand that that is the case if the variable-length encoding were more dense in practice. But there is very little practical difference in code density (as in — actual memory required to store the encoded instructions) between say x86-64 and Aarch64. So I don't see how (2) applies to this case.
The two major differences between a fixed-length and a variable-length encoding are that (1)
> variable-length encoding takes a small amount of time to initialize/determine those time-invariant boundaries
> and offsets and (2) fixed-length encoding is slightly less space efficient and thus takes slightly longer to
> load from memory in case of a cache miss. In practice, (1) and (2) cancel each other out.
I understand that that is the case if the variable-length encoding were more dense in practice. But there is very little practical difference in code density (as in — actual memory required to store the encoded instructions) between say x86-64 and Aarch64. So I don't see how (2) applies to this case.