Could I ask for processor advice, please?
Hey guys, this is a question for the people with hardware skills
Please, if you know stuff about CPUs, hang in there a bit longer, thank you!!
First I explain the context,
And then, at the bottom, I ask my actual question.
The context of my question: the dedicated server on which Hentairules is hosted, among other websites for the family, friends and me, is growing old. Just this morning, the motherboard died and was replaced by the web host, and two weeks ago, it was one of the RAM modules. I have started looking at dedis again, this summer or as september comes, I’ll do the switch.
However, while I trust my judgement for most hardware matters, I have a huge problem to tell the worth of CPUs.
Hearts, cores, threading capability, clock, benchmarks judging this or that… It’s quite complicated – for me.
Worse, you’ll hardly find benchmarks focused on WEB SERVER USAGE.
Because fuck Minecraft or video compression, this is an entirely different sort of activity, serving thousands of requests per second or minute, processing stuff for Apache (yeah, sorry, no nginX, let’s keep things simple and more broadly compatible ^^) and the php fcgi/fpm and mysql engines, helped by cache when possible, it’s not the same, and benchmarks focused on pure computing power might give false advice.
In terms of usage, the current CPU of my dedi is more than half of the time close to (or over) maximum load and I observe the slowdown. I’m confident enough to tell there are no other system specs (ram, mysql fine-tuned config, disk usage, network) causing any sort of bottleneck whatsoever. In other words, you could say that my dedi’s current bottleneck is the CPU, it’s the weakest component for the moment.
I must thus choose a dedi with a CPU that will be at least as good as the current one, and ideally slightly better.
In this context, please, would you manage to tell if:
a Xeon D-1520 (the one in the dedi I got my eye on) would do slightly better than an Opteron 4334 (my current CPU), or not?
Sorry to ask you guys, but me, I simply don’t find reliable information on which I’d be willing to rely before spending hundreds of euros on a regular basis.
Take this google #1 result for instance, it’s so NOT detailed you can’t tell what tests were made, if they were even remotely web server related or if it consisted in trying to compress a video stream or whatever, it only says “Benchmark performance using all cores“, I have no idea if that is reliable or relevant. This other test leaves me nonplussed, each has good points, fucked if I know how it would perform IRL. This third test would tell the Opteron has faster cores if you take them individually but the Xeon has two more cores which should make up for it with a bonus, or wouldn’t it?
As you can see, it’s basically rule of thumb at this point, I should manage to do better than that, so if you have better links for info, or you can explain dumb me how to “decipher” and find the relevant info to judge between CPUs when choosing a dedi, I will be more than grateful
This way, maybe in the coming months I’ll choose something entirely different from this one, but then I’ll be able to tell with confidence I’m making the right choice, with your help
(Alternatively, another CPU that this time I know would be much better, but would also imply a significantly superior price, would be a Xeon E3-1270v6 – 4c/8t – 3,8GHz /4,2GHz . I’m not wrong, that one would be significantly better, right, I’m not misreading anything, as there are both more cores, threads and more nominal power? Edit: the Xeon still has a disadvantage, it may have more power per core, 1 additional core and 2 additional threads, it still has much less L2+L3 cache, 9 MB instead of 14 MB, hmmm…. Still, it would be a pity, as the price would be significantly higher.)
Thanks a lot if you have info to share, to help me decide
That said, I’ll mention amicably, I’m not asking for help choosing a dedi in general, don’t bother throwing me links to offers and the like.
Really, what I want, here, is to become able to judge what makes a CPU good for a dedi, and become able to properly compare which would be the best out of two.
I can’t advise you much at the hardware level but I did come across a forum where they were talking about this exact issue. I’ve got a headache right now so I didn’t drill down in the site much, but they seem to have a low asshole-to-geek ratio! Hope it helps.
http://www.webhostingtalk.com/showthread.php?t=1077683
Not very helpful that one, they throw generic name without precise specifications and don’t explain WHAT makes apparently similar CPUs good or bad, best it says is that xeons are better for servers because servers do lots of mysql stuff, that I know already
(still, thanks, I’ll search a bit in that forum, just in case)
Since my brain was melting like your CPU, I couldn’t really search for specific help. I was actually hoping that the forum itself would be useful to you, so I’m glad you said that! And when I saw at least 2 people apologizing to each other in that thread, I figured it was a good place to start. Although it looks like people here started giving you interactive assistance after I fired off my half-assed attempt!
Here is my two cents
forgive me is this was too obvious but firs and foremost unless you are planning to also buy a new motherboard then you will have to choose the CPU that actually fits in the socket of such motherboard. but well, in case you have some degree of flexibility in this purchase this is what you should know
What you wants for a server CPU is more cores over individual core speed, where you want more speed is in the instant memory cache of the cpu. keep that in mind. while server CPU’s are usually state of the art and more expensive than consumer tier ones, they actually devalue at a more drastic rate, so you could buy a bad-ass top of the line Opteron processor from a couple generations back and aside from maximum clock speed it would be otherwise as powerful as a middle tier ryzen 7 (as far as spec goes) for less than a third of the price… there is a catch though, advancements in microprocessors don’t end up in the hardware, nowadays plenty of jumps in performance are actually brought by algorithm and code prediction technology improvements, which as you might have guessed needs to be compatible with the CPU architecture in order to be implemented. so buying an old yet powerful cpu might end up not being the best option if it doesn’t know how to be the most efficient and up to date with the server infrastructure it is running.
since your server is mostly storage and (as far as i know) not used for high speed data transfer such as streaming. prioritize more core and threads over clock speed, then make sure that the server infrastructure you are running is able to actually exploit the resources incorporated in the CPU, the toolbox might be there but if the software doesn’t know how to use all of them, it might as well not be worth the value.
First, I’m not building it myself, dedis are a remote “box” that you hire with predetermined components, so you can at least trust the web hosts to package compatible components
Where you write “What you wants for a server CPU is more cores over individual core speed, where you want more speed is in the instant memory cache of the cpu.”
That confirms what I read here and there, however in the case of the two processors that I intend to compare, it’s precisely where I’m lost.
The second link I gave shows that the Xeon D-1520 can process two additional threads simultaneously compared to my Opteron 4334, which is nice, 25% better. However, the opteron has 26% faster clock speed, and, more importantly if you mention cpu cache matters, the xeon has HALF LESS cache than the opteron.
So, what matters most, 25% more threads capability, or half less memory? No bloody clue, and yet with a server that is too often borderline max load, I can’t afford to screw up in my choice
“since your server is mostly storage and (as far as i know) not used for high speed data transfer such as streaming. “
My server is mostly used to serve websites. Like 80% wordpress, three shops (one wordpress), a drupal, a pair of forums, a pair of image galleries CMSes, a few dinosaurs from before CMSes were a thing. It’s a lot, I know, but I host not only for me, but also for friends and families, in the end we talk about big traffic.
No streaming at all though.
Unfortunately, price is king in the CPU market right now. With the Bitcoin fever still going crazy, everything that’s more than half decent is quite expensive. If you’re still satisfied with your current CPU, you’ll probably find out that the difference in performance is not worth the price gap.
I have no choice but to change, dude. It’s not my own PC. It’s that I will, in the next few months, have to move everything to a new dedicated server, and from there on, as none of them have the same CPU as the current dedi, I must make sure I don’t pick a CPU that’s not as good.
Ok, lets keep this simple. Web content is often nothing more than moving/coping file via the Internet. So I would agree that high clock speed is not really that important, however handling thousands of request a does put strain on the memory controller and internal cache. So having a larger cache size and faster memory can improve this a lot. Cores over clock speed should be your focus also as it will divide the work out more. SMT and hyperthreading is nice and all but is not the same as real cores.
What this really boils down to is price( how much is your budget )?, and form-factor( does this need to be in a server blade/rack)?
ps. the IPC or instruction per clock is just over about half on AMD older cpus. This means that if all things being equal (same number of core at the same clock speed) intel is 45% faster, current generation intel is about 3-5% faster for ryzen/epic.
“ form-factor( does this need to be in a server blade/rack)?”
I’m renting dedis from hosts that could place them in racks, under water, on top of trees or in the middle of a volcano, that does not matter to me as long as it works
And simply, among the offers I find, I filter them by RAM/HDDs/etc prerequisites, and in the end, what remains to do is choose which of the remaining offers has a good enough CPU.
At the present time, the best match I found is one with an intel Xeon D-1520, but question is, is it at least as good for web server use as my opteron 4334.
I replied similarly in an above comment, I have now understood that actual speed matters less than number of threads and memcache. However, comparing the xeon d-1520 and the opteron 4334, it’s a pinch.
This would show the Xeon has 25% more simultaneous threads capability, but 26% less clock speed (I know: less important) and HALF LESS memcache, L2 + L3.
How important would be this cache, a bit, not at all, do the 25-26% clock speed and number of threads cancel each other out?
No idea -_-
“ps. the IPC or instruction per clock is just over about half on AMD older cpus. This means that if all things being equal (same number of core at the same clock speed) intel is 45% faster, current generation intel is about 3-5% faster for ryzen/epic.”
Pardon me, I don’t understand what you wrote. Do you mean AMDs have chosen a calculation method that “lies” by inflating the nominal results for operating frequency (aka clock speed), in a way that does not effectively match benchmark results?
IPC and clock speed are not the same thing, to compare it to a motor in a car, clock speed is the rpm’s and IPC is horsepower (a measure of work). IPC is the measure of work done per one clock cycle. In the past Intel has higher IPC and Higher clocks which is why they have controlled the market for so long.
I think the Xeon will do you better, though I am unsure has to how much better it will be. I believe the system memory on the xeon will be ddr4 2133. Can you move up a step to xeon D-1540?
I can understand why your having trouble picking, limited data out there and they seem very close in performance. GOOD LUCK!
server need good gpu too right? ppl mining bitcoin use high end gpu
For all I care, coin miners could go crawl under a rock and die, this would mean I have a chance to replace my 750 ti with something more than double better for less than 150€, which is currently simply not the case at all, and forbids me from playing Witcher 3, because, yes, I wait for a computer good enough that I’ll get a memorable experience out of it, even it means still many more years.
That’s all I would have to say about miners
Jokes aside, I don’t mine shit. I serve websites. For me, for friends, for family. Mostly wordpress and other “known” cmses, a few other kinds of websites. No streaming. No gaming.
Nope, not relevant in this case and not relevant in most cases. Bitcoin miners use high end GPUs because modern video cards can do their own processing separate to the CPU and they have a lot of memory which is what bitcoin mining programs require.
Web servers don’t use GPU’s for processing as a rule as the CPU is enough. It is possible in theory and I would assume there are some servers which are configured this way for fairly specific high end processing tasks.
Unfortunately, without any additional information on WHY your current Opteron is overloaded, it will be difficult to choose. It is difficult, just looking at CPU load, to distinguish CPU-bound workloads from memory-bound workloads: that is, whether the problem is lack of throughput or cache size. A cache miss may result in the CPU spinning waiting for the memory (one of the use case of hyper-threading is that the other “twin” thread can go to work during this period).
If you have the opportunity, I would suggest trying to use diagnosis tools during the high-load periods (depends on your OS, I am no specialist myself) to check what the exact bottleneck is.
Otherwise, by default these days I would opt for a large cache. Memory access speed did not keep up with CPU frequency, so larger caches help tremendously for most workloads.
So, in order of preference:
1. Xeon E3-1270v6
2. Opteron 4334
3. Xeon D-1520
PS: If the price of the first is an issue, you may consider a fundraiser on HentaiRules
Well, you’re right, I should have provided more information on what testing I made.
I didn’t use vmstat 1 (taking a mental post it note for that one) but an equivalent (honestly, I only remember few shell commands, I store them in a .txt document on my desktop), in which I checked there was only very little CPU idle time and disk wait time.
Next time I witness my server in very high load I’ll check again, although if you’re curious I shopped together three “load in the usual 80%” screenshots here, heh: https://imgur.com/a/t9TGaih
Basically, CPU’s got no idle time left, disk’s got no wait queue, nearly everything is from the user’s processes, and in top it only appears as process by wordpress usernames (the biggest is hentairules, should I take pride ^^;;) and it’s only the php5-cgi process which gives absolutely zero clue as to what is going on.
No slow queries in huge amounts (the occasional few here and there once or twice a day, but you get the idea), show processlist at times of huge overoveroverload doesn’t show suspicious requests in volumes (like evil or stupid bots trying shit, etc)…
Apparently, from the looks of it, the server is simply attempting to do web server stuff in normal “let us serves these gentlemen the website they’re asking, and properly respond to their actions!” mode…
Quick edit: I forgot to ask you – and to thank you!! Thank you, then- but according to this test, the E3-1270v6 still has one flaw, even if it’s got one more core, two more threads, and superior frequency per core, it’s only got 9 MB of L2+L3 ram, while the opteron has a whopping 14 MB.
Wouldn’t this 9 mb vs 14 MB make a difference?
Honestly, I have no idea how much it ought to be significant, sorry to have to ask you
Beware: in the same regard as frequency in not on its own a factor for choosing, cache can’t be used in comparing 2 CPUs because they are not used in the same way depending on architecture.
Opteron detailled technical sheet
http://www.cpu-world.com/CPUs/Bulldozer/AMD-Opteron%204334%20-%20OS4334WLU6KHK.html
Xeon detailled technical sheet
http://www.cpu-world.com/CPUs/Xeon/Intel-Xeon%20E3-1270%20v6.html
Distribution of cache between L2 and L3 depends on the architecture but basically if your clock is quick enough so that it can process all the instructions and not need the full cache, basically less is still better.
But if you need information to stay in cache for long periods, more is better.
All that being said, the tests I’ve seen seem to indicate the Opteron is better than the E3 so either way, I’d go with the Opteron.
Allright, I think I’m getting it.
In that regard, another CPU would do the job, I think, the Xeon D-1540. Still less powerful, but compared to the Opteron, 2 more cores (8), 10 more threads (16), and same amount of total L2+L3. It’s pushing the price up, but it should be doing the job… 30 more € per month than the D-1520, which would bring the replacement dedi at almost the same overall cost as my current dedi, initially I was hoping to save 40€ to 50€ on the monthly bill, taking advantage of the improvement in hardware over the years, sigh ^^;;
The two xeons: http://www.cpu-world.com/Compare/89/Intel_Xeon_D_D-1520_vs_Intel_Xeon_D_D-1540.html
My opteron vs the D-1520:http://www.cpu-world.com/Compare/829/AMD_Opteron_4300_series_4334_vs_Intel_Xeon_D_D-1520.html
My opteron vs the D-1540: http://www.cpu-world.com/Compare/831/AMD_Opteron_4300_series_4334_vs_Intel_Xeon_D_D-1540.html
(sorry for the link copy-pasta, I use those comments as the gathering point for my information ^^)
Heh, another vmstat 1, this time with a prolungated duration (over 15 minutes) with server load over 30 (which is a tiiiiiiny bit too much with a theoretical max of 6, my number of cores )
https://imgur.com/a/1mrsz1W
See? No idle. No disk wait. No system usage. Pure user. The mpstat -P command I’m more used to running shows the same. While the top command shows it’s all the users of wordpress, first and foremost hentairules but not only though, and php5-cgi, and also mysqld naturally (no slows queries, no mad show processlist queue), fat deal of help it’s doing. Looks like it’s really, purely, a matter of delivering enough cpu in enough simultaneous threads.
Hey Oliver,
from what I read from your comments a CPU upgrade will help, but will not solve your issue. Over the 15 years I send on servers, I definitly can confirm something you mentioned earlier: The L2 and L3 Caches are very important if you run multiple threads/processes that switch often.
In terms of CPU the Xeon-E3 12xx V4 upwards are great. If you could get your hands on a E5 that would be golden, but expensive. But seeing the Xeon-D at https://ark.intel.com/de/products/series/87041/Intel-Xeon-D-Processor, well hell yeah!
In your grand scheme it aint about GHz, but cores –> More cores -> more paralell -> less load :-D
Also get some SSD or at least server grade harddrives, especially for the DB and php file reads that does a fair deal.
Otherwise I do not know what kind of setup you have, but I have good expirence with the stack nginx + php7-fgci (way better than php5!!, but you need to check compatibilty). I do not have heavy loads on my personal sites and business stuff is always something different, but I would recommend you a Cache like Redis etc. https://de.wordpress.org/plugins/redis-cache/ cuz this boosts performance a lot if a page can be retrieved from cache, and your posts don’t change much ;-)
Have a blast
p.s. Ever thought about creating your own page type for wordpress?
Thanks Jamie.
As things are, I’m now headed for an Intel Xeon D-1540, with a whopping 8 cores and 16 threads for the same L2+L3 cache, yeah.
Until the moment I switch a new dedi, I’m stuck with php5. That’s because I’m with debian wheezy (I totally misread its LTS duration, which is now another reason to fucking upgrade fast), and simultaneous php versions are just not a thing with it. I’ll switch to Debian 8 instead of 9 and use Ondřej Surý’s repo to have both php7 and php5. Until now, because some of the sites I host aren’t php7 compatible (I even had to help transitioning to mysqli so php5 was already a challenge lol).
With the new dedi I’ll have this relief, to switch the wordpress sites to php7, but I can’t rely on that alone, I want a net difference even processor-wise.
No idea for redis cache, I’ll google that out, thank you ^^
Well you could upgrade Debian. Also you could run PHP5 for older sides and PHP7 for newer once. Google for PHP-FPM (best way to squeeze Performance from PHP. FCGI ait that good did a mistake in the above post!)
Also regarding the load on the Server, did you configure the Memory for MySQL etc. right? Because if the DB has not enough memory, it needs to hit the HDD a lot, etc. etc.
By the way if you would like to discuss a setup I’d be happy to spare with you on the topic.
EDIT: Just found the Hoster you are renting the server from and gotta say its a great deal for the Xeon-D price! Consider the Hybrid with HDD and SSD!
Multiple versions of PHP starts with Deb8, it should have been official with Deb 9 and yet it will require additional tinkering for the moment, so Debian 8 it is. Sure, it goes obsolete in two years, but it will be reason enough for an upgrade and a clean state improved upgrade.
I spent hours, and hours more, tinkering with the mysql configuration. Tuning-primer and mysqltuner are my buddies now
I did everything I could to convince mysql to soak up as much RAM as needed, and it still doesn’t manage to slurp it all, leaving a few gigabytes of unused RAM in the end (munin confirming), so it’s apparently the best I can do, the hard disks are never overworked, they have idle time.
BTW, how did you find which host I’m using? I try to hide it, as a general principle. More precisely, my greatest fear in that regard is that I screw up and every site I host is revealed. Most friends don’t care, but some of them would regret if it were known the server hosting them also delivers porn.
Well you did good in hiding! So I will not tell here!
You got mail :-)
No mail about it in my inbox this morning
I did send it to the .com instead of .net …
Eh? Which .com? O_o
Edit: just saw your mail, my bad. Too late to reply today, it’s for tomorrow ^^
(but at least I’m reassured, even if it tells my host, it doesn’t tell which websites are co-hosted, and at worst, it’s the IP for porn domains, I was afraid you’d have found a list of the websites to which I offer hosting )