-
-
Notifications
You must be signed in to change notification settings - Fork 81
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
Performance on Windows #113
Comments
oh wow. |
Want to give this branch a try? Thanks |
Wow that was rapid, thanks! I'll give it a go on both platforms later today and report back. Im wondering if those extra timers you tweaked may be responsible for my additional few seconds 😄 . Regards, Phil |
Possibly, if you use the rate limiter feature, it could be. |
Installed on Windows and Linux (removing my hack from Windows). Working great in both. Windows is still a tiny bit slower, but eh....its Windows you get what you pay for :-P Thanks for sorting it so quickly. Phil |
Awesome. Expect v2.0.3 very shortly |
Fixed in #114 Thank you again, that was probably the last missing piece of the timing puzzle. |
Hey,
Firstly thanks for an awesome library!
I've been using it on Linux and now Windows as part of an ECU firmware updater. So been using the pure Python implementation.
It's been working well on both, however performance on Windows has been terrible compared to Linux.
As an example on Linux the main file transfer takes 10s, on Windows it takes 2mins.
I believe I've narrowed it down to the Timer implementation, which calls
time.monotonic_ns
. The resolution of that Timer on Windows doesn't appear to be very good.Based on the discussion of
time.monotonic
here https://bugs.python.org/issue44328.Tacking the following into my code resolves the issue:
Bringing the update time down to around 13-15s....not quite as good as Linux....but it's close enough. Watching the CAN traffic on another machine the inter-frame delay drops from 10-12ms to 1ms as requested by the remote device.
Thought it may be beneficial to others to fix the problem at source.
Thanks,
Phil
The text was updated successfully, but these errors were encountered: