Morphic is super slow

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

Morphic is super slow

kilon.alios
So I decided to find out why Nuatilus delays to syntax highlight when I open ChronosManager I open my activity monitor to be amazed by the fact that pharo was consuming 30% of one of my cores.

At the time I thought it was my fault because when my GUI steps I load from a png a form that I attack to a Morph. So I optomised that part loading all the pngs before hand , creating all the forms and during steping point only to the correct form.

Nope still 30%

ok change step time to 1 sec

Nope still 30%

ok delete step and step time alltogether

Nope still 30%

so the only explanation left is that pharo does not like I use images , which are not that big anyway , my whole image library is just 1 mb.

So how I profile this ? Is there any way to find exactly where that 30% is consumed ?

I tried to profile step and it retunred back with a mere 32ms , and I suspect thats the first step that loads the images , the second step would be much faster since it will just point to correct forms. So with a step of 32ms max and stepping once per second why a 30% CPU consumption ?
Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

HilaireFernandes
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

--
Dr. Geo
http://drgeo.eu



Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

Nicolai Hess-3-2


2016-01-15 21:53 GMT+01:00 Hilaire <[hidden email]>:
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

I suspect Rubric.

Old pharo withouth Rubric in Nautilus
-> ~ 0.5 %

Current Pharo with Rubric in Nautilus
-> ~ 10 %

both with a fresh image and only one Nautilus window open.
 

--
Dr. Geo
http://drgeo.eu




Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
In reply to this post by HilaireFernandes
ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption

The images are PNGs and RGBA , 8bit

On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

--
Dr. Geo
http://drgeo.eu



Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
taskbar was the problem, damn pharo gui is a huge pain in the hat.

On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption

The images are PNGs and RGBA , 8bit


On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

--
Dr. Geo
http://drgeo.eu



Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

Sven Van Caekenberghe-2

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

Nicolai Hess-3-2


2016-01-16 0:06 GMT+01:00 Sven Van Caekenberghe <[hidden email]>:

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

I would like to now that too.

Btw, this is interesting too:

WorldState debugShowDamage:true.

And look all the flashing in a nautilus and or playground window.
 

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>



Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

Nicolai Hess-3-2


2016-01-16 0:11 GMT+01:00 Nicolai Hess <[hidden email]>:


2016-01-16 0:06 GMT+01:00 Sven Van Caekenberghe <[hidden email]>:

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

I would like to now that too.

Btw, this is interesting too:

WorldState debugShowDamage:true.

And look all the flashing in a nautilus and or playground window.

Hm, I think this was my fault. The fix for
17201 Marking Diffs broken in Pharo5
wasn't good.


 
 

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
In reply to this post by Sven Van Caekenberghe-2
taskbarTask (self valueOfProperty: #noTaskbarTask ifAbsent: [ false ]) ifTrue: [ ^ nil ]. ^ nil "TaskbarTask morph: self state: self taskbarState icon: self taskbarIcon label: self taskbarLabel"

The uncommented part was the one that was slowing me down, its a copy from SystemWindow, on a new image of Pharo consumption drops to 15% but still have issues with Nautilus etc.

latsabben at Slack also recommended caching which helped also

taskbarTask ​ "myTask := nil." myTask ifNil: [ myTask := TaskbarTask morph: self state: self taskbarState icon: self taskbarIcon label: self taskbarLabel ]. myTask label: self taskbarLabel. ^myTask

Anyway I decided to port my project to C++ and Unreal Engine because I have many issues with Pharo speed wise and stability wise with Pharo 5. Plus many IDE features I miss like proper auto completion etc.

To be fair I tried to make custom gui with python and it was even slower in the past.

So its clear I need a high performance language + API, because I will be building a very heavy GUI (many more animations)  and I would like also some fast 3d functionality too.

On Sat, Jan 16, 2016 at 1:07 AM Sven Van Caekenberghe <[hidden email]> wrote:

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
In reply to this post by Nicolai Hess-3-2
Screen Shot 2016-01-16 at 00.38.10.png

and by the way menus on latest pharo 5 are broken


On Sat, Jan 16, 2016 at 1:29 AM Nicolai Hess <[hidden email]> wrote:
2016-01-16 0:11 GMT+01:00 Nicolai Hess <[hidden email]>:


2016-01-16 0:06 GMT+01:00 Sven Van Caekenberghe <[hidden email]>:

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

I would like to now that too.

Btw, this is interesting too:

WorldState debugShowDamage:true.

And look all the flashing in a nautilus and or playground window.

Hm, I think this was my fault. The fix for
17201 Marking Diffs broken in Pharo5
wasn't good.


 
 

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>



Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

Ben Coman
In reply to this post by kilon.alios
On Sat, Jan 16, 2016 at 4:35 AM, Dimitris Chloupis
<[hidden email]> wrote:

> So I decided to find out why Nuatilus delays to syntax highlight when I open
> ChronosManager I open my activity monitor to be amazed by the fact that
> pharo was consuming 30% of one of my cores.
>
> At the time I thought it was my fault because when my GUI steps I load from
> a png a form that I attack to a Morph. So I optimised that part loading all
> the pngs before hand , creating all the forms and during steping point only
> to the correct form.
>
> Nope still 30%
>
> ok change step time to 1 sec
>
> Nope still 30%
>
> ok delete step and step time alltogether
>
> Nope still 30%
>
> so the only explanation left is that pharo does not like I use images ,
> which are not that big anyway , my whole image library is just 1 mb.
>
> So how I profile this ? Is there any way to find exactly where that 30% is
> consumed ?

See below

> I tried to profile step and it retunred back with a mere 32ms , and I
> suspect thats the first step that loads the images , the second step would
> be much faster since it will just point to correct forms. So with a step of
> 32ms max and stepping once per second why a 30% CPU consumption ?


I loaded ChronosManager from the catalog, started it from the World
menu, and I see 55% cpu.  I googled for pharo profiling and found [1]
which describes using World > System >  Start Profiling All Processes.

Profiled without & with your app running
WorldMorph>>doOneCycle moved from 9% to 29%

A couple of steps in I see #interCyclePause is the same at 9%, so your
app seems full responsible for the 20% increase :)

