PHP's call_user_func_array() is slow

I just solved an issue that had me waking up in the middle of the night for weeks (just pushing it a bit) and I have to thank PHP's community and in particular a guy named Brad Proctor for writing a very short but very important comment in the PHP manual, and I quote:
This function is relatively slow (as of PHP 5.3.3) and if you are calling a method with a known number of parameters it is much faster to call it this way: $class->{$method}($param1, $param2);
He mentions

On migrations to production systems

Migrations on production systems is one of the most complex thing there is in the field of software because it requires all-in-one system administration, database administration, software development and quality management, each at a high level of skill. We generally delegate  a certain level of quality management to the customer (because they're most qualified in telling us what's wrong) but all the other aspects have to be dealt with, without the smallest mistake, otherwise you don't get a running system in the end.

Upgrading to 1.8.5

Tonight I'm upgrading to dokeos 1.8.5. One of the things that is difficult to put in a human mind is the number of users and courses on this portal and the implication it has on upgrade time. Over the last 5 days, 600 new users have registered on this portal, which made it pass the 200K users for the very first time. The portal still works nicely. It's now on a single cuad-core server, but it used to work on a Pentium 4 for 125K users. That's the beauty of Dokeos. However, upgrades to newer versions are always a difficult task.