Archive for the ‘performance’ Category

Plugin for simpler performance profiling

Saturday, October 24th, 2009
Filters vs the rest

How time is spent on a compex page

The two areas where performance problems with WordPress plugins are most common are custom filters/actions and database queries. WP-Profile is a plugin that helps you find such problems.

Actions and filters

WordPress has an intricate system of actions and filters which is used all over the place: to convert : ) into :) , to make links clickable and to handle the login procedure are just some examples.

Every action and filter is a hook that allows plugins to call custom functions and easily change or override default behavior. That is very useful.

It also makes it easy to really ruin performance as some common filters are called a hundred times or more for more complex pages, making small inefficiencies add up really quickly. (more…)

Fix Performance Regression

Tuesday, October 20th, 2009

Pageload regression fixes

A simple tool to benchmark web performance is Apachebench — which comes bundled with the Apache web server. To understand how a system as a whole performs you’ll need something more advanced but to just test how long it takes a page to load it works fine.

The graph above[1] expands on where I started profiling the WordPress regression. I’ve added the full 10 post frontpage and a single larger page — with rather lousy performance — and the work so far to remedy it which looks alot better. (more…)

Profiling WordPress Performance Regression

Sunday, October 18th, 2009

Pageload regression

I’ve been benchmarking stock WordPress today to get performance numbers for the Cache Translation Object plugin. As I had things set up for it I also tested  the latest major releases – unmodified, clean installations – and found a 40% regression when going from 2.7 to 2.8.

Update: what I measure here is basically the clean startup time, which doesn’t say what the final effect will be on your site with a real theme, plugins and, you know, actual content.

There is often a battle between features, complexity and performance. This unfortunately natural tendency prevalent among programmers should however not result in such a drastic regression.

Update 2: More on this here.

(more…)

The WordPress Localization Performance Battle

Friday, October 16th, 2009

graph-1-284

Using WordPress translated to your own language results in a surprisingly large performance cost. In my tests it took twice (or four times!) as long for an unmodified WordPress 2.8.4 start page to load when using a localized WordPress.

Translating a lot of text in an user friendly fashion is hard to do efficiently.

But there are things we can do to make it a lot less painful. (more…)