Stable versions of what? Bodhi currently uses EFL 1.7.5 and the stable E17
release.


On Wed, Jan 23, 2013 at 1:34 PM, Ulisses Furquim <ulis...@profusion.mobi>wrote:

> Hi Jeff,
>
> On Wed, Jan 23, 2013 at 5:29 PM, Jeff Hoogland <jeffhoogl...@linux.com>
> wrote:
> > I understand all those reasons, the difference is I'm just going to have
> to
> > start telling people like this ->
> >
> >
> http://forums.bodhilinux.com/index.php?/topic/7701-enlightenment-cpu-usage-at-98-on-intel-i810/
> >
> > That they simply can't use E17 because it will eat all of their CPU all
> the
> > time with compositing :-/
> >
> > Personally I use compositing on all my system, it looks great in general.
>
> What about stable versions?
>
> -- Ulisses
>
> > On Mon, Jan 21, 2013 at 10:26 PM, Carsten Haitzler <ras...@rasterman.com
> >wrote:
> >
> >> On Mon, 21 Jan 2013 10:51:01 -0600 Jeff Hoogland <jeffhoogl...@linux.com
> >
> >> said:
> >>
> >> > Raster had mentioned on IRC last night that compositing had become
> >> > non-optional in SVN builds already. What is the reason for this? I
> >> > understand compositing is the future - but forcing it on everyone it
> >> going
> >> > to make E much less usable on legacy hardware - a place where it
> really
> >> > shines.
> >>
> >> reasons:
> >>
> >> 1. aesthetics. having to "design" for both compositing and
> non-compositing
> >> is
> >> limiting and painful.
> >> 2. code simplification - this cuts down mem usage and resource usage
> where
> >> we
> >> make non-compositing code paths redundant (never loaded) or even get
> >> totally
> >> removed. it also makes e and efl's code MUCH easier to maintain as we
> cut
> >> out a
> >> whole class of pain.
> >> 3. if you do non-compositing, then your other option is avoid anything
> that
> >> isnt a pure rectangle.. or use shapes... do u have any idea how
> inefficient
> >> shaped windows are? do you know how they are implemented? compositing is
> >> MORE
> >> efficient than shaped windows except for the most trivial shape cases.
> it
> >> also
> >> has fewer artefacts. don't make me do a rundown on the actual
> >> implementation of
> >> xshape etc... i have little enough time as-is. take if from someone who
> >> started
> >> doing x shape stuff back in 1996...
> >> 4. wayland - we cant sensibly become a wayland compositor without ALWAYS
> >> compositing.
> >> 5. compositing only allows us to move content out of windows (eg the
> >> container
> >> bg window that holds a canvas with wallpaper and your efm icons etc.)
> and
> >> merge
> >> it into the COMPOSITOR canvas. this reduces mem footrpint drastically -
> >> example. you have a 1600x1200 screen. you have a 1600x1200 walllpaper. e
> >> will
> >> keep the rgba pixels for that wallpaper inside its memory because it
> >> renders
> >> them to the bg canvas with software. this bg canvas is a window..that is
> >> composited.. this means this window consumes at least 1 pixmap of
> memory...
> >> that means 1600x1200 (8mb) for the original PLUS 8mb for the composited
> >> pixmap.. to store essentially the same content PLUS some icons. if we
> move
> >> it
> >> into the compositor canvas we get:
> >>
> >> 1. wallpaper image is rendered and scaled by the same enigne as the
> >> compositor
> >> (sw or gl).
> >> 2. only the original wp image is needed, not an intermediate window
> >> pixmap. we
> >> save 8mb of memory insnantly.
> >> 3. evas already has caches for scaled data and can throw out original
> data
> >> etc.
> >> so we also recycle this infra directly.
> >> 4. "animated" wallpapers now get faster as they render with gl... as do
> >> wallpaper transitions etc.
> >>
> >> repeat for everything else in e17... it all goes into the compositor
> canvas
> >> EXCEPT "window content" (client windows - be they e's internal dialogs
> or
> >> external apps - to e's compositor these will just be image objects -
> they
> >> currently are, but they also include the frame window sections
> >> (borders/titles)
> >> provided by e - these will be split out to live in the canvas).
> >> 6. if objects move into the comp canvas - like window borders, menus,
> >> shelves... we solve the clipping problem. right now borders, shelves,
> menus
> >> etc. get clipped by their window. that's life. once they live in the
> comp
> >> canvas they can extend beyond their object bounds (add glows, shadows,
> >> other
> >> effects or pixels/imagery extending beyond their bounds). this comes for
> >> "free"
> >> when moving into evas and out of a window and that is part of the plan
> - to
> >> migrate content all into the compositor canvas.
> >> 7. i can go on... (tldr time - you asked "why" so read, or never ask
> again
> >> :))
> >> this has been talked about a lot amongst devs already. it's not possible
> >> to do
> >> non-compositing AND compositing and move forward. we have little enough
> >> developer resources as-is. this simplifies and allows us to have a
> future.
> >> the
> >> fact that we BOTHERED to have fast software compositing is a big part of
> >> the
> >> commitment to make compositing work for EVERYONE - you DONT need a
> >> "supported
> >> gpu + driver" to use it. yes - it means extra system load, and slowdowns
> >> for
> >> those avoiding compositing now entirely - but that's the price of
> progress.
> >> we've "lowered" the cost, but it isn't "free". no one is totally LEFT
> OUT.
> >> the
> >> software compositor works even in 16bpp (with extra overhead though).
> and
> >> 8bpp .. well ok - sorry 8bpp people. if you can only do 8bpp then we're
> >> leaving
> >> you behind. sorry. 1995 will be happy to keep you. :( we CAN reduce
> >> overhead of
> >> software compositing still - it's heavy because we HAVE to copy pixels
> >> from x
> >> (read data via x(shm)getimage). we can't fix that unless we can get a
> >> zero-copy
> >> path. x allows us no such path for software (shared pixmaps are not an
> >> option
> >> fyi). we COULD shortcut this path - but we need to do it at BOTH sides
> of
> >> the
> >> pipeline. that means modify toolkits/apps. we CAN modify efl to bypass x
> >> entirely for rendering and only use it for focus/input/events and use a
> >> back-channel shared memory system to export pixel buffers direct from
> >> client to
> >> comp. it's doable. we'd cut overhead in half for copies as we... get
> rid of
> >> them (we only have now rendering overehead). *IF* comp also bypasses
> x's fb
> >> management and goes direct to fbdev or kms... and does evil stuff... we
> can
> >> ALSO make "rendered pixel uploads" totally free. ie zero copy buffer
> >> swaps. -
> >> then the ONLY overhead we have is filling the comp "backbuffer". what
> you
> >> may
> >> not be aware of is.. evas ALREADY has this infra. it can already do this
> >> little
> >> zero-copy buffer swap trick... all the code is there.. it's even been
> >> tested
> >> with real drivers that do support this - there is even a virtual buffer
> >> swap
> >> emulation layer to test it if you don't have such a magic driver....
> >> BUT... it
> >> requires driver work to make this possible - or bypassing x's fb driver
> >> entirely... but we can already do this kind of stuff. we're FAR from
> >> maximum
> >> optimal level in sw compositing. in fact if we did both of the above for
> >> things
> >> like scrolling your browser window around we'd basically increase
> >> framerate by
> >> 3 times compared to now. that's our existing potential upside if we plug
> >> all
> >> the bits together. we're far from pure ultimate potential, and even
> being
> >> far
> >> from it.. we are very usable on low end systems. so without a gpu to
> >> accelerate
> >> it all and make it all zero-copy... we have a potential upside (for efl
> >> apps)
> >> of up to 3 TIMES faster (and a minimum of 2 times faster). for non-efl
> >> epps up
> >> to 2 TIMES faster. though at this point.. we're almost being a wayland
> >> style
> >> compositor directly, so i'm wondering if we'll ever bother with x stuff
> to
> >> optimize this far and just jump to being wayland from there, as wayland
> is
> >> all
> >> about sending buffers around and avoiding copies... efl already lends
> >> itself
> >> very well to this. it already has the start of a wayland port and a
> wayland
> >> compositor in e17. and as above... we cant move to doing wayland stuff
> >> unless
> >> we move to being "compositing only". keeping mind "compositing only"
> does
> >> not
> >> EXCLUDe optimizations like "zeo copy/composite" you do for things like
> >> fullscreen windows (games etc.). if you do this just right you can take
> the
> >> client pixel buffer it sends you (it sends a handle to it - it doesn't
> >> COPY it
> >> to you) and you just program the gfx chipset to pint the real hw buffer
> >> scanout
> >> to the client buffer. ALL the compositor is doing is updating where the
> fb
> >> points to... it's doing zero actual compositing/copying/blending work in
> >> this
> >> case. its turles... err.. zero copy all the way down. so your games are
> not
> >> affected at all. if at any point some menu or dialog appears on top.. it
> >> begins
> >> compositing again for that frame on until that overlayed window goes
> away.
> >> given smart enough compositing and the right hardware you can EVEN avoid
> >> compositing in such simple scenarios.. a lot of hardware supports RGBA
> >> OVERLAYS
> >> - multiple buffers blended on top of eachother. your hw mouse cursor is
> >> exactly
> >> such an overlay buffer. "xv video acceleration uses such a wh buffer
> often
> >> too
> >> - but its yuv, not rgba... but same principle. a smart compositor can
> >> PROGRAM
> >> the overlay buffer to point to this "popup menu/dialog" and keep the 2
> >> framebuffers totally separate... zero compositing/copies... until the 3
> of
> >> windows becomes too complex to point directly at hw buffer layers, then
> it
> >> has
> >> to start compositing for real... my point here is... this is the path we
> >> MUST
> >> go down. we NEED to. wayland is being designed for this.. and they're
> >> right.
> >> this is how u get zero-tearing smooth screen updates with minimal
> overhead.
> >> it's a fundamental shift in perspective from copying pixels to a single
> >> shared
> >> framebuffer with clip rects, but it is the reality of most hardware you
> >> already
> >> have from phones through to set top boxes, tablets, laptops and
> desktops.
> >> you
> >> just don't know it. most of these capabilities lie idle and unused
> because
> >> our
> >> display system is too "old school" AND because of nay-sayers holding
> back
> >> progress saying "waaaa - i don't want compositing!". reality is that
> >> basically
> >> anyone who KNOWS graphics, hw and infra all the way down to these nuts
> and
> >> bolts is already in agreement - this is the way to go. we agree because
> we
> >> know
> >> what is actually going on behind the scenes. the decision to be
> compositing
> >> only is a big step - but in the right direction. suffice to say, that if
> >> you
> >> don't "get it" now, in a few years, you will. the penny may drop. maybe
> for
> >> some it won't - you may be the same people who think a green screen
> vt100
> >> is
> >> all u ever need. pixels are useless. color is a waste of memory. reality
> >> is...
> >> sticking to non-composited displays is as useful as sticking to a vt100
> >> attached to a 192000 baud serial line. :)
> >>
> >> --
> >> ------------- Codito, ergo sum - "I code, therefore I am" --------------
> >> The Rasterman (Carsten Haitzler)    ras...@rasterman.com
> >>
> >>
> >
> >
> > --
> > ~Jeff Hoogland <http://jeffhoogland.com/>
> > Thoughts on Technology <http://jeffhoogland.blogspot.com/>, Tech Blog
> > Bodhi Linux <http://bodhilinux.com/>, Enlightenment for your Desktop
> >
> ------------------------------------------------------------------------------
> > Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> > MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
> > with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> > MVPs and experts. ON SALE this month only -- learn more at:
> > http://p.sf.net/sfu/learnnow-d2d
> > _______________________________________________
> > enlightenment-users mailing list
> > enlightenment-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-users
>
>
>
> --
> Ulisses Furquim
> ProFUSION embedded systems
> http://profusion.mobi
> Mobile: +55 19 9250 0942
> Skype: ulissesffs
>
>
> ------------------------------------------------------------------------------
> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> MVPs and experts. ON SALE this month only -- learn more at:
> http://p.sf.net/sfu/learnnow-d2d
> _______________________________________________
> enlightenment-users mailing list
> enlightenment-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-users
>



-- 
~Jeff Hoogland <http://jeffhoogland.com/>
Thoughts on Technology <http://jeffhoogland.blogspot.com/>, Tech Blog
Bodhi Linux <http://bodhilinux.com/>, Enlightenment for your Desktop
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnnow-d2d
_______________________________________________
enlightenment-users mailing list
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to