jameysharp opened issue #4948:
One other thought that came back to me while looking at this was that I really wanted to implement
vconst
(and all other constant accesses for vectors) with the aligned version (MOVDQA
,MOVAPS
,MOVAPD
) instead of the unaligned version we currently use. At the time, it was impossible to ensure that the vector constants were actually aligned so these aligned loads would have trapped--that's why I abandoned that thought, IIRC. But now that may be more possible (?). Now, I'm not sure if this will result in any great latency improvement on most CPUs we use today, but I did wonder if it might improve the cache line story. Just a thought..._Originally posted by @abrown in https://github.com/bytecodealliance/wasmtime/issues/2399#issuecomment-1235016953_
jameysharp labeled issue #4948:
One other thought that came back to me while looking at this was that I really wanted to implement
vconst
(and all other constant accesses for vectors) with the aligned version (MOVDQA
,MOVAPS
,MOVAPD
) instead of the unaligned version we currently use. At the time, it was impossible to ensure that the vector constants were actually aligned so these aligned loads would have trapped--that's why I abandoned that thought, IIRC. But now that may be more possible (?). Now, I'm not sure if this will result in any great latency improvement on most CPUs we use today, but I did wonder if it might improve the cache line story. Just a thought..._Originally posted by @abrown in https://github.com/bytecodealliance/wasmtime/issues/2399#issuecomment-1235016953_
jameysharp labeled issue #4948:
One other thought that came back to me while looking at this was that I really wanted to implement
vconst
(and all other constant accesses for vectors) with the aligned version (MOVDQA
,MOVAPS
,MOVAPD
) instead of the unaligned version we currently use. At the time, it was impossible to ensure that the vector constants were actually aligned so these aligned loads would have trapped--that's why I abandoned that thought, IIRC. But now that may be more possible (?). Now, I'm not sure if this will result in any great latency improvement on most CPUs we use today, but I did wonder if it might improve the cache line story. Just a thought..._Originally posted by @abrown in https://github.com/bytecodealliance/wasmtime/issues/2399#issuecomment-1235016953_
jameysharp labeled issue #4948:
One other thought that came back to me while looking at this was that I really wanted to implement
vconst
(and all other constant accesses for vectors) with the aligned version (MOVDQA
,MOVAPS
,MOVAPD
) instead of the unaligned version we currently use. At the time, it was impossible to ensure that the vector constants were actually aligned so these aligned loads would have trapped--that's why I abandoned that thought, IIRC. But now that may be more possible (?). Now, I'm not sure if this will result in any great latency improvement on most CPUs we use today, but I did wonder if it might improve the cache line story. Just a thought..._Originally posted by @abrown in https://github.com/bytecodealliance/wasmtime/issues/2399#issuecomment-1235016953_
Last updated: Dec 23 2024 at 12:05 UTC