Use u64 for change ticks
Opened this issue · 2 comments
What problem does this solve or what need does it fill?
Avoids the complexity (and runtime perf overhead) of our current looping u32 implementation, at the cost of higher memory usage.
Implementation blocked on configurable change detection.
What solution would you like?
Replace u32
with u64
for tick values. Maintenance code to guard against overflow should be removed.
Downside - requires AtomicU64
.
A workaround should be implemented for when AtomicU64
is not available on target platform.
What alternative(s) have you considered?
See #6651 for context.
I've updated the motivation a bit :) Thanks for extracting this!
Downside - requires
AtomicU64
.
A workaround should be implemented for whenAtomicU64
is not available on target platform.
It is specifically PowerPC and MIPS that do not support AtomicU64
, since I tried using it in Cargo.
It looks like MIPS is being phased out in favor of RISC-V. PowerPC also looks like it is dying, though it is notably used by the GameCube, Wii, and Wii U. If we want to support these platforms (which I think would be awesome), we definitely want some workaround.