-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No support for 32-bit platforms (e.g. armv5te) #89
Comments
Oof. I'm sorry, but governor is currently limited to native 64-bit time representations, being nanosecond counts... 32bit just aren't wide enough to hold the number of nanoseconds required for any useful rate-limiting, I'm afraid (you could only measure time intervals 4 seconds long). I think it might be possible to maybe work around this, by introducing a clock that has a more coarse "resolution" - that is, instead of nanoseconds, it returns e.g., microseconds (good for 4000 seconds, so about 1/5 day), or a millisecond even, that's 49 days. I imagine that would be useful for more limited platforms, and it would also need a better handling of the validity of rate-limiters: they currently panic if the time interval gets exceeded - on 64-bit platforms, after 200-some years if you use nanosecond resolution... on 32-bit platforms, way earlier. So - it's not a completely hopeless cause, but currently there is no trivial way to get support for a 32-bit platform: a hopeful user would have to tear through the clock and |
Can quanta work on mips and mipsel then? Will it require mips64 and mips64el to compile? |
Quanta might work! I'm not sure what they use internally, it might be possible they use a different representation on 32-bit platforms... but if not, then it's not going to work, either. |
Seems like there are some updates in quanta metrics-rs/quanta#55 |
@antifuchs are there any plans to resolve this? For instance Crossbeam has special configuration flag for such kind of problem: |
I have the same issue when building vaultwarden for ARMv5 (RUST_TARGET=armv5te-unknown-linux-gnueabi): full stack:
|
AtomicU64
I am wishing to ship a program with governor to
armv5te
target. However, due to the fact thatAtomicU64
doesn't exist on the target, I am getting the following:Is there anyway to work around?
The text was updated successfully, but these errors were encountered: