Wednesday, January 23rd 2019

Bulldozer Core-Count Debate Comes Back to Haunt AMD

AMD in 2012 launched the FX-8150, the "world's first 8-core desktop processor," or so it says on the literal tin. AMD achieved its core-count of 8 with an unconventional CPU core design. Its 8 cores are arranged in four sets of two cores each, called "modules." Each core has its own independent integer unit and L1 data cache, while the two cores share a majority of their components - the core's front-end, a branch-predictor, a 64 KB L1 code cache, a 2 MB L2 cache, but most importantly, an FPU. There was much debate across tech forums on what constitutes a CPU core.

Multiprocessor-aware operating systems had to be tweaked on how to properly address a "Bulldozer" processor. Their schedulers would initially treat "Bulldozer" cores as fully independent (as conventional logic would dictate), until AMD noticed multi-threaded application performance bottlenecks. Eventually, Windows and various *nix kernels received updates to their schedulers to treat each module as a core, and each core as an SMT unit (a logical processor). The FX-8350 is a 4-core/8-thread processor in the eyes of Windows 10, for example. These updates improved the processors' performance but not before consumers started noticing that their operating systems weren't reporting the correct core-count. In 2015, a class-action lawsuit was filed against AMD for false marketing of FX-series processors. The wheels of that lawsuit are finally moving, after a 12-member Jury is set up to examine what constitutes a CPU core, and whether an AMD FX-8000 or FX-9000 series processor can qualify as an 8-core chip.
US District Judge Haywood Gilliam of the District Court for the Northern District of California rejected AMD's claim that "a significant majority of" consumers understood what constitutes a CPU core, and that they had a fair idea of what they were buying when they bought AMD FX processors. AMD has two main options before it. The company can reach an agreement with the plaintiffs that could cost the company millions of Dollars in compensation; or fight it out in the Jury trial, by trying to prove to 12 members of the public (not necessarily from an IT background) what constitutes a CPU core and why "Bulldozer" qualifies as an 8-core silicon.

The plaintiffs and defendants each have a key technical argument. The plaintiffs could point out operating systems treating 8-core "Bulldozer" parts as 4-core/8-thread (i.e. each module as a core and each "core" as a logical processor); while the AMD could run multi-threaded floating-point benchmark tests to prove that a module cannot be simplified to the definition of a core. AMD's 2017 release of the "Zen" architecture sees a return to the conventional definition of a core, with each "Zen" core being as independent as an Intel "Skylake" core. We will keep an eye on this case.
Source: The Register
Add your own comment

369 Comments on Bulldozer Core-Count Debate Comes Back to Haunt AMD

#251
Vya Domus
FordGT90ConceptFP scheduler/frontend determines what thread ends up where.
On which FPU, sure, of which there are more than one.
Posted on Reply
#252
lexluthermiester
qubitI hope the lawsuit wins and no one ever tries this again.
So what you're saying is, effectively, that no one should ever try something new or try to do things a different way for fear of being punished? :shadedshu: Very short sighted perspective and is not how we got where we are today.
qubitMy conclusion isn't flawed, yours is.
And you've done it again. :kookoo: I stand by what I said.
Posted on Reply
#253
FordGT90Concept
"I go fast!1!11!1!"
Vya DomusOn which FPU, sure, of which there are more than one.
Still a shared resource, as the diagram explicitly says.
Posted on Reply
#254
lexluthermiester
Aquinusa core is still a core without the FPU
Correct. That is exactly how early CPU's were made. It wasn't until the 486DX that the FPU was integrated into the CPU die itself. Before then there were separate chips for floating point calculations, if CPU makers made them at all. Single core CPU's without floating point were still called CPU's back then and were considered fully functional. The terminology still applies and is still valid. All AMD has to do is point out these very simple facts, show that each of the 8 Integer Units can execute instructions as designed and that will be that. This lawsuit will fail as long as AMD's legal team are competent, which there is a very good likelihood of.
Posted on Reply
#255
qubit
Overclocked quantum bit
lexluthermiesterSo what you're saying is, effectively, that no one should ever try something new or try to do things a different way for fear of being punished? :shadedshu: Very short sighted perspective and is not how we got where we are today.

