messing with branch prediction
| From: | Nuno Lopes | Date: | Sun, 18 Jun 2006 13:49:47 +0000 |
| Subject: | messing with branch prediction | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-24149@lists.php.net to get a copy of this message | ||
Hello,
Yesterday I was playing with branch prediction in the Zend VM executor. Although I didn't have any noticeable performance improvement within the bench.php script, I've put the patch on-line, because someone else might want to mess with it too :) (but with care..)
patch: http://mega.ist.utl.pt/~ncpl/zend_branch_prediction.txt
gcc docs: http://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html#index-g_t_005f_005fbuiltin_005fexpect-2440
the zend.h part of the patch is based on the similar macros (with the same name, too) found in the Linux kernel.
I made & tested the patch in a Centrino laptop with gcc 3.4, so it might be the cause of getting no relevant performance increase. On CPUs with longer pipelines (like Pentium 4/NetBurst architecture), the performance increase might be noticeable.
Happy hacking :)
Nuno