1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Faster CPU (50%) noticeable for xenforo?

Discussion in 'Server Configuration and Hosting' started by Marcus, Sep 19, 2012.

  1. Marcus

    Marcus Well-Known Member

    I am thinking about switching from a 4-core server to a 6-core-server with 50% faster CPU based on PassMark rating. APC is already activated. Do you think there will be a noticeably faster page output?
     
  2. Slavik

    Slavik XenForo Moderator Staff Member

    How long is a peice of string question.

    It depends on the rest of your setup and configuration.

    I guess the easy answer is, yes, it will be faster. Will it be noticeably faster.... probably not?(Unless your current cpu is being maxed out) Probably talking tenths of a second at best.
     
    Marcus likes this.
  3. Marcus

    Marcus Well-Known Member

    It would be the i7-3930K Hexa-Core instead of the old i7-920 Quad-Core. The new server is basically like the old server but has more RAM (64 GB) which I would not need anyway. So its only the CPU, the rest of the setup and configuration is the same.

    Current server load is 0.5-0.9. For all forum software I used PHP was responsible for around 90% of the first time output where MySQL was 10% or even much, much less.
     
  4. CyclingTribe

    CyclingTribe Well-Known Member

    I don't think you'll notice at all - not at the user end anyway.

    The other parts of the system will be the same and any pre-existing bottlenecks will still be present regardless of how quick the CPU is; such as disk read/writes, etc.

    What is the cost of the "upgrade"?
     
  5. CyclingTribe

    CyclingTribe Well-Known Member

    A. Twice the length from the centre to one end. ;)
     
  6. Marcus

    Marcus Well-Known Member

    Around a thousand dollars a year.

    So how do you actually make your forum faster if not by hardware? Are there new ideas on the software front end from the last year? I use the elastic search, APC, cache everything on the end user computer for years with Apache cache settings, use a subdomain for accessing core-xenforo-textfiles.
     
  7. CyclingTribe

    CyclingTribe Well-Known Member

    What is the XF forums URL? Let me judge the speed of it first - but just out of interest where is the server physically located - what country?

    Also are you using the entire server for just the one site or do you have other things/sites running on it?

    Cheers,
    Shaun :D
     
  8. duderuud

    duderuud Active Member

    May I ask why you don't use a server processor (Xeon) in a server? The new E5 series is much faster then the old X series. And a Xeon is made for a 24x7 environment...
     
  9. CyclingTribe

    CyclingTribe Well-Known Member

    One of the thing you can do to speed up XF (in terms of page loading completion) is to disable the social media sharing options - Facebook, Twitter, Google+.

    Most of my members never even noticed them, never mind used them, and pages complete faster with them turned off.

    Is it the homepage loading in particular or the whole site? If it's the homepage, how many sub-forums do you have?

    Cheers,
    Shaun :D
     
  10. Marcus

    Marcus Well-Known Member

    Because of my budget. My current 16 GB server with the i7-920 Quad-Core costs around 60 USD / month.
     
  11. ENF

    ENF Well-Known Member

    You can throw all the horsepower you want at something, but if there are other bottlenecks on the server or the end-user, it's not going to make that much difference.

    I/O bottlenecks are common issues, whether it be your disk setup or other hardware limits.
    Network bottleneck issues between your server and the rest of the world, more hops = more lag time. (usually not much you can do there)

    If you can justify the cost of pumping up the horsepower, then sure, go for it. If you don't know how to optimize everything, then hire someone that can so that you can get most bang out of your system.
     
    Walter likes this.
  12. CyclingTribe

    CyclingTribe Well-Known Member

    When you say Apache caching, do you mean you've set some file types for static assest to remain cached on the end-user's browser, e.g.:

    Code:
    ExpiresActive On
    ExpiresByType image/png “now plus 365 days”
    ExpiresByType image/jpeg “now plus 365 days”
    ExpiresByType image/gif “now plus 365 days”
    ExpiresByType application/javascript “now plus 365 days”
    ExpiresByType application/x-javascript “now plus 365 days”
    ExpiresByType text/javascript “now plus 365 days”
    ExpiresByType text/css “now plus 365 days”
    
    ... that sort of thing?

    And did you set it in the main Apache conf file or in the virtualhost conf for the site?
     
  13. Marcus

    Marcus Well-Known Member

    Thanks for your tips ! I guess I used the ExpiresByType settings directly in the Apache config file, I will double check that.

    What types of IO are possible on the hardware side? I have 16 GB RAM.

    Actually for vb4 I went from 0.2 seconds for the start page to 0.05 by tweaking vb. I have yet found a similar solution for xenforo. I doubt I can just hire a guy for some hours and he will rewrite / extend xenforo without even really knowing xenforo to make it so much faster.
     
  14. shawn

    shawn Well-Known Member

    What are your rendering times now? I know I'm comfortably down in the <0.1 range with stock xF. All the lag is in transmission, local rendering, and 3rd party sites (ads, google+/FB/twitter integrations, etc).

    Your server load doesn't sound heavy enough to justify the cost increase.
     
  15. CyclingTribe

    CyclingTribe Well-Known Member

    Did you optimise MySQL for InnoDB when you migrated to Xenforo?

    vB uses MyISAM but XF uses InnoDB for most tables and default MySQL configs aren't usually optimised for InnoDB.

    You also need to look at the configuration (and optimising) each of the key elements in the chain; Apache, PHP, MySQL and APC.

    I did months of work tweaking my server when I moved from vB 3.8.4 to IP.Board and managed to get it running quick. I did the same again when I moved from IP.Board to XF as they both required a different setup and both had their own ways of doing things optimally. My XF sites are now quick and my server is a five year old dual core with 8GB.

    Your machine should be quick enough with 16GB RAM and a Core i7 so maybe we should start looking at the config of each element and seeing if there's anything that can be further optimised? (y)

    Maybe start with MySQL? Can you post the contents of your my.cnf file so we can look?
     
    MattW likes this.
  16. MattW

    MattW Well-Known Member

    I migrated my site to a difference VPS node with the same hosting company. I also went from 32bit CentOS to 64bit CentOS.

    The only other difference was the CPUs on the host node. The new node is running newer CPUs, and I've got access to 16 cores rather than 8 on the previous node.

    Previous:
    Code:
    cat /proc/cpuinfo
    processor      : 0
    vendor_id      : GenuineIntel
    cpu family      : 6
    model          : 26
    model name      : Intel(R) Xeon(R) CPU          E5520  @ 2.27GHz
    stepping        : 5
    cpu MHz        : 2266.746
    cache size      : 8192 KB
    fdiv_bug        : no
    hlt_bug        : no
    f00f_bug        : no
    coma_bug        : no
    fpu            : yes
    fpu_exception  : yes
    cpuid level    : 11
    wp              : yes
    flags          : fpu de tsc msr pae cx8 apic cmov pat clflush acpi mmx fxsr sse sse2 ss ht nx constant_tsc nonstop_tsc pni ssse3 sse4_1 sse4_2 popcnt [8]
    bogomips        : 5671.61
     
    X 8
    
    Current:
    Code:
    processor      : 0
    vendor_id      : GenuineIntel
    cpu family      : 6
    model          : 45
    model name      :        Intel(R) Xeon(R) CPU E5-2640 0 @ 2.50GHz
    stepping        : 7
    cpu MHz        : 2493.988
    cache size      : 15360 KB
    physical id    : 0
    siblings        : 1
    core id        : 0
    cpu cores      : 1
    fpu            : yes
    fpu_exception  : yes
    cpuid level    : 13
    wp              : yes
    flags          : fpu de tsc msr pae cx8 apic sep cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc pni ssse3 cx16 sse4_1 sse4_2 popcnt lahf_lm
    bogomips        : 6237.13
    clflush size    : 64
    cache_alignment : 64
    address sizes  : 46 bits physical, 48 bits virtual
    power management:
     
    X16
    
    I've had to cut the above down due to 10,000 character limit on the post length.

    Same amount of RAM (3GB) and my page load times are pretty much exactly the same, 0.12 seconds for the forum index.

    However, I'm sure I could run a lot more other stuff on the VPS, without it being as stressed as it would have been on the old node with less CPU.
     
  17. Walter

    Walter Well-Known Member

    Have you optimized Mysql? Your hardware really should be fast enough with Xenforo - or do you have gigantic forum?
     
  18. DBA

    DBA Well-Known Member

    Caching program - Xcache, Memcache, etc.
    Removing unnecessary stuff from your webpage. <-- this is what gave me the biggest drop in page load time, especially back with vB4 as it's so bloated.

    Do you mind sharing your url? PM if you wish.
     
  19. ENF

    ENF Well-Known Member

    To add on to what Walter said, if you have a large forum and only using one server to handle db and web server operations, you could reach a bottleneck with hardware I/O related to your disk system (SATA vs. RAID vs. SSD, etc.). Small to medium sized forums shouldn't have an issue in this area, but it's recommended to have separate db and web-servers if you have a large site.

    Tuning your db and cache system can improve performance dramatically, even with a mediocre hardware setup.
     
  20. Marcus

    Marcus Well-Known Member

    My forum only has around 1 Million Posts and I really have no clue why I have such high average loads of around 0.7. Do you know a program how I can track page loads and other stuff on my centOS / Plesk server?

    I guess I did something wrong with the php / mysql / apache settings. I will post the configuration files of these later.

    This is such a nice helpful community, I should be more around here!
     

Share This Page