-
-
Notifications
You must be signed in to change notification settings - Fork 114
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
thread out yield demo #1613
Comments
hrmmm, so |
so simply moving the |
yeah, with two threads i pumped 20FPS up to 28 (40% increase) at the cost of chewing two cores. |
so the easy way to do this just doesn't work; one thread's blitting the |
all the data copying involved ended up slowing things down slightly, less than 10% but noticeable. let me think about it for a minute and make sure there's no way we can't do this with just an ok, after removing debugging cruft, it's very slightly faster. i will keep looking. i doubt i'll merge this as it stands. |
also, while this works in kitty, it appears to crash in sixel. i think we're done here. |
so yeah, after sleeping on it, it comes down to:
so a twofer running the same code won't work. what about a feeder/eater? nah. the minimal data we could exchange would be the points at which we do a polyfill, so just two words per iteration. so let's say:
so this would eliminate the entire pixelback copy, on both sides. i bet this could work. |
yeah, that works, and it looks like we get a solid speedup. let me finish this up. |
yep, definite improvement. and we no longer need |
following recent speedups in
xray
by multithreading (one renders while the other writes), i'm thinking the same tactic ought be applied toyield
, which now takes longer than any other demo in at leastfoot
(and is over the 20s mark in a full screen on most emulators). it ought be easy enough using the exact same synchronization structure.i hate adding something to the 2.3.0 list on the day it's supposed to be released, but fuck it.
The text was updated successfully, but these errors were encountered: