Comparing the speed of Xenforo to the big 4

Marcus

Well-known member
Index pages:

index first view vb.PNG
vbulletin index page

index first view.PNG
xenforo index page

Topic pages:

topic first view vb.PNG
xenforo topic page

xenforo first view topic.PNG
vbulletin topic page

Start render times are definitely slower on my xf demo board with only 1 user online and the same data compared to my live vb 4 board (with hundreds of users online).
 

Marcus

Well-known member
Is the server optimized for vBulletin?
Of course it is optimized for running my live board. The live vbulletin 4 board with a few hundred users competes with a xenforo community where only one guest - webpagetest.org client - visits.
 

ManagerJosh

Well-known member
Honestly, if you want to benchmark, you need to create equal conditions for this to be replicated. After some careful consideration, I think this would be ultimately the most accurate test.

  1. Stock Installation of Each Board
  2. Exact Same Duplicate Content for each Board (Users, Threads, Posts, Polls, Avatars, Etc.)
  3. Common Graphic Commonality (Ie. Smilies should be the same)
Tests should be:

  • Performed on the exact same server, with exact same access to CPU and Memory
  • Stock Installation of Apache
  • Stock Installation of PHP (with everything enabled so that each successful board can have an install)
  • Stock Installation of MySQL (no optimization)
Each board should be online at least for 48hours prior to running any tests only to let the internal cron jobs do its job.
 

Marcus

Well-known member
This is my test environment

xenforo 1
same data (everything is imported)
same server
stock installation
only the test program is online

vbulletin 4
same data
same server
highly modded environment (lots of queries added, more information is displayed: examples: all subforums on forum index and more posts in the topic page=
hundreds of users and the test program is online

The server is optimized for fast output. There are no special optimizations for just vbulletin.

It looks a little bit unfair for vbulletin 4. If you have licenses for both forums, you can create an even better and more accurate test environment.
 

dutchbb

Well-known member
Speed is much more dependant on how good the server hardware and configuration is. I know of a phpbb forum which is extremely fast, and it's a very large forum. Obviously these tests are useless.
 

Marcus

Well-known member
Speed is much more dependant on how good the server hardware and configuration is. I know of a phpbb forum which is extremely fast, and it's a very large forum. Obviously these tests are useless.
Both my tests are from the same server.
Where can I activate xcache in xf?
 

Marcus

Well-known member
vb is on xcache
xenforo is on file cache now

This is the result for the index page for xenforo and file cache activated (only 1 user online on the xenforo forum):
index forum xenforo.PNG
Start render time is around 3 seconds (cutting the 0.5 seconds for the initial rewrite). This is much too long.
  • A file cron.php is looked for but it is not found.
  • I have optimized every javascript xenforo uses and compromized it with the best available third party tool to the highest degree ("extreme") so that not even my webserver needs to take time to compress it. As an example, xenforo.js which is 170 KB is reduced by me to 41.3 KB.
 

Marcus

Well-known member
And this is my highly modded vbulletin 4 start page on the same server with a hundred users online and loading some intitial ad javascripts, too! Start render time is 1.225. Much faster than the core xenforo (with my imported vbulletin data) and no users online.

forum index vbulletin 4.PNG

vbulletin 4 start page: Page Speed Score: 92/100 (from webpagetest.org)
xenforo start page: Page Speed Score: 85/100
 

Marcus

Well-known member
Another try with the stock xenforo index page and jquery fetched from google and file cache. 2.28 start render time.

screenshot.PNG

  • My compression is already very high. xenforo.com/community 1.1 jquery rollup javascript is 15.3 kb compressed. My 1.0.4 jquery rollup javascript is 14.8 kb compressed.
  • Why is cron.php hit? cron.php is not found on my nginx server.
  • xenforo.com/community gets 90 page speed points. My 1.0.4 xenforo gets 86 points. My vb 4 gets 92 points (I don't use a CDN).
 

Marcus

Well-known member
stock xf 1.0.4 with my forum data, all cronjobs disabled (so cron.php is not activated), file caching, jquery from google.

screenshot.PNG
 

Marcus

Well-known member
If I don't execute subforums on my xf install, start render time is reduced to 1.6 !!! I removed this from template node_forum_level_2
Code:
 <xen:if is="{$renderedChildren} AND {$level} == 2">
 <div class="Popup subForumsPopup">
 <a href="{xen:link forums, $forum}" rel="Menu" class="cloaked" data-closemenu="true"><span class="dt">{xen:phrase sub_forums}:</span> {xen:number $forum.childCount}</a>
 
 <div class="Menu JsOnly subForumsMenu">
 <div class="primaryContent menuHeader">
 <h3>{$forum.title}</h3>
 <div class="muted">{xen:phrase sub_forums}</div>
 </div>
 <ol class="secondaryContent blockLinksList">
 <xen:foreach loop="$renderedChildren" value="$child">
 {xen:raw $child}
 </xen:foreach>
 </ol>
 </div>
 </div>
  </xen:if>
 

ManagerJosh

Well-known member
My eyes glazed over the stats once I saw:

vb is on xcache
xenforo is on file cache now

Both need to be using the same caching methodology
 

Marcus

Well-known member
Actually xenforo is on a comparable speed in template rendering as is stock vb4 :(

Huge forums on vb 4 render most used templates directly in PHP to avoid this (file edits). I don't want to mass hack xenforo, too :)
 

Marcus

Well-known member
Thanks for your results. But please (!!!) compare the same data on different forum levels. It is not fair to compare a big forum to a smaller forum, or secured (ssl) pages with not-secured pages. So do it like I have done it: Put the same data in installations of xenforo, vbulletin (and of course other forum softwares) and then compare.

I measured my forum start page again, values are from debug modus:
  • vbulletin 4 forum index for guests: 0.055 seconds
  • vbulletin 4 forum index for admins: 0.11 seconds
  • xenforo forum index for guests: 0.14 seconds, then after the first time 0.12 seconds
  • xenforo forum index for members: 0.13 seconds
In any case, vbulletin 4 beats xenforo at the moment. This comparison has some problems:
  • vbulletin 4 forum is live with hundreds of visitors, xenforo forum has no visitors
  • vbulletin 4 forum is highly modded, xenforo is stock 1.1 beta 1.
  • vbulletin 4 uses xcache, xenforo file cache
By the way, my vb4 community has a Page Speed Score: 92/100 (from webpagetest.org)
My same xenforo community start page: Page Speed Score: 94/100
 

Marcus

Well-known member
My IE8 waterfall diagrams for the same forum data
vb4.PNG
This is vbulletin 4. Start render time: 1.35 seconds. Hundreds of active users. Highly modded.

xenforo.PNG
This is xenforo 1.1 beta 1. Start render time: 1.8 seconds. (0.03 seconds are redirects). No users online. Stock installation.
 
Top