I'll be building my pc in a couple of weeks and I don't know whether to get a i5-4670k or a amd 8350 because I'm gonna get a gtx 780 and I'm worried about bottle necking and another qusetion will 1600 MHz RAM 16 gb of Corsair Vengeance will be ok with the amd 8350?
1600 is compatible yes, it is pretty much the minimum standard for ram speeds right now. As for cpu that is an easy choice if $ isnt an issue the 4670k for sure. dont believe us? trust Tom's gaming ccpu hierarchy chart, the 4670k is top tier while the 8350 is 2nd
In terms of the usage of RAM, are you going to use your rig for video editing or just for games?
If yes, then the more the better. If only for games, it's okay. You can still have 8GB RAM for games. Getting a 16GB Ram can make a big difference if you're rendering and doing video editing, if you're using it for games an 8GB RAM and 16GB RAM then there would be almost no difference at all.
The i5-4670K offers a better consolidation of resources for real-time workload performance than the FX-8350. Either can be pretty decent CPUs when used at their best. As far as gaming is concerned, the i5 takes the cake with basically ALL of the execution resources of a "dual-core" Piledriver module consolidated into a single core, and run more efficiently. (the "8 cores" of the FX chip, don't "add up" to any more execution performance unless they are clocked higher). Overclock the i5 to 4.0ghz, and it will match or beat the FX-8350 "stock" clocked at almost any workload.
Next gen games are optimised for eight cores, so you will get better performance in games like Watch Dogs, Shadow of Mordor, etc. As a proof you can check Watch Dogs requirements. Except this I5 is superior.
I believe that the "8 cores = better for console ports" is a misconception. The only place there is going to be any scheduling optimization for an 8 core CPU is on the fixed 1.6ghz 8 core console hardware, which has less combined execution performance than an i3-4130 or FX-4350. Any scheduling optimizations that benefit that specific known fixed hardware that is consistent from console to console will have to be stripped as part of the port to the desktop, which will run like a traditional desktop workload and schedule out work to available execution resources depending on availability and priority.
There is a one way relationship of threads to "cores" (logical or physical, doesn't matter) We can run as many threads as we want on a core, just never on the same cycle, but we can never run a thread on more than one core at the same time. New game engines may very well be better at spawning compute workload on many threads rather than a single thread, but that does not mean that the workload automatically runs better on an 8 core CPU, UNLESS that 8 core CPU actually has more combined execution performance. In the case of the 8 core PD chips vs Haswel quads, there is no advantage in terms of combined execution performance on the 8 core CPU, so there won't be any performance advantage in those workloads regardless of how many threads they spawn.
AMDs marketing strategy in the last few years has relied heavily on a series of myths.
1. More Cores = more performance. Myth, shot down when Intel put 4 ALUs in a core, doubling AMDs architecture in execution resources per core.
2. More GHZ = more performance. Myth, everyone should have already known this from the netburst days.
3. More Cores = better multi-tasking. Myth. Multi-tasking performance on any single user system is a matter of juggling many threads on whichever execution resources are available. Whether those execution resources have been split into more cores or not does not help multi-tasking performance. The net combined execution performance, and the OS's scheduling and prioritizing of tasks will define how well the system behaves in multi-tasking.
4. More Core = better gaming. Myth. Real time workloads scale proportionally with per core performance. Real-time workloads do not scale proportionally with additional cores. (8 cores is rarely ever "double" the performance of 4 equal cores in a real-time workload). That said, scaling has improved significantly with recent changes to game engine design, so at least moving forward, per core performance will be less of a bottleneck in real-time workloads, but this doesn't help anyone who wants to play an existing game that runs poorly on slow cores with no benefit to large core count.
5. More core = the future! Myth. More cores is the least desirable path to increased compute performance. It was taken as the only path to the future available when silicon process ran out of growth in terms of clock speed. Consolidating the performance of a many-core system into a single core would always provide the most nimble performance in the widest variety of workloads for a single user system. If you want "proof" of this, you can experiment yourself. Take your current CPU, and under-clock it to 1/X of its normal speed, where X is the core count (or module count) of your CPU. Boot up and spend a few hours on your simulated high core count low per-core performance system. Now, return speeds to normal and disable all but 1 core (or 1 module), boot, and use the machine for a few hours. Which is better?
So I must be a real AMD hater then eh? Actually no. I like my FX-6300 very much because it offers me the best balance of features (like IOMMU and overclocking fun) and performance (comparable to locked i5s when overclocked), for the money. I just don't have any delusions about waking up one day to a world that has finally caught up to a myth about more cores, and suddenly having a better computer than the competition because the "future" is finally here. That day isn't coming in a world where the competition has already surpassed the execution performance of the entire 8 cores with only 4.