Re: [PHP-DEV] execute_data->Ts removing

2012-12-03 Thread Dmitry Stogov
The new proposed patch: http://pastebin.com/pj5fQTfN Now both execute_data->Ts and execute_data->CVs are removed and corresponding temporary and compiled variables accessed using "execute_data" as the base pointer. Temporary variables allocate directly before the "execute_data" in reverse order an

Re: [PHP-DEV] execute_data->Ts removing

2012-12-03 Thread yoram bar haim
Hi Dmitry. is this improvemnt (intruction reduce and memory read reduce) preserved under "strong" compiler optimization (-O2, -O3) ? is it something that the compiler can not automatically optimize ? anyhow, the patch seems impressive... On Monday, December 03, 2012 11:35:52 AM Dmitry Stogov wro

Re: [PHP-DEV] execute_data->Ts removing

2012-12-03 Thread Dmitry Stogov
Hi Yoram, Yeas, I checked memory reads on a release PHP built (with -O2 optimization level). The idea is very simple. Before the patch each access to TMP was implemented as: execute_data->Ts + offset GCC with -O2 kept execute_data in register but it needed to read execute_data->Ts anyway and th

Re: [PHP-DEV] execute_data->Ts removing

2012-12-03 Thread jpauli
On Mon, Dec 3, 2012 at 2:26 PM, Dmitry Stogov wrote: > Hi Yoram, > > Yeas, I checked memory reads on a release PHP built (with -O2 optimization > level). > > The idea is very simple. Before the patch each access to TMP was > implemented as: > > execute_data->Ts + offset > > GCC with -O2 kept exec

Re: [PHP-DEV] execute_data->Ts removing

2012-12-03 Thread Nikita Popov
On Mon, Dec 3, 2012 at 10:35 AM, Dmitry Stogov wrote: > The new proposed patch: http://pastebin.com/pj5fQTfN > > Now both execute_data->Ts and execute_data->CVs are removed and > corresponding temporary and compiled variables accessed using > "execute_data" as the base pointer. Temporary variable

Re: [PHP-DEV] execute_data->Ts removing

2012-12-03 Thread Dmitry Stogov
Unfortunately, I didn't see visible performance gain on x86. :( It's near the measurement mistake. Probably it's because reading from L1 data cache is very cheap. Thanks. Dmitry. On Mon, Dec 3, 2012 at 7:33 PM, Nikita Popov wrote: > On Mon, Dec 3, 2012 at 10:35 AM, Dmitry Stogov wrote: > >> Th