[Phpmyadmin-devel] Profiling for performance analysis
Madhura Jayaratne
madhura.cj at gmail.com
Thu Jun 11 04:49:19 CEST 2015
On Mon, May 18, 2015 at 6:10 PM, Madhura Jayaratne <madhura.cj at gmail.com>
wrote:
> Hi devs,
>
> As discussed during the last team meeting, I did some profiling to
> evaluate the performance of 4.4 series against 3.5 series. I used xdebug
> for profiling and for each of the pages evaluated, I averaged among three
> reading to overcome any errors.
>
> The values are in milliseconds and contains profiling overhead as well.
> However, this should not be a problem to compare between two versions.
>
> Page 3.5 branch 4.4 branch 4.4 / 3.5 Table
> browse 5230.67 24548.67 4.69 Table structure 2974.67 8060.67 2.71 Table
> SQL 760.33 1770.33 2.33 Table operations 2564.33 7626.33 2.97 Row edit
> 2012 10980.67 5.46 Row insert 2387.67 11553 4.84 Database structure
> 6280.33 5076.33 0.81 Database SQL 1511.67 1570 1.04 Database operations
> 3115.33 2750.67 0.88 Server databases 2108 3068.67 1.46 Navigation
> refresh 626 4092.33 6.54
> While I got mixed results where for certain pages 3.5 was faster and for
> others 4.4 was faster, for most of the pages 3.5 was much faster.
>
> I am attaching the results in csv format as well as output files from
> profiling. With KCacheGrind or WinCacheGrind you should be able to further
> analyze the profiling results.
>
> --
> Thanks and Regards,
>
> Madhura Jayaratne
>
>
During the last week, I attended to some performance improvements, starting
with table browse and table insert/edit operations since they showed more
deterioration compared to 3.5 version.
In table browse, I was able to eliminate 25 calls to
PMA_Util::getUniqueCondition() with [1] and [2], saving about 3 seconds. In
table insert/edit, I was able to eliminate the call
to PMA_Table::analyzeStructure() with [3] saving about 4 seconds.
However, I also noted that newly added 'Page related settings' feature
adding about 3 seconds to each of these pages, somewhat offsetting these
gains. Anyway, I find this feature quite useful and I feel that these
additions are acceptable.
P.S. All the times are with profiling overhead.
[1]
https://github.com/phpmyadmin/phpmyadmin/commit/80ad726a8471441abc5eeb573b69f2a150dd1a07
[2]
https://github.com/phpmyadmin/phpmyadmin/commit/739b142580d7fa6bf8e5ca70f45baced6e22aeeb
[3]
https://github.com/phpmyadmin/phpmyadmin/commit/758ec7b5ae7f9669f30c4de2f658a7c751af92f6
--
Thanks and Regards,
Madhura Jayaratne
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.phpmyadmin.net/pipermail/developers/attachments/20150611/a7e6bcfc/attachment.html>
More information about the Developers
mailing list