Interesting read on how Intel became dishonest, leading to AMD's downhill

RCFProd

Expert
Ambassador
Not sure where else to post this, but this is something I'm sure everyone here can learn from:

https://www.reddit.com/r/pcmasterrace/comments/3s5r4d/is_nvidia_sabotaging_performance_for_no_visual/cwukpuc?context=3

No, it's because Intel became dishonest. Rewind to 2005:
AMD had the Athlon 64 put ahead of everything Intel had available and they were making tons of money off its sales. But then, suddenly, sales went dry and benchmarks began to run better on Intel despite real world deltas being much smaller than synthetics reflected. Can you guess why? Because Intel paid PC manufacturers out of its own pocket for years to not buy AMD's chips. Although they were faster, manufacturers went with the bribe because the amount they made from that outweighed the amount they get from happy customers buying their powerful computers. And thus, the industry began to stagnate a bit with CPUs not really moving forward as quickly. They also attacked all existing AMD chips by sabotaging their compiler, making it intentionally run slower on all existing and future AMD chips. Not just temporarily, but permanently; all versions of software created with that version of the compiler will forever run worse on AMD chips, even in 2020 (and yes, some benchmark tools infected with it are still used today!).

http://www.techweekeurope.co.uk/workspace/dell-pays-65million-to-settle-intel-bribe-probe-8577
http://forums.vr-zone.com/news-around-the-web-/129715-suit-intel-paid-dell-up-1-billion-year-not-use-amd-chips.html
http://www.anandtech.com/show/3839/intel-settles-with-the-ftc
http://www.xbitlabs.com/news/cpu/display/20091104200351_Intel_Accused_of_Giving_Dell_6_Billion_for_Exclusivity.html
https://www.ftc.gov/news-events/press-releases/2010/08/ftc-settles-charges-anticompetitive-conduct-against-intel
http://www.osnews.com/story/22683/Intel_Forced_to_Remove_quot_Cripple_AMD_quot_Function_from_Compiler_

tl;dr, from Anandtech's summary:

  • Intel rewarded OEMs to not use AMD’s processors through various means, such as volume discounts, withholding advertising & R&D money, and threatening OEMs with a low-priority during CPU shortages.

  • Intel reworked their compiler to put AMD CPUs at a disadvantage. For a time Intel’s compiler would not enable SSE/SSE2 codepaths on non-Intel CPUs, our assumption is that this is the specific complaint. To our knowledge this has been resolved for quite some time now (as of late 2010).

  • Intel paid/coerced software and hardware vendors to not support or to limit their support for AMD CPUs. This includes having vendors label their wares as Intel compatible, but not AMD compatible.

  • False advertising. This includes hiding the compiler changes from developers, misrepresenting benchmark results (such as BAPCo Sysmark) that changed due to those compiler changes, and general misrepresentation of benchmarks as being “real world” when they are not.

  • Intel eliminated the future threat of NVIDIA’s chipset business by refusing to license the latest version of the DMI bus (the bus that connects the Northbridge to the Southbridge) and the QPI bus (the bus that connects Nehalem processors to the X58 Northbridge) to NVIDIA, which prevents them from offering a chipset for Nehalem-generation CPUs.

  • Intel “created several interoperability problems” with discrete CPUs, specifically to attack GPGPU functionality. We’re actually not sure what this means, it may be a complaint based on the fact that Lynnfield only offers single PCIe x16 connection coming from the CPU, which wouldn’t be enough to fully feed two high-end GPUs.

  • Intel has attempted to harm GPGPU functionality by developing Larrabee. This includes lying about the state of Larrabee hardware and software, and making disparaging remarks about non-Intel development tools.

  • In bundling CPUs with IGP chipsets, Intel is selling them at below-cost to drive out competition. Given Intel’s margins, we find this one questionable. Below-cost would have to be extremely cheap.

  • Intel priced Atom CPUs higher if they were not used with an Intel IGP chipset.
    All of this has enhanced Intel’s CPU monopoly.