Drilling down (a long way) along the most expensive path until I find
one of you classes (2.5%) ChrGUIMorph>>taskbarButtonFor:
and a few steps further down (0.3%) ChrGUIMorph>>taskbarIcon
then (0.3%) ImageReadWriter class>>formFromStream:
then (0.3%) PNGReadWriter>>processNonInterlaced

So its creating this icon every cycle.

Modifying...
    ChrGUIMorph>>taskbarIcon
        ^ChrStopwatchSettingsPNG new logotinyIcon

to...
    ChrGUIMorph>>taskbarIcon
        ^Smalltalk ui icons referencesIcon

drops cpu usage to 9%, and if I close your app it drops to 6%.


Profiling your app again, and again drilling down through
WorldState>>doOneCycleNowFor:
I see a long chain at 2.5% usage from WorldMorph>>runStepMethods all
the way down to FileSystem>>entriedAt:ifAbsent:do.   So filesystem
access occuring every cycle is where the time is being spent.

Along that chain I see ChrGUIMorph>>secondsFromTimerForm is calling
ChronosManager>>workingPath outside of the nil check for the cache in
secondsTimerFormCollection.

Moving "wp := ChronosManager workingPath"
inside the #ifNil:
drops cpu usage to 7%.

cheers -ben


[1] http://pharobooks.gforge.inria.fr/PharoByExampleTwo-Eng/latest/Profiling.pdf

Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

Ben Coman
In reply to this post by kilon.alios
On Sat, Jan 16, 2016 at 7:28 AM, Dimitris Chloupis
<[hidden email]> wrote:

