New updates

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

New updates

Juan Vuletich-4
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Phil B
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Juan Vuletich-4
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Phil B
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Juan Vuletich-4
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Phil B
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Juan Vuletich-4
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Phil B
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Dan Norton
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
Reply | Threaded
Open this post in threaded view
|

Re: New updates

Dan Norton
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