While technically the same hardware, isn't it the case that the "higher end" products are the units off the production line that met a higher QA bar?
That's my understanding of how it works for CPUs. A four-core CPU with questionable functionality on the 4th core may be sold as a "3 core" CPU. Depending on how "questionable" the 4th was though, it might be possible to use it anyway.
I don't think production quality is the only reason. Sometime it's cheaper to design one product and sell it as multiple products to capture more value. For example, some people are willing to pay 1k for a graphics card while others are only willing to pay 300. So you sell the same graphics card to both groups but for one you artificially lower it's capability. This allows you to capitalize on the market a lot more efficiently than selling your product either at a low price or a high price.
With Tesla cards, you get a professional-oriented driver that is good for Maya and CUDA, but not optimized for games. There are also a few hardware features that are important for pros but are not an issue for gamers --stuff like ECC RAM, double-precision fp, better handling of multiple 3D viewports.
But, it's my understanding that most of what you pay for when you buy a Tesla card is support. If you call Nvidia saying Maya has a driver problem with your Tesla card, they will pay attention. If Maya has a problem running on a GeForce card, they will direct you to the forums.
Especially you have only one product to produce on the highly expensive PCB/chip manufacturing lines - if you experience demand shifts, just reflash the BIOS and change the packaging.
Way cheaper (and more flexible!) than ramping up different production lines.
Lots of chip companies do this. I worked for a company that sold a whole line of different chips at different price points that all used the same die. They had different packages and they all had different internal pads on the die connected to ground so that the chip could detect what mode it was in. The firmware could read this and detect which hardware was enabled or disabled.
I remember the management being very secretive about this since they didn't want their customers to think they were being ripped off by buying the "expensive" chip…
I don't meant to sound critical of this practice… From an cost perspective it makes a lot of sense to do it this way—the cost to layout, test, and create all the masks for a custom chip is huge. So it makes sense to want to cram as much into one chip instead of making 2 or 3 or 4. That way the one time cost of creating the masks and tooling up at the foundry are amortized over all the products that use the die.
> IIRC one could also flash a consumer-grade card with a Tesla BIOS and "convert" a couple-hundred-dollars-card into a thousand-dollars-card.
No, this guy was soldering resistors on his $1000 card to spoof the PCI vendor:device IDs and fool the driver to enable a software features (4 displays at once). The same could have been done by patching the kernel.
IIRC Nvidia fixed the "bug" that made this work but enabled the feature on the consumer cards (it was available on Windows but not Linux for reasons unknown).
But he did not get access to the hardware features which are fused off.
And as others have said, every chip manufacturer out there does same. Intel has 20+ models of their most recent CPUs, which are probably all the same silicon or perhaps a few different designs. i5's are "crippled" i7's (perhaps ones that were not 100% successfully manufactured), but you get them at a discount.