The rest is history. AMD slowly lost money, stopped being able to make chips that live up to the Athlon 64, etc. The snowball kept rolling until bribery wasn't even necessary anymore, they pretty much just own the market now. Any fine would be a drop in the bucket compared to how much they can make by charging whatever they want.

edit: But guess what? AMD hired the original creator of the Athlon 64 and put him in charge of Zen back in 2012. Zen might be the return of the Athlon 64 judging by recent news:

http://www.mystatesman.com/news/business/amid-challenges-chipmnaker-amd-sees-a-way-forward/nngdf/
https://finance.yahoo.com/news/amd-zen-cpus-said-meet-185517672.html
http://www.extremetech.com/computing/217664-globalfoundries-announces-14nm-validation-with-amd-silicon
http://www.techspot.com/news/62481-amd-rumored-building-custom-soc-next-imac.html
 


Even though the article refers to the Athlon 64 based from 2005, he mentions that the AMD processors from today are still effected by Intel's way of ''marketing''. I'm wondering if todays AMD processors are held back in performance because of it.
 
I'm going with doubtful. If you use programs from that era then yes. But this was 1) a "long" time ago in computer years so those programs have been updated. And 2) it's been declared what they did so new programs know what not to do. It's not like Intel swept this under the rug. They said what they did, paid the Billion to AMD, and I'm sure if they were still doing what they did the law would come right back down on them. Intel would have to find another way to cheat. So yes, if you are still using your 5+ yo program then you might have an issue. I doubt updated ones have that problem.

Keep in mind that like with AMD/Nvidia, there are different ways to do the same thing. Just like some games prefer AMD or nvida over the other, doesn't mean that if an Intel CPU is faster then a similar AMD CPU that the program is "cheating". Sometimes a task just works faster on a certain thing.
 
I think a lot of amd's downfall was simply miscalculating which direction to head. They opted to go wide with weaker cores and more of them along with deeper pipelines on a lot of cpu's. Cutting corners by sharing so much of the cache between 2 physical cores in order to lower the cost also lowered performance.

Intel has made similar mistakes, they did that with the p4 prescott chips I think it was. A deeper pipeline and when branch prediction worked well, it offered good performance. When it predicted poorly it bit them. Sometimes it's as if rather than mimicking intel's successful designs they instead copied a lot of the failed ones. If you saw intel botch the approach of deeper pipelines and branch prediction, why emulate that rather than learn from it?

Amd was also first to market with 64bit processors, which sounded incredible to the average consumer. Moar is better so it must be twice as good as 32bit. Of course 64bit has a good number of improvements but at the time it came out there wasn't a need for it. There was very little software coded for 64bit so having a 64bit cpu at the time was nearly pointless. Many programs just don't need 64bit even now. On one hand it was making advancements and I give them props for that. However another way of saying 'ahead of their time' is 'out in left field' or out of touch with reality.

That's the type of thing that's been haunting them. Intel didn't force them to use deep pipelines, to cut corners by sharing so much of the front end between cores (again an older cluster tech that came and went, didn't succeed yet amd thought it sounded like a good idea) and to go so wide with multicore. The truth is that many programs simply don't need 6-8 threads to perform well. Intel has proven this with much success from i5's and i3's using only up to 4 threads in a large variety of programs for years.

Making matters worse, rather than backtracking and trying to correct the flaws, amd insisted on updating the designs they had with more of the same. When intel dropped the ipc to increase clock speed and deepened the pipeline to 31 stages on prescott it didn't pan out too well. By the time successors like penryn came out they improved the pipeline and dropped it to 12-14 stages and with nehalem it only went to 20-24 stages. Ditching netburst was a good plan. Instead of using a similar tactic for bulldozer/piledriver, amd decided to simply crank up the clock speeds on an inefficient architecture that didn't live up to expectations.

More of the same doesn't fix anything. I don't see this as intel's fault, rather a series of bad choices and miscalculations on the part of amd as to where tech was headed. Coming out with the wave of the future before it has a place in the current market isn't beneficial. Whether it's theoretically headed in the right direction for far off into the future or not, if it doesn't improve the here and now then the advancements or forward thinking don't matter much. Pc's run on performance not theory.
 