> taskbarTask (self valueOfProperty: #noTaskbarTask ifAbsent: [ false ])
> ifTrue: [ ^ nil ]. ^ nil "TaskbarTask morph: self state: self taskbarState
> icon: self taskbarIcon label: self taskbarLabel"
>
> The uncommented part was the one that was slowing me down, its a copy from
> SystemWindow, on a new image of Pharo consumption drops to 15% but still
> have issues with Nautilus etc.
>
> latsabben at Slack also recommended caching which helped also
>
> taskbarTask "myTask := nil." myTask ifNil: [ myTask := TaskbarTask morph:
> self state: self taskbarState icon: self taskbarIcon label: self
> taskbarLabel ]. myTask label: self taskbarLabel. ^myTask
>
> Anyway I decided to port my project to C++ and Unreal Engine because I have
> many issues with Pharo speed wise

See my other post, in about an hour I moved your App from 55% cpu
usage on my machine to 7%, only 1% above our 6% idle.   We *do* need
to address that minimum idle, but its at the VM level since in-Image
profiling shows 90% time in ProcessorScheduler class>>idleProcess.  So
to me the Image seems not too bad performance wise

> and stability wise with Pharo 5.

Well, you are talking about bleeding edge alpha software.

> Plus many IDE features I miss like proper auto completion etc.

You've probably mentioned this somewhere previously, but in another
thread could you leave us with a summary of what is missing from auto
completion.

> To be fair I tried to make custom gui with python and it was even slower in
> the past.
>
> So its clear I need a high performance language + API, because I will be
> building a very heavy GUI (many more animations)  and I would like also some
> fast 3d functionality too.

good luck with it.
cheers -ben


>
> On Sat, Jan 16, 2016 at 1:07 AM Sven Van Caekenberghe <[hidden email]> wrote:
>>
>>
>> > On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]>
>> > wrote:
>> >
>> > taskbar was the problem, damn pharo gui is a huge pain in the hat.
>>
>> How so ?
>>
>> > On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis
>> > <[hidden email]> wrote:
>> > ITs not the step, I removed the step as I said in my first post. Still
>> > 30% cpu consumption
>> >
>> > The images are PNGs and RGBA , 8bit
>> >
>> >
>> > On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
>> > It depends on what you are doing in a step, but 1s step should not hurt.
>> > May be the problem is somewhere else.
>> > With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
>> > (in my case, only scaling and displaying a From in a DrGeo canvas).
>> > Also, do your bitmaps come with 32 bits depth?
>> >
>> > --
>> > Dr. Geo
>> > http://drgeo.eu
>> >
>> >
>> >
>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
Hello Ben :)

First thanks for investing 1 hour of your precious time to look through my code. I really appreciate it . If there is one thing I love about pharo is the super amazing community.

Yes definetly my fault as always :D

I did not know about this profiling, I used it for the creating of my Morphs but it did not occur to me to google like you did and go with profiling all processes.

A huge thank you to latsaben and the rest of you guys. I downgraded down to Pharo 4 and again I agree 5 is the unstable version anyway but I loved using the new tools and could not wait till April for the Pharo 5 release :)

The problem is battling without documentation is very hard and I have spent at least 10 hours trying to understand how taskbar works and I still fail.

Your code solves my problem , apart from 1. Loading those pngs is sloowwwww, one would expect that accesing the files themselves to get the binary data is what is slow for pharo but no, thats is fast enough. What is slow , because I profiled this is converting the binary data to  form is consuming a ton of time. The result is that to load a GUI with only 1 mb of pngs takes 1 second.

Also with your solution I lose the ability to update my taskbar icon, by the way the non optimised code I was using is a direct copy from SystemWindow class, which means that class should be optimised too.

Another problem is the scaling of images, really bad with morphic though Athens must be better.

Auto completion problems are well knows, sometimes autocompletion does not show all methods, sometimes autocompletion shows every character you type so for example ChronosManager open will show
ChronosManager o
ChronosManager op
ChronosManager ope
ChronosMAnager open

Sometimes it shows methods that do not even belong to the class forcing me to use Spotter to find the correct method. Its a a mess.

I am not abandoning pharo, I love it even with its flaws. But I try to outsource as much as I can my workflow from pharo to external libraries and apps that are way more mature and efficient for what I am trying to do.

I always inteded to make Blender work with Pharo, I accomplished that now I want to make Unreal engine to work with pharo, so I can make a triangle of love, Blender for asset creation, Unreal for real time rendering of 2d and 3d graphics , Pharo as the brain of the logic and advanced scripting of the other 2. This is was my dream and goal all along. So I will be moving my GUI to Unreal that will allow me much more advanced and performance orientated features that mix 2d with 3d but I will keeping my main logic in pharo.


