Quote:Not been flamed yet, and NV has done a total of 1 post(s). This implies
I'm kinda right about something! I don't doubt that NV will tell me I'm
wrong about something, though, even if it's as petty as I've implied
something that isn't true is etc. (I'm aware I do this a lot).
I think he's too tired after his last post. lol.
I was. This has been sitting in my backlog of "threads to respond to" for 2 months now since I really did not want to respond to the rest of the thread. So I guess I'll wrap this up now. I was seriously considering taking it off the backlog so you almost got away from me AnyOldName3

.
AnyOldName3 Wrote:Can I just mention that if you ask two incompetent people to each do one maths problem, they'll take about the same time or longer than someone who knows what they're doing doing the two problems on their own.
I hear similar analogies used all over the web. But this is an inaccurate analogy and basically implies that multithreading and multicore designs are useless. It also gives people the wrong impression of how these microarchitectures/multithreaded programming work.
AnyOldName3 Wrote:AMD throw extra cores at their CPUs because their cores are crap.
That's not really an accurate way to look at it. They made a design decision to "trim the fat" (make the cores smaller) in order to fit more of them on a single die. Thus emphasizing multithreaded performance over singlethreaded performance. In other words their cores became crap because they threw more cores onto the die, not the other way around.
AnyOldName3 Wrote:Intel's design is much better, so they don't need as many cores to give equal or greater performance.
This is true but it is only one way of comparing the two and doesn't really paint the whole picture. If I have a quad core chip with 1.5x performance per core vs. an 8 core chip with 1x performance per core the 8 core chip will still obviously be better in some workloads. Despite the fact that the quad core chip can achieve the same total performance with fewer cores. The real problem will bulldozer/piledriver is that even with twice as many "cores" it still doesn't consistently lead sandy/ivy bridge in multithreaded tests. If it had much lower singlethreaded performance but much higher multithreaded performance than it would be a good alternative depending on your workload and therefore would be able to compete with the high end ivy bridge chips like the 3770k. But instead we see much lower singlethreaded performance and similar multithreaded performance on vishera so AMD has had to price it to compete against the i3s and i5s where it can actually win in many multithreaded applications. However if the loss of singlethreaded performance was sufficiently offset by a much smaller core it would be possible for AMD to achieve greater multithreaded performance and therefore AMDs design would be superior in some aspects despite lower singlethreaded performance. Again you're correct, but this lacks proper context. Also I would replace "design" with "microarchitecture" since design implies the entire chip while microarchitecture implies just the core design.
AnyOldName3 Wrote:Also, the only applications in which the AMD chip significantly outperforms the i7 are ones specifically designed to run faster on AMD cores than Intel ones.
Nope. x86 software developers almost never optimize their applications to run faster on specific cpu microarchitectures let alone specific brands (outside of special custom scientific applications that run on supercomputers).
AnyOldName3 Wrote:There are certain optimisations that can be made to a program so it runs better on AMD cores than it would otherwise, but these hurt Intel performance. I've also read that these optimisations are a pig to implement, and so barely any software houses bother.
I have no doubt that there are some assembly level optimizations that would have that effect but such optimizations would almost never be done by software developers due to the sheer difficulty of implementing and debugging them. The problem I have with your sentence is it implies that assembly optimizations favoring Intel cpus would somehow be easier to implement. Which is of course false. Low level optimizations are rare in general in modern software. Of course optimizations could be made in high level programming languages that would have this effect as well but that would be pretty nuts as well. And of course different compilers will apply different optimizations so different compilers may favor different microarchitectures.
There. Now everything is wrapped up.