Hi Folks,
Our new community member Peter van Rooijen (welcome Peter!) reported an intolerable slowness in the Transcript on the Mac. It turned out to be that direct Display access (without the double buffering Morphic uses) is extremely slower on a Mac than on Linux or Windows (about 1000 times slower!). The fix was not trivial, but the results are good. What I did is to have the display update deferred all the time, not just during Morphic update. This requires forking a new process that pushes Display to the actual screen if requested, but no more than 20 fps. It seems to work ok on all 3 major platforms, with elimination of flicker, modest speedup on Linux and Windows and very dramatic speedup on Mac. I also fixed the statup issue reported by Dan, and integreated a fix to Process browser by Phil. Thank you all folks! I just pushed all this to GitHub. Enjoy! Cheers, Juan Vuletich _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
On Sat, 2015-06-27 at 10:32 -0300, Juan Vuletich wrote:
> Hi Folks, > > Our new community member Peter van Rooijen (welcome Peter!) reported an > intolerable slowness in the Transcript on the Mac. It turned out to be Hi Peter! > that direct Display access (without the double buffering Morphic uses) > is extremely slower on a Mac than on Linux or Windows (about 1000 times > slower!). The fix was not trivial, but the results are good. What I did > is to have the display update deferred all the time, not just during > Morphic update. This requires forking a new process that pushes Display > to the actual screen if requested, but no more than 20 fps. It seems to > work ok on all 3 major platforms, with elimination of flicker, modest > speedup on Linux and Windows and very dramatic speedup on Mac. > One minor display update difference I notice as a result of this change is that when loading a large number of packages back-to-back, I used to see progress popups sprayed to the screen (i.e. one per package) that continued until all the packages were loaded. Now I only see a few and they really don't get updated giving the appearance of being frozen, but the packages are still loading as they should. It's not really an issue in this case (i.e. either behavior is a bit janky but not annoying enough to get me to do anything about right now) but something to keep an eye on with long-running processes (spanning several seconds or more) in other parts of the UI. > I also fixed the statup issue reported by Dan, and integreated a fix to > Process browser by Phil. Thank you all folks! > > I just pushed all this to GitHub. Enjoy! > Thanks to you for keeping the updates flowing! > Cheers, > Juan Vuletich > > _______________________________________________ > Cuis mailing list > [hidden email] > http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
Hi Phil, Peter,
(below) On Sat, June 27, 2015 8:19 pm, Phil (list) wrote: > On Sat, 2015-06-27 at 10:32 -0300, Juan Vuletich wrote: > >> Hi Folks, >> >> >> Our new community member Peter van Rooijen (welcome Peter!) reported an >> intolerable slowness in the Transcript on the Mac. It turned out to be >> > > Hi Peter! > > >> that direct Display access (without the double buffering Morphic uses) >> is extremely slower on a Mac than on Linux or Windows (about 1000 times >> slower!). The fix was not trivial, but the results are good. What I >> did is to have the display update deferred all the time, not just during >> Morphic update. This requires forking a new process that pushes >> Display >> to the actual screen if requested, but no more than 20 fps. It seems to >> work ok on all 3 major platforms, with elimination of flicker, modest >> speedup on Linux and Windows and very dramatic speedup on Mac. >> > > One minor display update difference I notice as a result of this change > is that when loading a large number of packages back-to-back, I used to see > progress popups sprayed to the screen (i.e. one per package) that > continued until all the packages were loaded. Now I only see a few and > they really don't get updated giving the appearance of being frozen, but > the packages are still loading as they should. It's not really an issue > in this case (i.e. either behavior is a bit janky but not annoying enough > to get me to do anything about right now) but something to keep an eye on > with long-running processes (spanning several seconds or more) in other > parts of the UI. Please try changing the Delay in #screenUpdater from 50 to 20, and do 'DisplayScreen installScreenUpdater'. They try loading the packages. Does this improve it? Specially if it does not, but in any case, what OS and VM are you using? Peter, does this higher frame rate (from 20fps to 50fps) make the Transcript much slower in your setup? Thanks, Juan Vuletich _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
On Sat, 2015-06-27 at 21:08 -0300, Juan Vuletich wrote:
> Hi Phil, Peter, > > (below) > > On Sat, June 27, 2015 8:19 pm, Phil (list) wrote: > > On Sat, 2015-06-27 at 10:32 -0300, Juan Vuletich wrote: > > > >> Hi Folks, > >> > >> > >> Our new community member Peter van Rooijen (welcome Peter!) reported an > >> intolerable slowness in the Transcript on the Mac. It turned out to be > >> > > > > Hi Peter! > > > > > >> that direct Display access (without the double buffering Morphic uses) > >> is extremely slower on a Mac than on Linux or Windows (about 1000 times > >> slower!). The fix was not trivial, but the results are good. What I > >> did is to have the display update deferred all the time, not just during > >> Morphic update. This requires forking a new process that pushes > >> Display > >> to the actual screen if requested, but no more than 20 fps. It seems to > >> work ok on all 3 major platforms, with elimination of flicker, modest > >> speedup on Linux and Windows and very dramatic speedup on Mac. > >> > > > > One minor display update difference I notice as a result of this change > > is that when loading a large number of packages back-to-back, I used to see > > progress popups sprayed to the screen (i.e. one per package) that > > continued until all the packages were loaded. Now I only see a few and > > they really don't get updated giving the appearance of being frozen, but > > the packages are still loading as they should. It's not really an issue > > in this case (i.e. either behavior is a bit janky but not annoying enough > > to get me to do anything about right now) but something to keep an eye on > > with long-running processes (spanning several seconds or more) in other > > parts of the UI. > > Please try changing the Delay in #screenUpdater from 50 to 20, and do > 'DisplayScreen installScreenUpdater'. They try loading the packages. Does > this improve it? Specially if it does not, but in any case, what OS and VM > are you using? > That resolves it initially (for about the first 5-10 seconds) but then the updates stop showing again. If I recall correctly, doesn't Morphic back off on screen updates by default after a period without keyboard/mouse activity? The interplay of your latest changes and that might be the issue. I'm running on Linux with the Cog 15.14.3308 build. I've tested the new build with some long-running animated morphs and they seem to be fine so for this issue, I wouldn't worry about it too much unless you're concerned that it's a symptom of a larger problem. > Peter, does this higher frame rate (from 20fps to 50fps) make the > Transcript much slower in your setup? > > Thanks, > Juan Vuletich > > _______________________________________________ > Cuis mailing list > [hidden email] > http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
Hi Phil,
>>> ... >>> One minor display update difference I notice as a result of this >>> change is that when loading a large number of packages back-to-back, I >>> used to see progress popups sprayed to the screen (i.e. one per >>> package) that continued until all the packages were loaded. Now I >>> only see a few and they really don't get updated giving the appearance >>> of being frozen, but the packages are still loading as they should. >>> It's not really an issue >>> in this case (i.e. either behavior is a bit janky but not annoying >>> enough to get me to do anything about right now) but something to keep >>> an eye on with long-running processes (spanning several seconds or >>> more) in other parts of the UI. >> >> Please try changing the Delay in #screenUpdater from 50 to 20, and do >> 'DisplayScreen installScreenUpdater'. They try loading the packages. >> Does >> this improve it? Specially if it does not, but in any case, what OS and >> VM >> are you using? >> > > That resolves it initially (for about the first 5-10 seconds) but then > the updates stop showing again. If I recall correctly, doesn't Morphic > back off on screen updates by default after a period without > keyboard/mouse activity? The interplay of your latest changes and that > might be the issue. I'm running on Linux with the Cog 15.14.3308 build. > I've tested the new build with some long-running animated morphs and > they seem to be fine so for this issue, I wouldn't worry about it too much > unless you're concerned that it's a symptom of a larger problem. > Well, I want to understand. And the best time is right now, when all this is fresh in mi mind. My Linux box is at the office, so I'll test on it on Monday. Cheers, Juan Vuletich _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
Juan,
On Sun, 2015-06-28 at 08:50 -0300, Juan Vuletich wrote: > Hi Phil, > > >>> ... > > > > That resolves it initially (for about the first 5-10 seconds) but then > > the updates stop showing again. If I recall correctly, doesn't Morphic > > back off on screen updates by default after a period without > > keyboard/mouse activity? The interplay of your latest changes and that > > might be the issue. I'm running on Linux with the Cog 15.14.3308 build. > > I've tested the new build with some long-running animated morphs and > > they seem to be fine so for this issue, I wouldn't worry about it too much > > unless you're concerned that it's a symptom of a larger problem. > > > > Well, I want to understand. And the best time is right now, when all this > is fresh in mi mind. My Linux box is at the office, so I'll test on it on > Monday. > Fair enough. FYI, I downloaded the latest Cog (3390) and observed the same behavior. I am loading the packages via CodePackageFile #installPackageStream: on a reasonably large set of packages (all core packages plus 4 dozen or so more) > Cheers, > Juan Vuletich Thanks, Phil _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
How does it go with this update?
I've checked the VM code for display update, and to say it is messy is an understatement... Folks, any feedback of look / behavior of progress bars and Transcript update in Cuis #2390 with the attach loaded is most appreciated. Especially if you find any issues. Thanks, Juan Vuletich On 6/28/2015 5:58 PM, Phil (list) wrote: > ... > Fair enough. FYI, I downloaded the latest Cog (3390) and observed the > same behavior. I am loading the packages via CodePackageFile > #installPackageStream: on a reasonably large set of packages (all core > packages plus 4 dozen or so more) > Thanks, > Phil _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org 2391-screenUpdater-tweaks-JuanVuletich-2015Jun29-11h02m-jmv.1.cs.st.zip (1K) Download Attachment |
On Mon, 2015-06-29 at 13:14 -0300, Juan Vuletich wrote:
> How does it go with this update? > It seems a bit better (hard to say absolutely since it seems to vary a bit from load to load), but still stops updating mid-way through. > I've checked the VM code for display update, and to say it is messy is > an understatement... > > Folks, any feedback of look / behavior of progress bars and Transcript > update in Cuis #2390 with the attach loaded is most appreciated. > Especially if you find any issues. > Other than the above issue, I haven't really noticed anything else. (though I try to minimize my use of Transcript) > Thanks, > Juan Vuletich > > On 6/28/2015 5:58 PM, Phil (list) wrote: > > ... > > Fair enough. FYI, I downloaded the latest Cog (3390) and observed the > > same behavior. I am loading the packages via CodePackageFile > > #installPackageStream: on a reasonably large set of packages (all core > > packages plus 4 dozen or so more) > > Thanks, > > Phil > _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
In reply to this post by Juan Vuletich-4
On 29 Jun 2015 at 13:14, Juan Vuletich wrote:
... > Folks, any feedback of look / behavior of progress bars and > Transcript > update in Cuis #2390 with the attach loaded is most appreciated. > Especially if you find any issues. > Transcript looks as fast as ever. The first time a progress bar appears, e.g. when a package is loading, it seems to freeze as if it has stopped being updated. However, the next time a package is loaded, the progress bar seems to be updated as it has in past releases of Cuis. HTH - Dan _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
In reply to this post by Juan Vuletich-4
On 29 Jun 2015 at 13:14, Juan Vuletich wrote:
[...] > > Folks, any feedback of look / behavior of progress bars and > Transcript > update in Cuis #2390 with the attach loaded is most appreciated. > Especially if you find any issues. > Package loading *seems* slower. That's my impression - haven't timed it. - Dan _______________________________________________ Cuis mailing list [hidden email] http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org |
Free forum by Nabble | Edit this page |