NVIDIA's Fermi: Architected for Tesla, 3 Billion Transistors in 2010
by Anand Lal Shimpi on September 30, 2009 12:00 AM EST- Posted in
- GPUs
A More Efficient Architecture
GPUs, like CPUs, work on streams of instructions called threads. While high end CPUs work on as many as 8 complicated threads at a time, GPUs handle many more threads in parallel.
The table below shows just how many threads each generation of NVIDIA GPU can have in flight at the same time:
Fermi | GT200 | G80 | |
Max Threads in Flight | 24576 | 30720 | 12288 |
Fermi can't actually support as many threads in parallel as GT200. NVIDIA found that the majority of compute cases were bound by shared memory size, not thread count in GT200. Thus thread count went down, and shared memory size went up in Fermi.
NVIDIA groups 32 threads into a unit called a warp (taken from the looming term warp, referring to a group of parallel threads). In GT200 and G80, half of a warp was issued to an SM every clock cycle. In other words, it takes two clocks to issue a full 32 threads to a single SM.
In previous architectures, the SM dispatch logic was closely coupled to the execution hardware. If you sent threads to the SFU, the entire SM couldn't issue new instructions until those instructions were done executing. If the only execution units in use were in your SFUs, the vast majority of your SM in GT200/G80 went unused. That's terrible for efficiency.
Fermi fixes this. There are two independent dispatch units at the front end of each SM in Fermi. These units are completely decoupled from the rest of the SM. Each dispatch unit can select and issue half of a warp every clock cycle. The threads can be from different warps in order to optimize the chance of finding independent operations.
There's a full crossbar between the dispatch units and the execution hardware in the SM. Each unit can dispatch threads to any group of units within the SM (with some limitations).
The inflexibility of NVIDIA's threading architecture is that every thread in the warp must be executing the same instruction at the same time. If they are, then you get full utilization of your resources. If they aren't, then some units go idle.
A single SM can execute:
Fermi | FP32 | FP64 | INT | SFU | LD/ST |
Ops per clock | 32 | 16 | 32 | 4 | 16 |
If you're executing FP64 instructions the entire SM can only run at 16 ops per clock. You can't dual issue FP64 and SFU operations.
The good news is that the SFU doesn't tie up the entire SM anymore. One dispatch unit can send 16 threads to the array of cores, while another can send 16 threads to the SFU. After two clocks, the dispatchers are free to send another pair of half-warps out again. As I mentioned before, in GT200/G80 the entire SM was tied up for a full 8 cycles after an SFU issue.
The flexibility is nice, or rather, the inflexibility of GT200/G80 was horrible for efficiency and Fermi fixes that.
415 Comments
View All Comments
457R4LDR34DKN07 - Thursday, October 1, 2009 - link
A few points I have about this chip. First it is massive which leads me to believe it is going to be hot and use a lot of power (depending on frequencies). Second it is a one size fits all processor and not specifically a graphics processor. Third is it is going to be difficult to make with decent yields IE expensive and will be hard to scale performance up. I do believe It will be fast due to cache but redesigning cache will be hard for this monolith.silverblue - Thursday, October 1, 2009 - link
It should take the performance crown back from ATI but I'm worried that it's going to be difficult to scale it down for lesser cards (which is where nVidia will make more of its money anyway).When it's out and we can compare its performance as well as price with the 58x0 series, I'll be happier. Choice is never a bad thing. I also don't want nVidia to be too badly hurt by Larrabee so it's in their best interests to get this thing out soon.
AnnonymousCoward - Thursday, October 1, 2009 - link
The Atom is for mobile applications, and Intel is still designing faster desktop chips. The "Atom" of graphics is called "integrated", and it has been around forever. There's no reason to believe that PC games of 2010 won't require faster graphics.The fact that nvidia wants to GROW doesn't mean their bread-and-butter business is going away. Every company wants to grow.
If Fermi's die size is significantly increased by adding stuff that doesn't benefit 3D games, that's a problem, and they should consider 2 different designs for Tesla and gaming. Intel has Xeon chips separate, don't they?
If digital displays overcome their 60Hz limitation, there will be more incentive for cards to render more than 60fps.
Lastly, Anand, you have a reoccurring grammar problem of separating two complete sentences with a comma. This is hard to read and annoying. Please either use a semicolon or start a new sentence. Two examples are, Page 8, sentences that begin with "Display resolutions" and "The architecture". Aside from that, excellent article as usual.
Ananke - Thursday, October 1, 2009 - link
Actually, NVidia is great company, as well as AMD is. However, NVidia cards recently tend to be more expensive compared to their counterparts, so WHY somebody would pay more for the same result?If and when they bring that Fermi to the market, and if that thing is $200 per card delivered to me, I may consider buying. Most people here don't care if NVidia is capable of building supercomputers. They care if they can buy descent gaming card for less than $200. Very simple economics.
SiliconDoc - Thursday, October 1, 2009 - link
I'm not sure, other than there's another red raver ready on repeat, but if all that you and your "overwhelming number" of fps freaks care about is fps dollar bang, you still don't have your information correct.Does ATI have a gaming presets panel, filled with a hundred popular games all configurable with one click of the mouse to get there?
Somehow, when Derek quickly put up the very, very disappointing new ati CCC shell, it was immediately complained about from all corners, and the worst part was lesser functionality in the same amount of clicks. A drop down mess, instead of a side spread nice bookmarks panel.
So really, even if you're only all about fps, at basically perhaps a few frames more at 2560x with 4xaa and 16aa on only a few specific games, less equal or below at lower rez, WHY would you settle for that CCC nightmare, or some other mushed up thing like ramming into atitool and manually clicking and typing in everything to get a gaming profile, or endless jacking with rivatuner ?
Not only that, but then you've got zero PhysX (certainly part of 3d gaming), no ambient occlusion, less GAME support with TWIMTBP dominating the field, and no UNIFIED 190.26 driver, but a speckling hack of various ati versions in order to get the right one to work with your particular ati card ?
---
I mean it's nice to make a big fat dream line that everything is equal, but that really is not the case at all. It's not even close.
-
I find ragin red roosters come back with "I don't run CCC !" To which of course one must ask "Why not ? Why can't you run your "equal card" panel, why is it - because it sucks ?
Well it most definitely DOES compared to the NVidia implementation.
--
Something usually costs more because, well, we all know why.
Divide Overflow - Thursday, October 1, 2009 - link
Agreed. I'm a bit worried that this monster will cost an arm and a leg and won't scale well into consumer price points.Kingslayer - Thursday, October 1, 2009 - link
Silicon duck is the greatest fanboy I've ever seen, maybe less annomynity would quiet his rhetoric.http://www.automotiveforums.com/vbulletin/member.p...">http://www.automotiveforums.com/vbulletin/member.p...
tamalero - Thursday, October 1, 2009 - link
well that answers everything, when someone has to spam the "catholic", must be a bibblethumper who only spreads a single thing and doesnt believe nor accept any other information, even with confirmed facts.SiliconDoc - Thursday, October 1, 2009 - link
What makes you think I'm "catholic" ?And that's interesting you've thrown out another nutball cleche', anyway.
How is it that you've determined that a "catholic" doesn't accept "any other 'even confirmed' facts" ? ( I rather doubt you know what Confirmation is, so you don't get a pun point, and that certainly doesn't prove I'm anything but knowledgeable. )
Or even a "Bible thumper" ?
Have you ever met a bible thumper?
Be nice to meet one some day, guess you've been sinnin' yer little lying butt off - you must attract them ! Not sure what proives either, other than it is just as confirmed a fact as you've ever shared.
I suppose that puts 95% of the world's population in your idiot bucket, since that's low giving 5% to athiests, probably not that many.
So in your world, you, the athiest, and your less than 5%, are those who know the facts ? LOL
About what ? LOL
Now aren't you REALLY talking about, yourself, and all your little lying red ragers here ?
Let's count the PROOFS you and yours have failed, I'll be generous
1. Paper launch definition
2. Not really NVIDIA launch day
3. 5870 is NOT 10.5" but 11.1" IN FACT, and longer than 285 and 295
4. GT300 is already cooked and cards are being tested just not by your red rooster master, he's low down on the 2 month plus totem pole
5. GT300 cores have a good yield
6. ati cores did/do not have a good yield on 5870
7. Nvidia is and has been very profitable
8. ati amd have been losing lots of money, BILLIONS on billions sold BAD BAD losses
9. ati cores as a general rule and NEARLY ALWAYS have hotter running cores as released, because of their tiny chip that causes greater heat density with the same, and more and even less power useage, this is a physical law of science and cannot be changed by red fan wishes.
10. NVIDIA has a higher market share 28% than ati who is 3rd and at only 18% or so. Intel actually leads at 50%, but ati is LAST.
---
Shall we go on, close minded, ati card thumping red rooster ?
---
I mean it's just SPECTACULAR that you can be such a hypocrit.
tamalero - Friday, October 2, 2009 - link
a.-Since when the yields of the 5870 are lower than the GT300?they use the same tech and since the 5870 is less complex and smaller core, it will obviusly have HIGHER YIELDS. (also where are your sources, I want facts not your imaginary friend who tells you stuff)
2.-Nvidia wasnt profiteable last year when they got caught shipping defective chipsets and forced by ATI to lower the prices of the GT200 series.
3.- only Nvidia said "everyhing is OK" while demostrating no working silicon, thats not the way to show that the yields are "OK".
4.- only the AMD division is lossing money, ATI is earning and will for sure earn a lot more now that the 58XX series are selling like hot cakes.
5.- 50% if you count the INTEGRATED market, wich is not the focus of ATI, ATI and NVidia are mostly focused on discrete graphics.
intel as 0% of the discrete market.
and actually Nvidia would be the one to dissapear first, as they dont hae exclusivity for their SLIs and Corei7 corei5 chipsets.
while ATI can with no problem produce stuff for their AMD mobos.
and dude, I might be from another country, but at least Im not trying to spit insults every second unlike you, specially when proven wrong with facts.
please, do the world a favor and get your medicine.