[sugar] Moving to metacity with composition (was: Preparing for the feature freeze)

2008-06-03 Thread Tomeu Vizoso
On Tue, Jun 3, 2008 at 11:54 AM, Marco Pesenti Gritti
<[EMAIL PROTECTED]> wrote:
> On Tue, Jun 3, 2008 at 11:45 AM, Tomeu Vizoso <[EMAIL PROTECTED]> wrote:
>>> Priority 2. I would love to have it but it might be too late, given
>>> that Sayamindu experimentation run into interesting problems.
>>
>> A nice thing about this is that little changes to sugar are expected
>> to be needed, so it's easy to swap-in swap-out, perhaps in a quick
>> 8.2.1 release?
>
> Well, if we go for the fullscreen hint approach, it will need changes
> to all the non-python activities, so it would be pretty invasive.

Ouch, is that acceptable? What will happen when kids try to run an old activity?

 activate composition (eToys and
 Record have trouble with this).
>>>
>>> Priority 1. Can we actually do this given the memory constraints?
>>
>> We'll be saving 3.5MB per python activity with the prefork trick, and
>> in the worst case we would be having a penalty of 2MB per fullscreen
>> window because of composition.
>
> Bernando was saying that this is not possible because of *video*
> memory constraints.

Hmm, but not all those pixmaps will be kept in video mem, right? If
so, then I don't get why the faster builds work so fine.

Anyway, Martin Dengler did an awesome job measuring the mem hit in
matchbox, so I guess we should reread it and maybe redo the tests with
metacity:

http://lists.laptop.org/pipermail/sugar/2008-March/004718.html

Sayamindu, you say you got OOM problems after activating composition,
can you check where that memory is going? Or might be the X server
crashing instead?

>> If we only keep the active activity
>> composited, we could limit this to a total of 4MB with peaks of 6MB
>> (desktop window + active activity + inactive activity while we take
>> the screenshot).
>
> I would like to see a proof of concept of this approach.

Me too ;)

Just for the record, I'm not strongly advocating for composition in
8.2. I just happen to think that it could bring a lot of value and we
should consider carefully if it's doable or not.

Cheers,

Tomeu
___
Sugar mailing list
Sugar@lists.laptop.org
http://lists.laptop.org/listinfo/sugar


Re: [sugar] Moving to metacity with composition (was: Preparing for the feature freeze)

2008-06-03 Thread Marco Pesenti Gritti
On Tue, Jun 3, 2008 at 12:16 PM, Tomeu Vizoso <[EMAIL PROTECTED]> wrote:
> On Tue, Jun 3, 2008 at 11:54 AM, Marco Pesenti Gritti
> <[EMAIL PROTECTED]> wrote:
>> On Tue, Jun 3, 2008 at 11:45 AM, Tomeu Vizoso <[EMAIL PROTECTED]> wrote:
 Priority 2. I would love to have it but it might be too late, given
 that Sayamindu experimentation run into interesting problems.
>>>
>>> A nice thing about this is that little changes to sugar are expected
>>> to be needed, so it's easy to swap-in swap-out, perhaps in a quick
>>> 8.2.1 release?
>>
>> Well, if we go for the fullscreen hint approach, it will need changes
>> to all the non-python activities, so it would be pretty invasive.
>
> Ouch, is that acceptable? What will happen when kids try to run an old 
> activity?

Well, there is no official API freeze in effect yet. Old activities
will get a window frame. Personally I think that's acceptable if using
the fullscreen hint is considered the best semantic. We could also
consider to use normal window + maximized. If someone could spend some
time thinking about the possible approaches and to write them down
(with advantages and disadvantages) that would be a good step forward.

> activate composition (eToys and
> Record have trouble with this).

 Priority 1. Can we actually do this given the memory constraints?
>>>
>>> We'll be saving 3.5MB per python activity with the prefork trick, and
>>> in the worst case we would be having a penalty of 2MB per fullscreen
>>> window because of composition.
>>
>> Bernando was saying that this is not possible because of *video*
>> memory constraints.
>
> Hmm, but not all those pixmaps will be kept in video mem, right? If
> so, then I don't get why the faster builds work so fine.

What I understood from Bernardo is that they needs to be in video mem.
If you open several windows in faster and try to rotate the screen,
does it work?

Marco
___
Sugar mailing list
Sugar@lists.laptop.org
http://lists.laptop.org/listinfo/sugar


Re: [sugar] Moving to metacity with composition (was: Preparing for the feature freeze)

2008-06-03 Thread Tomeu Vizoso
On Tue, Jun 3, 2008 at 12:23 PM, Marco Pesenti Gritti
<[EMAIL PROTECTED]> wrote:
> On Tue, Jun 3, 2008 at 12:16 PM, Tomeu Vizoso <[EMAIL PROTECTED]> wrote:
>> On Tue, Jun 3, 2008 at 11:54 AM, Marco Pesenti Gritti
>> <[EMAIL PROTECTED]> wrote:
>>> On Tue, Jun 3, 2008 at 11:45 AM, Tomeu Vizoso <[EMAIL PROTECTED]> wrote:
>> activate composition (eToys and
>> Record have trouble with this).
>
> Priority 1. Can we actually do this given the memory constraints?

 We'll be saving 3.5MB per python activity with the prefork trick, and
 in the worst case we would be having a penalty of 2MB per fullscreen
 window because of composition.
>>>
>>> Bernando was saying that this is not possible because of *video*
>>> memory constraints.
>>
>> Hmm, but not all those pixmaps will be kept in video mem, right? If
>> so, then I don't get why the faster builds work so fine.
>
> What I understood from Bernardo is that they needs to be in video mem.
> If you open several windows in faster and try to rotate the screen,
> does it work?

