Help Deciding the cpu

I am building a pc optimised for battlefield 4. I am going to use a amd r9 280x as my gpu. I want to build a future proof pc so i was wondering about what processor i should use. Should i use Amd's 8350 or should i go for intel's i5 4670? I am not going to be overclock my pc.

Well, considering that BF4 uses AMD's Mantle, and takes advantage of multi core processors, I'd just assume that an 8350 would perform slightly better in BF4 than the 4670. Not entirely sure on that one, but that would be my guess. And if more games start taking the Mantle approach, they will similarly take advantage of multiple cores. The 4670 has a better single core performance, but slightly worse multi core performance than the 8350. Then, I guess it's worth mentioning that most games that become console ports will likely have been optimized for the AMD processor and GPU, considering what's in consoles now. Honestly, it's a tough choice, but I'd go with the AMD processor. 

That's just my opinion, though. It's cheaper, and has better multi core performance, which could potentially lead to better game performance down the road. The better single core performance of the Intel chip might be enough to sway you the other way though. Your choice in the end, neither chip is bad, but I, personally, would pick the AMD chip. The motherboards tend to be more expensive for the LGA 1150 chipset over the AM3+ chipset as well, so that's worth taking into consideration. If you go with the 4670, you'll be paying a bit more, but if you go with the 8350, your single core processes will suffer a bit. 

Like I said, though, both cards are fast, both will do what you need them to do. Just kind of comes down to personal preference. I don't think you can go wrong either way. Just make sure you have fun with it.

I don't think Mantle has much to do with using multiple cores on the CPU.  Mantle means low level access to the AMD's GPUs, along the lines of Nvidia's low-level APIs.  So, Mantle promises to make the GPU run faster, for games that program to it.  But Mantle is not a factor in choosing a CPU or socket type.

I don't understand enough about what games actually need from the CPU, to say definitively which architecture will "last longer".  Many people say that games will utilize "the cores" better in the near future.  This is tough to see, because of two things 1) AMD's cores have lower IPC than Intel's cores; and 2) main memory remains a significant bottleneck.

To save power and chip area, AMD "cheaps out" on their cores and has them share some resources.  So, 8 cores on an AMD chip is not necessarily faster than 6 cores on an Intel chip.

The second thing is… you can put 100 cores on the chip, but they're all sharing the same memory bus.  They will all starve even when they're running 90% out of the cache.  CPU design is a complicated game of tradeoffs and tuning.  It's not a game where "more is better".

Core counting is a lot like the "megahertz myth", where people assumed that a higher clock rate was the same as a faster CPU.

Anyway, if the OP wants a better answer maybe he can explain what he means by future proof.  I can think of at least two ways to make a PC more future proof.  And neither of them make much sense.

The only surefire way to future proof your computer is to stop developers from changing the requirements to run their games.  You need to stop progress somehow.

 

Well, Mantle is made in a way that the rendering (if handled properly) automatically takes advantage of all of the available cores on your processor. As a result, it would be able to split the workload a bit better by having more cores. So mantle would, actually, mean that better multi core performance might lead to better overall performance in games. This is only theoretical, though, as I haven't seen anything to back it up. The idea, though, is that if it is meant to take advantage of multiple cores, then it would likely lead to better performance by having them. One of the big drawbacks of AMD technology recently was that the majority of games only took advantage of a single core, meaning that no matter how many cores they decided the slap on the chip, it didn't matter. As long as Intel was still pulling ahead with better single core performance, they were going to perform a bit better. With Mantle, however, the rendering process is made to automatically take advantage of multiple cores, meaning that AMD might actually have a default advantage over most Intel chips, which support fewer cores (at least at the same budget level).

I'm not here to say that more cores == more power. I've never said that. In this case, looking at these two chips, and considering that he's going to be using his computer for a game that is using the Mantle API (which is specifically designed to take advantage of multiple cores), then it would seem reasonable to assume that the chip that has the advantage in multi core computing would come out in first, would it not?

The AMD processor he suggested is a fast chip. A really fast chip for the price. The Intel processor is fast as well, but it lacks a bit in multi core processing speeds (even though it is faster in single core processing speeds). Again, I, personally, would go with the AMD chip. You get more performance/price, and if Mantle picks up a bit more, then it's likely that processors with more cores will perform better than processors with fewer cores (assuming they are approximately the same speed).

