A week back I asked about the poor performance of X-Windows updates.
I was told lots of bits flow across the wire.
So I looked PPS stXPutImage looks like an interesting place to update with some caching code eh?
Well after a few hours of programming I can confirm by deferring updates one can improve visual performance.
For example in my x-windows test case 10 screen restores take 78.116 seconds. By deferring updates I can cut this update time to 18.760 seconds. However you visually miss lots of screen updates, but would you rather wait?
FYI 100 screen restores on a local screen take 34,233 updates and 41 seconds, however I couldn't wait for that many across ethernet. But I can cut the updates to 1885, a more reasonable number.
If I ensure screen updates occur at least every 1/20 of a seconds morphic animations flow at a reasonable speed.
In any case I'll look at bundling this all up for interested parties.
Although I'm doing this down in sqXWindow.c I'm going to explore moving the deferring logic up into the Smalltalk VM and consider an adaptive algorithm to defer updates based on some yet to be determined heuristic.
-- =========================================================================== John M. McIntosh johnmci@smalltalkconsulting.com 1-800-477-2659 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== Custom Macintosh programming & various Smalltalk dialects PGP Key: DSS/Diff/46FC3BE6 Fingerprint=B22F 7D67 92B7 5D52 72D7 E94A EE69 2D21 46FC 3BE6 ===========================================================================
squeak-dev@lists.squeakfoundation.org