Quite well. Just tried with Journal, Terminal, Browse, Write and Chat
and queued several rotates without any crash. X took a bit of memory
during the rotate, but was released when the operation finished. 70MB
free.

Regards,

Tomeu
___
Sugar mailing list
Sugar@lists.laptop.org
http://lists.laptop.org/listinfo/sugar


Re: [sugar] Moving to metacity with composition (was: Preparing for the feature freeze)

2008-06-03 Thread Martin Dengler
As an aside...

On Tue, Jun 03, 2008 at 12:16:27PM +0200, Tomeu Vizoso wrote:
> Sayamindu, you say you got OOM problems after activating composition,
> can you check where that memory is going? Or might be the X server
> crashing instead?

Even on my C2 "yum search yummemoryimprovesinf9" causes significant
memory pressure[1].  Sugar/Glucose/Sweetness becomes unresponsive,
though oom-killer doesn't get involved. I'm surprised that it's even
feasible to run yum on a B4 with sugar running.  I've been using
compcache[2,3] to help with this pressure.

> Cheers,
> 
> Tomeu

Martin

1. As in, "free" in vmstat goes down to 0, from 40.  Yeah, this is
imprecise.  "cache" is still fine at 80.  joyride-1998. That's not
downloading any updates, no activities running.
2. http://dev.laptop.org/ticket/28
3. http://www.xades.com/ , "compcache on the XO"


pgpaO0VEf9ikT.pgp
Description: PGP signature
___
Sugar mailing list
Sugar@lists.laptop.org
http://lists.laptop.org/listinfo/sugar


Re: [sugar] Moving to metacity with composition (was: Preparing for the feature freeze)

2008-06-04 Thread Sayamindu Dasgupta
On Tue, Jun 3, 2008 at 5:09 PM, Martin Dengler <[EMAIL PROTECTED]> wrote:
> As an aside...
>
> On Tue, Jun 03, 2008 at 12:16:27PM +0200, Tomeu Vizoso wrote:
>> Sayamindu, you say you got OOM problems after activating composition,
>> can you check where that memory is going? Or might be the X server
>> crashing instead?
>
> Even on my C2 "yum search yummemoryimprovesinf9" causes significant
> memory pressure[1].  Sugar/Glucose/Sweetness becomes unresponsive,
> though oom-killer doesn't get involved. I'm surprised that it's even
> feasible to run yum on a B4 with sugar running.  I've been using
> compcache[2,3] to help with this pressure.
>
>> Cheers,
>>
>> Tomeu
>
> Martin
>
> 1. As in, "free" in vmstat goes down to 0, from 40.  Yeah, this is
> imprecise.  "cache" is still fine at 80.  joyride-1998. That's not
> downloading any updates, no activities running.
> 2. http://dev.laptop.org/ticket/28
> 3. http://www.xades.com/ , "compcache on the XO"
>

I tried your ps_mem.py based tests, as outlined at
http://lists.laptop.org/pipermail/sugar/2008-March/004718.html (well,
not an exact replica, but close to it). I was running os16 from
http://pilgrim.laptop.org/~pilgrim/olpc/streams/olpc3/build16/, and
was unable to run most activities on it (eg: Web, Write, etc). The
"before" part of the test was done with matchbox (the stock one which
came with the os), and the after part with metacity, with compositor
enabled. The results are as follows:


-
before:  2.5 MiB + 459.0 KiB =   2.9 MiBmatchbox-window-manager
-
after.:  1.8 MiB + 552.5 KiB =   2.3 MiBmetacity
-
-
before: 73.3 MiB +   5.3 MiB =  78.6 MiBpython (12)
after.: 73.7 MiB +   5.6 MiB =  79.3 MiBpython (12)
-
before: 13.1 MiB +   1.9 MiB =  14.9 MiBTerminal <17c20
after.: 13.1 MiB +   1.8 MiB =  14.9 MiBTerminal http://sayamindu.randomink.org/ramblings]
___
Sugar mailing list
Sugar@lists.laptop.org
http://lists.laptop.org/listinfo/sugar


Re: [sugar] Moving to metacity with composition (was: Preparing for the feature freeze)

2008-06-04 Thread Martin Dengler
On Wed, Jun 04, 2008 at 09:28:40PM +0530, Sayamindu Dasgupta wrote:
> I tried your ps_mem.py based tests [...]

Cool -- looks like just moving to os16 + metacity saved at least 14
MiB[1] (not counting any python savings) and Xorg grew by 15 MiB.

> Cheers,
> Sayamindu

Martin

1. 2 + 6 + 6 MiB: matchbox - metacity, Terminal, and Journal MiB
savings.  These are obviously not numbers to rely on, but they're
probably a decent in-kind test (as I saw net memory usage grow, and so
did you, but the growths are on the same order of magnitude. As it
looks like many other things might have got a lot better, this still
seems pretty promising to me.


pgpjl0gJua3Jr.pgp
Description: PGP signature
___
Sugar mailing list
Sugar@lists.laptop.org
http://lists.laptop.org/listinfo/sugar


Re: [sugar] Moving to metacity with composition (was: Preparing for the feature freeze)

2008-06-05 Thread Jim Gettys
For composition to not eat memory (a full frame buffer's
worth/activity), the buried windows need to be "unmapped" in X parlance.
When a window is unmapped, X can free the contents of the window even
when composite is running (IIRC).

This may require some work in whatever window manager we decide on.
 - Jim

> 
> Just for the record, I'm not strongly advocating for composition in
> 8.2. I just happen to think that it could bring a lot of value and we
> should consider carefully if it's doable or not.

-- 
Jim Gettys <[EMAIL PROTECTED]>
One Laptop Per Child

___
Sugar mailing list
Sugar@lists.laptop.org
http://lists.laptop.org/listinfo/sugar