And you done it again. :kookoo: I stand by what I said.
No I'm not saying that. More straw man arguments. You're going to keep arguing, aren't you?
Posted on Reply
#256
Vya Domus
There are multiple FPUs shared by the two threads. Same thing as to how on a GPU CU/SM multiple threads use multiple FPUs but they don't count as just one FPU.
Posted on Reply
#257
lexluthermiester
qubitNo I'm not saying that.
That is exactly what your statement implied. The perspective expressed is as technically flawed as it is idealistically flawed and is an example of the entitled, greedy and narrow-minded scope that inspired this lawsuit in the first place. This lawsuit should and very likely will fail on the merits alone.
Posted on Reply
#258
londiste
Could you please stop about the FPU, please? Pretty please?
Posted on Reply
#259
FordGT90Concept
"I go fast!1!11!1!"
Vya DomusThere are multiple FPUs shared by the two threads. Same thing as to how on a GPU CU/SM multiple threads use multiple FPUs but they don't count as just one FPU.
In Zen, Core, Core 2, Core I#, Athlon 64 X2, Athlon X2, etc. Core0 cannot share FPU resources with Core1 because they're completely separate thread contexts. The thread has to be purged from one core and transferred to the other. In Bulldozer, Thread A and Thread B in the same module both use the same floating point cluster.
Posted on Reply
#260
Vya Domus
Cluster, exactly , meaning more than one. Saying that there is just one FPU that is shared is simply improper.
Posted on Reply
#261
FordGT90Concept
"I go fast!1!11!1!"
Doesn't matter how many FMACs there are, they're shared resources in Bulldozer, Steamroller, and Excavator not dedicated resources like they are in Zen, Thuban, Nehalem, and Conroe. Independent processors don't share resources above the crossbar (or whatever interconnect is used) other than cache.
Posted on Reply
#262
Aquinus
Resident Wat-man
I think I'm going to un-sub now, considering we have a lot of "experts" chiming in with some rather interesting opinions on the matter.



Posted on Reply
#263
Patriot
cdawallMore of

Side 1 here are facts signed off by people that are considered leaders and experts in the industry.

Side 2 nope.

Side 1 additional information further proving what was backed up by subject matter experts

Side 2 see previous lack of argument.
Yeah... Seeing lots of this...

Posted on Reply
#264
Shambles1980
that diagram started off with "no nothing" Kind of funny to be honest.
Posted on Reply
#265
F7GOS
Shambles1980that diagram started off with "no nothing" Kind of funny to be honest.
Maybe said with a hint of tongue in cheek?
Posted on Reply
#266
AusWolf
Shambles1980i dont see how that is true..
the case is
"normal members of the public were sold "cores" which weren't the same as a traditional core. But amd says that normal members of the public would have known the difference"

Who better to have than normal members of the public if the argument is the public should know the difference.
IMO normal members of the public wouldn't tell the difference between a Celeron and a Core i7. Both of them run Facebook and Youtube just fine.
Posted on Reply
#267
Shambles1980
in the context of this law suit that's not the best argument..
they are arguing that bulldozer "cores" aren't traditional cores and so you cannot count them as 8 cores, and should have called them something else which would have defined them as different so normal people didn't think they were getting 8 full traditional cores.
Posted on Reply
#268
AusWolf
Shambles1980in the context of this law suit that's not the best argument..
they are arguing that bulldozer "cores" aren't traditional cores and so you cannot count them as 8 cores, and should have called them something else which would have defined them as different so normal people didn't think they were getting 8 full traditional cores.
We cannot argue about cores with people who have absolutely no idea what a processor core is. What they think is irrelevant if they lack the knowledge necessary to even join the argument.

My point is: you need some knowledge before you can form an opinion about something.
Posted on Reply
#269
Vya Domus
I find this logic hilarious.

This relies on the presumption that "normal" people were idiots and they didn't know that this CPU didn't have 8 cores but somehow if AMD would have called it something else suddenly now they know how to make the distinction between that and "traditional cores", all this while they still don't have a clue what a core actually is.

All this is happens in the context where a "normal" consumer can't even properly define what a CPU is and most refer to it as "the brain of the computer".
Posted on Reply
#270
AusWolf
Vya DomusI find this logic hilarious.

