On Wed, Oct 21, 2015 at 4:16 AM, Carsten Haitzler <ras...@rasterman.com> wrote: > raster pushed a commit to branch master. > > http://git.enlightenment.org/core/efl.git/commit/?id=7cc41473a30236b11f0c7b57425e273d2874e30e > > commit 7cc41473a30236b11f0c7b57425e273d2874e30e > Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com> > Date: Wed Oct 21 20:06:23 2015 +0900 > > efl - eo - massively improve eo cal resolv and data scope get with cache > > BEWARE! this breaks eo ABI. _eo_call_resolve and _eo_data_scope_get > are 2 of the biggest cpu users in eo. they easily consume like 10-15% > cpu between them on tests that drive a lot of api - like simply > scrolling a genlist around. this is a lot of overhead for efl. this > fixes that to make them far leaner. In fact this got an overall 10% > cpu usage drop and that includes all of the actual rendering, and code > work, so this would drop the eo overhead of these functions incredibly > low. using this much cpu just on doing call marshalling is a bug and > thus - this is a fix, but ... with an abi break to boot. more abi > breaks may happen before release to try and get them all in this > release so we don't have to do them again later. > > note i actually tested 4, 3, 2, and 1 cache slots, and 1 was the > fastest. 2 was very close behind and then it got worse. all were > better than with no cache though. > > benchmark test method: > > export ELM_ENGINE=gl > export ELM_TEST_AUTOBOUNCE=1 > > while [ 1 ]; do sync; sync; sync; time elementary_test -to genlist; > sleep 1; done > > take the 2nd to the 8th results (7 runs) and total up system and user > time. copmpare this to the same without the cache. with the cache cpu > time used is 90.3% of the cpu time used without - thus a win. at least > in my tests. > > @fix
This break make check in eo test suite. To be precise tests/eo/test_function_overrides. -- Cedric BAIL ------------------------------------------------------------------------------ _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel