Xeon E3 vs E5

newbie14

Reputable
Aug 28, 2014
12
0
4,510
I am about to purchase 2 servers. Once will be running multithreaded java application and the other will be running a mysql database. The problem I got two option to select between the processor one Xeon E3-1241v3 80W 3.5GHz/1600MHz/8M and Xeon E5-2609v3 (1.9GHz/6-core/15MB/85W).Both will be having 16GB ram. What are the suggestion to take the E5 or E3 ?
 

newbie14

Reputable
Aug 28, 2014
12
0
4,510
Hi Lavi,
Yes I saw in the intel website it wrote that the E3 is 4 cores. But I dont see the E5 one is 2*6 cores except if I add 2 processor right? When you say faster you dont take into consideration the speed of the processor ? When you say fast will be fast enough for mysql cause from my research mysql only use one single core?
 
Likely the E5 will be faster if you're handling multiple threads (e.g. assuming a new thread is spawned for each connection). The E3 would likely be faster if your multi-threaded Java application was also quite CPU-intensive on each thread, or if MySQL couldn't parallelise its workload.


It's £240 (vs £220)
 

newbie14

Reputable
Aug 28, 2014
12
0
4,510
Hi,
Yes my java is multi thread so that I am ok to go for E5. But the issue is mysql is not parallelise and could only use a single core? In actual fact will the speed matters a lot for E3 in comparison to E5. Can I confirm that E5 will have only 6 core for single CPU ?
 


yep, i hadn't noticed the gap in mhz between them... yet what i would do is to get the e5 dual cpu's and then run the 2 end servers as virtual machines. depends how your mysql workload looks like, it's single core/query not single core all the time. you have even the option to get a single cpu first and add the second one in case there are performance issues. (for example running 3-4 cores for the java and 2 for mysql, you have options at least to add switch cpu cores between them). you can then evaluate how it goes, which one needs more cores or less or if you need 12 cores or 6 are enough.

in most cases you end up io bottlenecked and not at the cpu level.
 

newbie14

Reputable
Aug 28, 2014
12
0
4,510
Hi Lavi,
No I plan to go with 2 server not single. Can anything be done on the I/o or that is a limitation? What is your opinion got with 1 server or 2 server ? What I am curious how will the clock speed come into play ?
 
i told you already, i'd get the e5 to start with 1cpu, make with 2 virtual machines see how it goes. if needed you can then add another cpu for 6 more cores or a whole new physical server and drop one of the vm-s onto it. you can even experiment with running both on the same vm. the best optiion will depend on the exact workload, that's why i suggested virtual machines in the first place, they are more flexible compared to physical machines (you can add/remove ram and cpu cores for each machine at the tough of a button as you test how the system responsiveness changes as you add more and more test clients
 

newbie14

Reputable
Aug 28, 2014
12
0
4,510


Hi Lavi,
The problem we dont have the leverage to test on VM machines and later port cause this will be live system running so we cant interrupt in the middle of the operation. So looks like I will go with the e5 as per your suggestion but will mysql be able to take the advantages of the multi core architecture? In general for a high traffic system will it be best to got with two server right as we divide the task and also over come issue of i/o ?
 
dont take just my suggestion, i was just saying it is a faster piece of hardware, you'd better wait for some more feedback on the thread too. as far as i know mysql can run multiple threads just cannot split a single query across multiple cores. so if you have a lot of short queries that dont lock the whole db you should be fine. i/o are input / output operations generally meaning the harddrive. even if the cpu cores can process 200 queries per second, if all of those need a lot of actions on the db where they need to go to the harddrive for info, it doesnt matter that you can process 200 queries pe second (that being just an arbitrary number) the harddrive won't be able to supply them.

when you have 2 servers, you're gonna want a very fast connection between them (that's why i said vm's in the first place, being in the same actual machine they would not suffer from network related latency). having 2 servers is also a bit more secure - the clients will never know their request made its way to the sql server for example.

vm's are pretty easy to implement for testing, just take a quick look at hyperv or virtual box.
 

newbie14

Reputable
Aug 28, 2014
12
0
4,510


Hi Lavi,
Yes I wish to test on vm the problem we need to deploy and cant do much test. I do have other machine where I would like to do a stress test. Is that any other advice you would give ?