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


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 b9662
-
-
before: 26.4 MiB +   3.5 MiB =  29.9 MiBMeasure 5f0940
after.: 26.4 MiB +   3.4 MiB =  29.9 MiBMeasure ff6038
-
before: 11.9 MiB +   2.0 MiB =  14.0 MiBJournal 01f5e1
after.: 13.0 MiB +   2.0 MiB =  15.0 MiBJournal 8828b9
-
before:  6.2 MiB + 514.0 KiB =   6.7 MiBXorg
after.: 20.7 MiB + 466.0 KiB =  21.2 MiBXorg


Cheers,
Sayamindu

-- 
Sayamindu Dasgupta
[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


[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