This relies on the presumption that "normal" people were idiots and they didn't know that this CPU didn't have 8 cores but somehow if AMD would have called it something else suddenly now they know how to make the distinction between that and "traditional cores", all this while they still don't have a clue what a core is. All this is happens in the context where a "normal" consumer can't even properly define what a CPU is.
I know quite many people who really have never seen a CPU, and have no idea what is inside one. This doesn't make them idiots. They only have different interests. But I still think that they have no right to join the argument, because they don't even know what the argument is about. Just like I would never argue about the latest fashion trends, for example, because I'm a total alien to the topic.
Posted on Reply
#271
Shambles1980
Vya DomusI find this logic hilarious.

This relies on the presumption that "normal" people were idiots and they didn't know that this CPU didn't have 8 cores but somehow if AMD would have called it something else suddenly now they know how to make the distinction between that and "traditional cores", all this while they still don't have a clue what a core actually is.

All this is happens in the context where a "normal" consumer can't even properly define what a CPU is and most refer to it as "the brain of the computer".
does not matter if they know the difference provided amd made the effort..
we had the samething over how hard drive space was advertized.. wd settled in that case..
Posted on Reply
#272
FordGT90Concept
"I go fast!1!11!1!"
Shambles1980wd settled in that case..
Seagate was class action sued and lost. That's why all hard drives and optical media now have the 1 GB = 1,000,000,000 bytes descriptor on the packaging.

If AMD still produced Excavator processors, they'll probably have to add 1 core = 1 integer core on the box.
Posted on Reply
#273
FordGT90Concept
"I go fast!1!11!1!"
486DX is the equivalent of 20 lifetimes old in terms of technology. It's not relevant to processors that debuted in 2011. Complaining that the FPUs were in a coprocessor is like complaining that power windows in vehicles shouldn't be a standard feature today. FPUs are integral to personal computer design for decades. Hell, the text you're looking at right now is processed by FPUs through TrueType fonts. Back when FPUs were separate, fonts were just copied from indexed tables (especially ASCII) because they simply didn't have the resources to render flexible fonts. Today, TrueType fonts are trivial and backpedaling on the hardware that makes it possible is poor design.

Not that it matters. Bulldozer, Steamroller, and Excavator modules share more than just their ability to process floating point decimals--they share control logic. A human losing half of their brain changes who they are. This is also true of AMD modules. The complete unit (a core) includes one of some things and two of others. Nothing wrong with that but what is wrong is AMD advertising it as having two of everything. The judge agreed the arguments need to be heard before a jury.
Posted on Reply
#274
lexluthermiester
FordGT90Concept486DX is the equivalent of 20 lifetimes old in terms of technology. It's not relevant to processors that debuted in 2011.
Absolutely it is as everything currently in use today owes it's heritage to that generation of CPU's, just like all modern ARM based RISC CPU's owe their existence to the early Acorn CPU's. Just because CPU design's have improved and evolved does not make the older iterations irrelevant.
FordGT90ConceptFPUs are integral to personal computer design for decades.
However, are not required. An Integer Unit can do floating point the long way, which is the way floating point was done before FPU's were designed. A CPU is still a CPU with or without an FPU. Likewise a CPU core is still an individual core whether it has it's own FPU or shares one with another core.
FordGT90ConceptNot that it matters. Bulldozer, Steamroller, and Excavator modules share more than just their ability to process floating point decimals--they share control logic.
By that logic, the Core2Quads and any other CPU that has two or more dies bridged together, and shares resources, do not qualify as a single CPU. They are dual CPU packages. So should we all sue Intel and AMD for that deception?
FordGT90Conceptbut what is wrong is AMD advertising it as having two of everything.
AMD never said that. They called it an 8 core CPU, which by technical definition, it is.
Posted on Reply
#275
Degenerate
danbert2000I think they may have a case in that early processors didn't even have an FPU, and were still processors.
This. The FPU argument has no weight, because it's not an essential part of a processor.

Intel 8086
Intel 80286
Intel 80386
Intel i486SX
Motorola 68000
Motorola 68020
Motorola 68030

And many more were all "zero-core processors" if you follow this nonsense logic.
Posted on Reply
Add your own comment
Dec 18th, 2024 10:45 EST change timezone

New Forum Posts

Popular Reviews

Controversial News Posts