Ok, so that makes it clear that todays tech by AMD is not hindered by Intel for me. I've deepened myself into learning more about AMD processors and what their quality is in comparison to Intel's processors. When trying to help in a Tom's Hardware thread I always try to convince the user to go with Intel. Typically because you usually get better performance, and It's actually cheaper usually than an FX-8320 + 990FX Mobo + CPU Cooler than an i5-4460 + H97 motherboard.

Now I've talked with an enthusiast who uses an FX-8350 in his build with ofcourse great overclocking material. He talks about how frame timings on AMD's side are better in games that truly support up to 8 cores/threads, an example is Battlefield 4 and Battlefront, which he seems to play a lot:

First things first though, I would like to make it very clear that I'm NOT saying that 8 core AMD cpus are going to out perform intel cpus in every game. That much is obvious to anyone who follows this topic.

It makes plenty of sense to use something like a 4790k if you know that a lot of the games you play arent well optimised or arent multithreaded. It makes a lot of sense for AMD to use one of these in their project quantum computer. Its easier to cool in a mini itx build and its going to perform better accross a range of different titles. My point is this. If you are playing frostbite titles, like battlefield and battlefront, and if you consider that every major title is now being released on a multithreaded engine, it "makes sense" to buy an 8 core cpu.

You might be wondering why 8 physical cores is better than 4 hyperthreaded cores. The answer is actually incredibly simple. Virtualisation is bad for real time rendering. However, this issue isnt only existent in the hyperthreaded cpus which use virtual cores, it exists in all intel cpus since hyperthreading was first created back in the 80s, and then when it was readopted in 2008. Since this reintroduction of hyperthreading, Intel cores, both physical and non physical rely on virtual controllers (they have physical controllers too but theyre not the same as AMD) embeded in the OS (such as windows, linux or apple os) to decide how the cores will execute instructions. AMD cores dont rely on virtual controllers.. Everything about how they operate based on instructions is physical. If you think about it, AMD could just as easily work with windows to create inverse hyperthreading for their chips, having 2 cores operate as one. This would improve fps in a lot of games, but at the same time they would introduce the issue of virtualisation. Basically it comes down to this. If your game renders on just 1-4 cores, intel cpus are great because their cores will be fast enough that the issue of virtualisation wont be.. too much. It will easily outperform 4 of the 8 physical cores on whichever 8 core cpu you try. The games that render on 8 cores however, are really going to want 8 physical cores. They will stutter less at 45 fps on all physical cores, than if you had virtual cores running the game at 70fps. I hope this all makes sense.. As for not knowing how pcie lanes help with sli or crossfire.. Maybe if you reply to this I can explain
 
Well, yes, AMD did flub up. Not quite as bad as the P4 due to our multicore systems today. And Intel was a bit deceptive. AMD is not hindered by Intel, Intel is hindered by AMD. They have been concentrating on power usage, and not doing well at it. It is turning into Intel vs. ARM, not good at all for people who like to see performance improvements. If AMD succeeds we should see better performing Intel chips as well.
 
He talks about how frame timings on AMD's side are better in games that truly support up to 8 cores/threads, an example is Battlefield 4 and Battlefront, which he seems to play a lot:

Even if this is true, we aren't there yet. For every game where AMD shines, there is a game where it doesn't perform very well. That's why I went with the 3570K over the 8150. The 8150 or other chips like it will get your 80%+ of the time. But I didn't want a random thing to come up and slow me down. At the time I had the money and could afford it, so I went with it.
 
