• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

which processor + desktop vs server?

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

jeetinder

New Member
Joined
Oct 10, 2013
Hi

I am a complete newbie when it comes to computer hardware hence this post! I will start by telling you my requirements and hopefully somebody out there can give me some good advice.

My requirements are basically a very high speed processor (an 8-core processor should suffice) which can handle a multi-threading java progroam. The program will be running hundreds of thousands of calculations in parallel and I need these carrying out as quick as possible so I guess RAM is important as well as processing power. These are my only requirements (ie speed and performance).

So first question is am I better off with a desktop or does a server offer any particular advantages over a desktop when it comes to speed and performance?

Secondly, what are best processors to achieve my requirements. In particular, I have been quoted a price for Intel i7 4820k 3.7GHz (4 cores, 8 threads) and an AMD 8 core Piledriver 9590 4.7GHz (5GHz Turbo) - which of these would best fit my requirements? And will I be able to utilise the 8 threads of the Intel one in the same way as the 8 cores of the AMD one?

Any advice here would be greatly appreciated (preferably the sooner the better!) Thanks
 
idk how your multi threaded java program will pull on multiple threads but if you are going to use 8 threads on the 9590 you can on the 4820k the 4820 will beat the 9590 in pure speed any day so if you have the funds go for that. if you can afford it a new 4960x may even be a good option if you venture into overclocking it
 
I do some fairly intensive database work so in terms of hardware needs, I'm kind of similar. I can't give you an answer that I would be confident in saying "this is right", but I can make a comment on the number of cores issue. The eight cores will be an advantage if your program is good at parallelizing (which it sounds like you are confident it is). However, the eight "cores" in the Piledriver share floating point units. Bulldozer / Piledriver architecture actually has "modules" rather than "cores" in the old sense (but not the very old sense -people used to use chip designs like this and then they went out of fashion and now AMD has brought them back). Each module is worth two "cores" in most senses - a module contains two processing units - but they share a single floating point unit.

That's normally fine because huge numbers of common tasks are not floating-point intensive so this actually creates a very efficient architecture (like people who don't need to drive very often sharing a single car) and it's what enables AMD to provide an 8-"core" chip. But for maths intensive tasks (they both need a car at the same time), the 8-core AMD chip is actually like a four-core system... a bit.

I mention this as a check in case your program does a lot of floating point work. If your program is serving web pages or Tomcat applications or something, then the extra AMD cores will be an asset. But I wanted to explain how this works in case you were writing something that calculated orbital trajectories or something. ;)

Regarding memory, hard to answer without knowing what you are doing, but basically yes - enough memory you wont run out and nice and fast. It will make a difference. If you're reading a lot of datasets from disk though, SSD will be the biggest asset to you. It is the single most cost-effective thing you can do to speed up most systems.

I actually came to the site today to ask a similar question - what server system I should buy.

There are advantages to going server board and chips. I don't know whether you will need them or not. It can cost you. Server systems will normally support ECC Memory. This is way more expensive, will normally run slower, but it's fault tolerant and desirable for Safety Critical systems. You probably don't want this "advantage" of server systems. But you don't have to buy ECC memory, so you can ignore it.

However, there are advantages to server systems that you might want. Basically, they can really take the ceiling off what you can do. Want two CPUs so you can have a sixteen-core system? You can do that. Want 64GB of RAM? You can do that. Want to spend a lot of money? You can do that. ;)

My semi-educated guess is that you do not want to go the server route. It's more money, you would need to be doing some serious work to need the extra power... But you asked and that's the short answer.

I guess the easiest thing to do is ask you what you're running this on at the moment and how much its holding you up. My system is an AMD 1100T which is a six-core (pre-Bulldozer so "real" cores) processor, and 12GB of 1600MHz RAM. It is perma-clocked to 4GHz. I am a programmer (C++ though more database work these days) and it is good for my needs. Postgres counts as multi-threaded but probably not to the degree your program sounds given that I'm normally the only person using it. ;)

My hunch, based on your stressing of parallelization and my complete ignorance of your budget, is to recommend an eight-core piledriver. Intel chips have higher performance but much of the software that is out there (esp. games) is not really very well optimized to take advantage of parallel processing yet. (Or rather still). If yours is, then I personally would probably lean toward the extra cores. Assuming your many "calculations" are not all floating point based, that is. (I.e. if you're flinging around billions of INTs, go for it, if every other line is dividing floats by each other, that's going to cost you).

I hope this has helped. I answered as best I could based on the information given (and my own limited expertise. ;) ).

H.
 
Back