"Well, Mantle is made in a way that the rendering (if handled properly) automatically takes advantage of all of the available cores on your processor."

Monatrox, everything I've read about Mantle says it's a GPU API and does not have anything to do with the CPU.  Am I misinterpreting you?  Are you saying that since the GPU would go faster it would make the CPU the bottleneck in more cases than before?  That makes sense to me.

Fair enough on the more cores thing.  That was not aimed at you anyway, sorry about that.

I had to go back and look at  the Anandtech benchmarks, and of course they don't show games.  The benchmarks show them trading blows.  Yes I agree with you, I think the 8350 is going to be the faster CPU in games.

Hm. It's kind of hard to explain what I mean by all of this. Basically, yes, Mantle is based primarily around the GPU itself, however, it also improves the communication between the CPU and GPU. The CPU technically handles rendering and loading, but then offloads those tasks to the GPU. As a result of this, the CPU does play a major role in rendering. By removing a lot of overhead, they've increased the effectiveness of CPU's in doing this by a lot, and they've also made it in a way that utilizes all of the cores of a CPU when communicating with the GPU. Stuff like this is the reason you can see computer builds with all the same parts aside from the CPU get such different results. The CPU speed does greatly determine the effectiveness of your graphics card. DirectX had a significant amount of overhead that wasn't necessary. By writing more low end, and closer to the hardware, a lot of that overhead was cut out. It also made it possible to more easily utilize multi core processors when dealing with rendering and loading of content.

So yes, Mantle is a GPU based API, however, it changes the way the GPU interacts with the processor itself, meaning that it gets more gains out of the processor than before. In that way, it's able to interact with multiple cores of the processor, and skip on all of the overhead that was present in DirectX.

Not sure if that makes sense, really. I'm not terribly effective at explaining things. Techradar had some kind of description of how Mantle worked that I think was better than mine. I don't look at Techradar often, so I don't know exactly how great a source they usually are, but all the information on this matched up with what I saw elsewhere, so I figured that it was probably fine. Here's the article if you want a look:

http://www.techradar.com/us/news/computing-components/graphics-cards/amd-mantle-a-low-level-api-with-high-level-potential-1190692

Oh, and yeah, I didn't think you were talking about me when referring to all the people who say "more cores == more power." Just providing a counter statement for the sake of discussion :)

But yeah, as far as your statement on future proofing, you're completely right. Anything you get might last you 2-3 years. Maybe a bit longer if you really push it.

But anyways, yeah, back to the topic at hand. If you want single core processing power, Intel wins. If you want multi core processing power, AMD wins. My bet is going to be that AMD will perform better in games. In addition to that, the chip will be cheaper, and the motherboard will likely be cheaper. I'd just go with AMD.

 

Mantle might be about communication between GPU and CPU, but I get the feeling that it won't be "optimized" for either brand CPU either way.

I don't think so either. The point is that it's made to utilize all of the cores available on the cpu. This means that given the two chips that were presented, where AMD has faster multi core performance, and where Intel has faster single core performance, and whereas he's trying to build a PC to run BF4 (a game which uses mantle, and takes advantage of all the cores of a cpu), it would be a better idea to get the AMD chip. This is because the faster multi core processing would inevitably lead to better gaming speeds, barring some specialized optimization for Intel processors (not in Mantle, but in the Frostbyte 3 engine itself).

Ah, I understand you perfectly now, thanks for explaining that.  What you are saying makes sense, and if what tech radar is saying is true, that calls to DirectX and OpenGL are sequentialized by a global lock, then fixing that will give an advantage to high-core count CPUs like the 8350.  I'll go read the tech radar article!

 

In order to better understand what Monatrox is saying, I read up a little on multithreaded rendering.

It looks like Direct3D 11 and OpenGL 3 are (starting to) allow multiple threads/cores to prepare buffers/geometry/whatever for the GPU for rendering.  They more or less put a queue between GPU and CPU so the core(s) can go off and do something else after leaving work in the GPU's inbox.

As Monatrox says, this will disproportionately help large core-count CPUs. My guess is the difference will not be great but we'll have to see.

It could also turn out that multithreading on e.g. Direct3D could hide some of the "overhead-type" efficiency improvements in Mantle, by allowing it to be made up by a powerful CPU.  Overall system latency (FPS) could be similar.