On Sat, Jan 16, 2016 at 6:35 AM Ben Coman <[hidden email]> wrote:
On Sat, Jan 16, 2016 at 7:28 AM, Dimitris Chloupis
<[hidden email]> wrote:
> taskbarTask (self valueOfProperty: #noTaskbarTask ifAbsent: [ false ])
> ifTrue: [ ^ nil ]. ^ nil "TaskbarTask morph: self state: self taskbarState
> icon: self taskbarIcon label: self taskbarLabel"
>
> The uncommented part was the one that was slowing me down, its a copy from
> SystemWindow, on a new image of Pharo consumption drops to 15% but still
> have issues with Nautilus etc.
>
> latsabben at Slack also recommended caching which helped also
>
> taskbarTask "myTask := nil." myTask ifNil: [ myTask := TaskbarTask morph:
> self state: self taskbarState icon: self taskbarIcon label: self
> taskbarLabel ]. myTask label: self taskbarLabel. ^myTask
>
> Anyway I decided to port my project to C++ and Unreal Engine because I have
> many issues with Pharo speed wise

See my other post, in about an hour I moved your App from 55% cpu
usage on my machine to 7%, only 1% above our 6% idle.   We *do* need
to address that minimum idle, but its at the VM level since in-Image
profiling shows 90% time in ProcessorScheduler class>>idleProcess.  So
to me the Image seems not too bad performance wise

> and stability wise with Pharo 5.

Well, you are talking about bleeding edge alpha software.

> Plus many IDE features I miss like proper auto completion etc.

You've probably mentioned this somewhere previously, but in another
thread could you leave us with a summary of what is missing from auto
completion.

> To be fair I tried to make custom gui with python and it was even slower in
> the past.
>
> So its clear I need a high performance language + API, because I will be
> building a very heavy GUI (many more animations)  and I would like also some
> fast 3d functionality too.

good luck with it.
cheers -ben


>
> On Sat, Jan 16, 2016 at 1:07 AM Sven Van Caekenberghe <[hidden email]> wrote:
>>
>>
>> > On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]>
>> > wrote:
>> >
>> > taskbar was the problem, damn pharo gui is a huge pain in the hat.
>>
>> How so ?
>>
>> > On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis
>> > <[hidden email]> wrote:
>> > ITs not the step, I removed the step as I said in my first post. Still
>> > 30% cpu consumption
>> >
>> > The images are PNGs and RGBA , 8bit
>> >
>> >
>> > On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
>> > It depends on what you are doing in a step, but 1s step should not hurt.
>> > May be the problem is somewhere else.
>> > With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
>> > (in my case, only scaling and displaying a From in a DrGeo canvas).
>> > Also, do your bitmaps come with 32 bits depth?
>> >
>> > --
>> > Dr. Geo
>> > http://drgeo.eu
>> >
>> >
>> >
>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

stepharo
In reply to this post by Nicolai Hess-3-2
nicolai

I could not get what you wrote :)
could you repeat it ?

Le 15/1/16 22:21, Nicolai Hess a écrit :


2016-01-15 21:53 GMT+01:00 Hilaire <[hidden email]>:
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

I suspect Rubric.

Old pharo withouth Rubric in Nautilus
-> ~ 0.5 %

Current Pharo with Rubric in Nautilus
-> ~ 10 %

both with a fresh image and only one Nautilus window open.
 

--
Dr. Geo
http://drgeo.eu





Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

stepharo
In reply to this post by kilon.alios

taskbar was the problem,
what was it?
damn pharo gui is a huge pain in the hat.
And we improved it a lot already.
But this is not by accident that Alain spent a couple of years working on Bloc

On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption

The images are PNGs and RGBA , 8bit


On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

--
Dr. Geo
http://drgeo.eu




Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

stepharo
In reply to this post by Nicolai Hess-3-2
Yes nautilus is full of wrong changed messages and others.

Stef


Le 16/1/16 00:11, Nicolai Hess a écrit :


2016-01-16 0:06 GMT+01:00 Sven Van Caekenberghe <[hidden email]>:

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

I would like to now that too.

Btw, this is interesting too:

WorldState debugShowDamage:true.

And look all the flashing in a nautilus and or playground window.
 

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
In reply to this post by stepharo
Yeap I cannot wait for Bloc :)

a big thanks to Alain, Bloc already looks amazing from the little I tried. I am sure the loading of PNGs will be optimised at some point too in the future. Everything is a matter of time.

Stef see my previous posts to see what was the issue but that summary is that I copied a method from SystemWindow which apparently was not optimized and was creation a new morph each cycle for a taskbar button.

On Sat, Jan 16, 2016 at 10:08 AM stepharo <[hidden email]> wrote:

taskbar was the problem,
what was it?

damn pharo gui is a huge pain in the hat.
And we improved it a lot already.
But this is not by accident that Alain spent a couple of years working on Bloc


On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption

The images are PNGs and RGBA , 8bit


On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

--
Dr. Geo
http://drgeo.eu




Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
ok found how to update the taskbar button , I add this to my step