By and large this is why I hate "business as usual" and large bloated companies, Intel included. Intel controls some 90% of the industry, and teeters on the edge of being a monopoly. How they got there is simple the used billions of dollars to "greece the wheels" and ensure their processors were used over any other brand. They made software to deliberately cripple processors from AMD thus making their own shine. Are they doing it today? Who knows, they have the money to buy the worlds smartest programmers, I'm sure they can still work in cripple commands somehow. I mean come on teenagers have breached "unbreachable" government firewalls, I'm sure the best and brightest can cripple a processor via software in a manner nearly impossible to detect. The thing is they were at the height of these dirty business practices when AMD processors were actually better than Intel processors. AMD didn't get to benefit from the fact they had the better tech because of Intel's dirty business. In the end Intel made how many billions while having to pay AMD a small fraction of the profits they made while hurting AMDs public image and leaving AMD teetering on the edge of extinction- good old "business as usual". All of that gave Intel the time they needed to actually produce the very impressive iCore line, but they were given the cushion of time by their dirty business practices.

What is really bad for all of us common consumers is even if Zen comes out of the gates biting at Kaby Lake's heels can AMD actually sell their product? I mean lets face it, if you wife cheats on you and your dumb enough to keep her around should you be horribly surprised when she cheats on you again? Does anyone think that Intel wouldn't hesitate to go right back to any underhanded dirty business practice there is to keep their superiority? Intel is too huge, powerful, and has too much market share and money for AMD to ever topple or even compete on even ground with them due to the fact that Intel will use all that power, market share and money to play as dirty as they possibly can. Intel's biggest threat though is to themselves, if they manage to pay off vendors, cripple Zen in benchmarks, in short do what they do best they may just put AMD under for all they have invested in Zen. If AMD goes under Intel is a monopoly and will be hit by the anti-trust laws and may be forced to break up. The sad part is Intel makes a great product and wouldn't need to cheat to compete, they just hate competition and cheat to kill off the competition.
 
Did you check the dates? The date on that is the end of the year, 2009. In the post he mentions that 2009 is the year in which AMD and Intel settled their suit. This means that at the time the suit was settled there was code out there that shouldn't have been used/created. Um, we know this already? Where is the post from 2014, five years after the suit, that says Intel is still making such code? This post doesn't really cover anything new.
 


Don't get me wrong, I agree with you, at this point in time Intel really doesn't need to be investing in a programming genius crippling AMD processors because Intel iCore is way ahead in the game (at this point in time). All that I was saying is in the world of computers, programming, coding, hacking, there is no such thing as impossible. I don't think Zen will be much more powerful core per core performance than Haswell, so again Intel really shouldn't have anything to worry about (AMD will again have to compensate for core per core performance by going for moar cores and price themselves into second place), however if Zen were to come out neck and neck with Kaby Lake (we all know that is a darn big IF) how would Intel respond? Would they actually allow "fair business" and risk loosing some of their market share (maybe even in the highly lucrative server market)? Or would they go right back to the good old playbook that made them what they are today. Buying off vendors, writing for lack of better terms malicious codes to cripple the competition, ect, ect, ect... And why shouldn't they? The last time they did that they got away with it for years and in the end only got a slap on the wrist and what amounted to a very small settlement for all the money they raked in with their dirty business practices.

So while I don't think they are doing much if anything at all right now to cripple AMD that doesn't mean that they wouldn't do anything they possibly could to keep their superiority if Zen really comes out a game changer like Sandy Bridge was. In the end we as the consumers are who pay the biggest toll for their underhanded business practices. Sandy Bridge to Ivy Bridge to Haswell to Broadwell to Skylake hasn't really been big performance improvements (not like when Sandy Bridge debuted). A lot of people with overclocked Sandy Bridge processors are doing just as good as non K Haswell, Broadwell or even Skylake processors. Competition is what drives innovation and performance improvements. Without competition technology stagnates and crawls forward, and Intel is a company that fundamentally hates any kind of fair competition.
 
What "compiler" are you talking about? Programs that run are already compiled except those that run on interpreted languages (Javascript) or ones that live-compile (Java). There are hundreds of compilers out there, so what do you mean by Intel "sabotaged their compiler". What compiler? Are you talking about the compiler that Windows uses, which is made by Microsoft and not Intel, to compile C, C Basic, C#, and C++ code into machine code? Intel, last time I checked does not make that compiler.

Either I'm totally confused or am totally right, could someone please explain?