What CPU for number crunching? (running single-threaded C++ app, one instance on every core/thread the CPU has)

argitoth

Honorable
Nov 11, 2013
20
0
10,520
I wrote a software that will be processing audio (data), taking in 32-bit data, internally processing at 64-bit. Reading/Writing to harddrive and ram usage will be low, so the CPU will easily be the bottleneck

Even though the process is single-threaded (does not make use of my other CPU cores) I can run multiple instances on my computer at once to bring CPU usage to 100%. Isn't that just as good as a multi-threaded software?

What consumer-priced CPU is good if you're running data processing programs with CPU usage at 100% for days at a time (with brief breaks)?
 
Solution
Depends on the money you are willing to spend.

You have the choice of the 17-58xxK chips, which run from about $390 (for the 4 core chip) all the way up to $1000 (for the fastest of the 6 core chips). These come from the Xeon e3 family of chips. They seem to be pretty good at math and heavy duty workloads. Just make sure you get a very good CPU cooler for it. Motherboards for these chips (2011-v3 socket) tend to cost more than the core I7 chips (1150 socket) do, and these also use DDR4, which is more expensive still than DDR3. These chips also do not have video onboard. Which also means no video decoder built in.

Next you drop down to the I7-4790K. All I7 chips come with 4 cores. Fastest of the 1150 socket based CPU's. These use the...
Depends on the money you are willing to spend.

You have the choice of the 17-58xxK chips, which run from about $390 (for the 4 core chip) all the way up to $1000 (for the fastest of the 6 core chips). These come from the Xeon e3 family of chips. They seem to be pretty good at math and heavy duty workloads. Just make sure you get a very good CPU cooler for it. Motherboards for these chips (2011-v3 socket) tend to cost more than the core I7 chips (1150 socket) do, and these also use DDR4, which is more expensive still than DDR3. These chips also do not have video onboard. Which also means no video decoder built in.

Next you drop down to the I7-4790K. All I7 chips come with 4 cores. Fastest of the 1150 socket based CPU's. These use the mainstream consumer motherboards, DDR3, have video on chip along with the decoder. Both these chips and the 2011-v3 come with hyperthreading, which means each core could be assigned 2 threads.

Move down one more step, and you get to the I5-4690K. These are also 4 core chips, but no hyper threading. Video and decoder are included. Much like the I7-4790k, but with slightly lower clock speeds, but still a 1150 socket and using DDR3.

I seriously doubt you would even want to consider any I3 chip.

 
Solution

argitoth

Honorable
Nov 11, 2013
20
0
10,520
One more question, AMD vs Intel. I read that Intel is more efficient so less speed (GHz) does not really mean less speed. Fine. But AMD has 8 cores and intel has 4. Unless intel is twice as efficient, AMD still beats intel. So why would I go with intel?

If both CPUs were at 100% usage, which would finish the task faster? Seems like AMD.

Edit: Oh but then intel has 8 threads, which is exactly like 8 cores apparently, so in that case intel would be faster since it's more efficient.
 

jghaverty

Distinguished
Dec 25, 2013
416
0
18,910
Sounds like super pi. Intel is vastly superior for this type of programming, albeit typically discussing a one on one scenario.

I would say the 4790k would be king here, unless you have the budget for x99.
 
There is a reason most businesses choose Intel. And its not because they love Intel's pricing. AMD has really had weak CPU's for years now. Next year, AMD intends to release a new line of CPU's that should help matters for them. But then the rumor mill says Intel will too.

Intel does offer two different 2011-v3 chips that have 6 cores, 12 threads. The faster one is the $1000 chip I mentioned earlier, and the slightly slower one I believe is in the $600 range. These 2, plus the 4 core version that uses the same socket are just work horses. And I believe that you would get the most work out of these. Its just a matter of if your budget can handle them.
 

DubbleClick

Admirable
With a single thread app, a pentium g3258 would do about as good as an i7 4790k and arguably better than an i7 5820k (due to the lower overclock on average).

You may however want to make the app concurrent, using boost::thread it should take you between 5 minutes and a few hours to do so, depending on how complex your existing code is and how consequent parts of it must work.
 

argitoth

Honorable
Nov 11, 2013
20
0
10,520


No nononono, damnit sorry my thread title is to blame (just updated it)

I am running a single-threaded app, yes, but I'm running MULTIPLE instances, one for each core or thread the CPU has, I'll be at 100% CPU usage!