On 09/07/13 15:08, Jérémy Zurcher wrote:
> On Tuesday 09 July 2013  13:40, Tom Hacohen wrote :
>> On 09/07/13 03:55, Carsten Haitzler (The Rasterman) wrote:
>>> On Mon, 08 Jul 2013 18:00:15 +0100 Tom Hacohen <tom.haco...@samsung.com> 
>>> said:
>>>
>>>> Hey guys,
>>>>
>>>> The hero Jeremy Zurcher has been playing around and looking for ways to
>>>> improve Eo and address all the issues that have been raised by everyone.
>>>> We revisited some old ideas, tried some new ideas and changed our
>>>> compromises and preferences to better suit our needs (followed by the
>>>> extensive trial period). We think we made things better and we'd like to
>>>> hear your thoughts and suggestions.
>>>>
>>>> The code resides in devs/tasn/eo2. The differences are not major
>>>> usage-wise (i.e eo_do), but are major internally and class-creation-wise.
>>>> There's an example of the usage of the new API in the eo2test directory.
>>>> The existing code-base hasn't been changed to use the new API, so
>>>> there's not a lot to review.
>>>> Eo2 is not complete, we'd like to hear your thoughts before finishing
>>>> things.
>>>>
>>>> Major changes:
>>>> 1. No more va_args, good ol' normal functions instead.
>>>
>>> good and bad. good as varags is a bit unwieldy. bad as in more symbols and
>>> either more function calls inlined in app code OR more code in general 
>>> inlined
>>> (with macros or inline funcs). end result? unknown until we try. also 
>>> another
>>> bad... work to port the existing eo code over. without full details, amount 
>>> of
>>> work unknown. (missing git tree).
>>
>> I think it's better to inline those in the app, yeah. I don't think a
>> function call + an if are much to worry about.
>> Amount of work is known: everything needs to be done. This is a draft,
>> not even a complete solution. This example doesn't handle eo_do_super
>> and the eo_data_scope_get.
>
> I pushed some stuff in devs/tasn/eo2,
> nothing inlined (real method call performed),
> basic eo_data_scope_get support (+ real eo fct call)
> and a stupid benchmark
>
> Intel(R) Core(TM)2 Duo CPU E7500@2.93GHz 64 bits
>
> CFLAGS="-O2" ./make.sh
>
> gcc:
>    EO : time     71 [ms]
>    EO2: time     67 [ms]
>
> clang:
>   EO : time      98 [ms]
>   EO2: time      54 [ms]
>

Maybe clang inlined things anyway, and gcc has been less aggressive/smart.

--
Tom.



------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to