World submorphs do: [ :each| (each isKindOf: TaskbarMorph) ifTrue: [each updateTaskButtons]]

pharo at 6-9% consumption of course depending on the size of the pharo window. Not bad at all :)

Thank you all for your help, problem solved

On Sat, Jan 16, 2016 at 10:12 AM Dimitris Chloupis <[hidden email]> wrote:
Yeap I cannot wait for Bloc :)

a big thanks to Alain, Bloc already looks amazing from the little I tried. I am sure the loading of PNGs will be optimised at some point too in the future. Everything is a matter of time.

Stef see my previous posts to see what was the issue but that summary is that I copied a method from SystemWindow which apparently was not optimized and was creation a new morph each cycle for a taskbar button.

On Sat, Jan 16, 2016 at 10:08 AM stepharo <[hidden email]> wrote:

taskbar was the problem,
what was it?

damn pharo gui is a huge pain in the hat.
And we improved it a lot already.
But this is not by accident that Alain spent a couple of years working on Bloc


On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption

The images are PNGs and RGBA , 8bit


On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
It depends on what you are doing in a step, but 1s step should not hurt.
May be the problem is somewhere else.
With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
(in my case, only scaling and displaying a From in a DrGeo canvas).
Also, do your bitmaps come with 32 bits depth?

--
Dr. Geo
http://drgeo.eu




Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

EstebanLM
In reply to this post by kilon.alios

On 16 Jan 2016, at 01:01, Dimitris Chloupis <[hidden email]> wrote:

<Screen Shot 2016-01-16 at 00.38.10.png>

and by the way menus on latest pharo 5 are broken

not the menus
there is a problem with WideString and string primitives in latest spur vm. 
in the mean time you can download stable instead latest and you will be ok.

Esteban



On Sat, Jan 16, 2016 at 1:29 AM Nicolai Hess <[hidden email]> wrote:
2016-01-16 0:11 GMT+01:00 Nicolai Hess <[hidden email]>:


2016-01-16 0:06 GMT+01:00 Sven Van Caekenberghe <[hidden email]>:

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

I would like to now that too.

Btw, this is interesting too:

WorldState debugShowDamage:true.

And look all the flashing in a nautilus and or playground window.

Hm, I think this was my fault. The fix for
17201 Marking Diffs broken in Pharo5
wasn't good.


 
 

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: Morphic is super slow

kilon.alios
yes thanks Esteban I am back to Pharo 4 and I am fine :)

will stick with it, till the release of Pharo 5.

On Sat, Jan 16, 2016 at 12:25 PM Esteban Lorenzano <[hidden email]> wrote:
On 16 Jan 2016, at 01:01, Dimitris Chloupis <[hidden email]> wrote:

<Screen Shot 2016-01-16 at 00.38.10.png>

and by the way menus on latest pharo 5 are broken

not the menus
there is a problem with WideString and string primitives in latest spur vm. 
in the mean time you can download stable instead latest and you will be ok.

Esteban



On Sat, Jan 16, 2016 at 1:29 AM Nicolai Hess <[hidden email]> wrote:
2016-01-16 0:11 GMT+01:00 Nicolai Hess <[hidden email]>:


2016-01-16 0:06 GMT+01:00 Sven Van Caekenberghe <[hidden email]>:

> On 15 Jan 2016, at 23:30, Dimitris Chloupis <[hidden email]> wrote:
>
> taskbar was the problem, damn pharo gui is a huge pain in the hat.

How so ?

I would like to now that too.

Btw, this is interesting too:

WorldState debugShowDamage:true.

And look all the flashing in a nautilus and or playground window.

Hm, I think this was my fault. The fix for
17201 Marking Diffs broken in Pharo5
wasn't good.


 
 

> On Fri, Jan 15, 2016 at 11:32 PM Dimitris Chloupis <[hidden email]> wrote:
> ITs not the step, I removed the step as I said in my first post. Still 30% cpu consumption
>
> The images are PNGs and RGBA , 8bit
>
>
> On Fri, Jan 15, 2016 at 10:54 PM Hilaire <[hidden email]> wrote:
> It depends on what you are doing in a step, but 1s step should not hurt.
> May be the problem is somewhere else.
> With DrGeo, I noted Athens is faster to BitBlt with bitmap operations
> (in my case, only scaling and displaying a From in a DrGeo canvas).
> Also, do your bitmaps come with 32 bits depth?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>



123