
Resistor hack turns a Nvidia GTX690 into a Quadro K5000 or Tesla K10 - Breakthrough
http://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/
======
memset
The corresponding reddit thread is quite insightful:

"It is far cheaper to make one very good chip for the highest market, and
modify it slightly for lower end markets...

Now, this is the part you hate: this is the only viable alternative. There's
no point demanding different designs for different market segments as that
would significantly increase the cost you, the consumer, pays. You can demand
chips be sold at lowest prices without being fused down, but then the company
eats its own market, becomes unprofitable, and goes out of business at worst -
or, at best, doesn't make enough money to fund further r&d as much as they
want, which again hurts you, the consumer."

[http://www.reddit.com/r/linux_gaming/comments/1aj3n3/not_coo...](http://www.reddit.com/r/linux_gaming/comments/1aj3n3/not_cool_nvidia/)

~~~
joelthelion
It's just a situation where capitalism doesn't lead to the most economically
efficient solution.

The company and the consumers are rational, yet for no additional cost,
everyone could be benefiting from better hardware.

Unfortunately I don't have a better system to propose :)

~~~
martincmartin
Why is that? The major cost is the one-time cost of designing the chip, not
producing it. Software is even more extreme: the distribution costs are
essentially zero. That doesn't mean the most economically efficient solution
is for the software to sell for nothing.

~~~
Peaker
Say you have 2 audiences: Gamers and professionals.

For gamers, a low performance value yields a value of $10, and a high
performance value yields a value of $12.

For professionals, a low performance value yields a value of $5, and a high
performance value yields a value of $20.

If nVidia sold a single design to all of them, with a high performance value,
then gamers would be willing to pay less than $12, and professionals would pay
less than $20.

If they want to sell to the entire market, they have to price it less than
$12, and lose around $8 from each professional buyer.

However, if they sell 2 designs (e.g: one a cripple of the other), they can
derive around $10 of value from each gamer, and $20 from each professional.

The reason this is inefficient, is because for each gamer buying the crippled
design, there is a loss of $2 of real value. This loss is a real value loss
that could be avoided if there was some other way to extract the actual value
for gamers and professionals without crippling the product.

In short, the inefficiency is not that the price is not near the production
cost, but that the intentional crippling of the product (necessary to extract
maximal value via market segmentation) is causing an actual value loss in the
economy.

~~~
Sumaso
However in your latter scenario, the net loss is only 2$ versus your original
scenario where the net loss is 8$. (lose 8$ per card to the perfessional,
versus gamer losing 2$ of performance)

So its socially optimum to continue to do what Nvidia is doing ;).

~~~
bjustin
If they sell at a >4:1 ratio in favor of the gamer version, it is still
suboptimal.

If I had to guess, I would say their gamer card prices are by and large good
approximations of the value they provide. No idea about professional card
prices.

------
hkmurakami
_> The tight asses have decided that if you want this feature under Linux you
have to get a Quadro which has Mosaic support :palm:. So naturally I decided
to look at how mod the card..._

I just absolutely loved reading this line. I had been away from 'hacker
culture' for nearly two decades (probably ever since I became serious about my
studies back in middle school and I stopped 'having fun' with my studies and
interests) and finally seem to be growing back into the mindset. This kind of
tinkering, exploring attitude is so wonderful, even just as an observer to
this story it makes me feel like I'm regaining my childhood innocence again.

~~~
Orva
This made me smile. Also reminded me of <http://prog21.dadgum.com/169.html>

------
tedchs
It's possible Nvidia manufactures the higher-end cards and then, if they fail
the high-end testing but pass low-end testing, are marked as the lower-end
card. There is precedent for this in many areas of computer hardware (CPU,
RAM, hard drives). I would be wary of undoing this and expecting any level of
reliability.

~~~
hfsktr
That is a good point. Something I really wouldn't have even thought of before
even though I knew about the hard drives part.

In the post he says: "the GTX 690 and the Quadro K5000 (same GPU) and, get
this... the K5000 is only single GPU and clocked some 25-30% slower then the
gaming card, what a joke"

so wouldn't it be downgrading the card to make it usable on linux? maybe not
idk much about linux, drivers, hardware etc.

~~~
GhotiFish
no, he's only altering how the drivers perceive the card.

Frankly, throwing in resistors to modify how it get's identified by the
computer is really a hardware hack for a software problem.

The drivers are stupid, and they're deliberately choosing to not use card
features.

~~~
colechristensen
When you buy a high end card, you're buying the development time required to
enable advanced features, you are not buying hardware; the silicon simply
doesn't cost that much to produce. Most people do not want or need these
advanced features, nor do they want to pay for them. The alternative
environment has everyone paying $2000 for the same card and much fewer sales
vs. premium users paying for premium features, and everyone else getting what
they need at a much lower cost.

~~~
makomk
They're not just spending the development time on advanced features. NVidia
appear to have _intentionally crippled_ stuff like data transfer speeds to and
from the GPU on their consumer models (but only for OpenGL/OpenCL and
DirectCompute - you still get full speed when doing the exact same thing
through DirectX) on the basis that it mostly only screws professional users.

------
habosa
This was compared to software that ships with all the features but requires a
serial number to unlock the good ones. However I think this is different, and
I think modifying hardware in this way is considerably more moral than using
keygens to unlock software. It's hard to exactly state why I feel that this
hardware mod is entirely moral behavior while software piracy is not but it's
hard to put my finger on the right words. I think it's possibly something to
do with Locke's notion of property rights and how one has an ownership claim
to that which he created by his own labor. Am I the only one that feels this
way? Sorry to ramble.

~~~
hayksaakian
This makes sense because "buying" software is different than "buying"
hardware.

When you buy (a license to use) software, (at least nowadays), you're paying
for the right to use the software, not the actual bits on the disc/file.

When you buy hardware, you're paying for the materials and manufacturing
effort that produced a physical thing.

Given that mass reproducing hardware is non-trivial compared to software,
there is often little/no/paper-thin DRM on hardware. Thus the OP could modify
his graphics card.

On the other hand, look at cell phones. Given their legal connection to a
service contract that is enforced with SIM cards, providers have a convenient
form of DRM to enforce limitations on modifications.

~~~
greggman
While you might have a right to mod the hardware you bought you probably don't
have a licence to use different drivers?

------
sargun
I don't entirely know how I feel about this hack. I feel like this is really
similar to unlocking the "Professional" version of a piece of software with a
serial key generator.

Although, I understand hardware is dramatically different than software, it's
using the same principal -- the same reusable bits to assemble many different
products, and then just using tools to mask features unless a user pays for
them.

Then again, why should software be any different? Why shouldn't we be able to
unlock the hidden features of our software with hex editors, and serial key
generators?

What do you guys think?

~~~
fosk
I think that if I own a piece of hardware, I am the sole owner of every single
chip and screw on it, including every hardware hack that it may have.

On the other side, usually you don't own the software but only a license that
grants you permission to use it.

~~~
latimer
This is a good point. When you buy hardware, you are now the owner of it so
they shouldn't be able to stop you from doing it, just like once you buy a
phone you should be able to unlock it or install whatever software you want on
it.

~~~
chii
> just like once you buy a phone you should be able to unlock it or install
> whatever software you want on it.

unless, of course you signed an agreement to not do that, in exchange for a
cheaper price on the phone and some period of contract with a particular
carrier...

~~~
cma
Which is handled by contract law; it isn't clear why companies that want to do
that should get a subsidy via criminal law DMCA penalties. Just like it isn't
clear why white-only diners should have received free services from government
thugs to throw out African American "trespassers".

------
xradionut
I see no problem with either side, Nvida or the hardware hacker.

As someone who spent nearly a decade in the semiconductor industry, testing
wafers and packaged die, the economics of binning and market segment are
understandable. As a electronics and RF geek, I've done plenty of mods and
customization that voiding plenty of warranties.

The only issue would be if a third party did this mod in volume and repackaged
the card as something it was not originally.

------
asveikau
Wouldn't it be easier (and less risky to your hardware) to make the kernel lie
about the device ID? Or modify the nvidia kernel blob to compare against
another ID?

~~~
wladimir
I'm sure they tried that. It is likely that the driver uses another
"proprietary" way to read the ID as well and uses that as definitive answer.

Having said that, distinguishing in software would mean that open source
drivers such as Nouveau won't see any difference between the cards and can
advertise all the features always.

------
eksith
So this is basically a change of the PCI device ID. The capabilities are
essentially the same; he just changed the device signature. A cool hack
nonetheless.

Edit: After looking at the screenshots closer, that seems to be the case.

The device ID 0x11BA becomes 0x118F. Vendor ID remains 0x10DE on both. Memory,
CPU and other important stuff are basically the same.

Very cool!

~~~
n3rdy
Maybe the configuration is a little different too.

If the professional counterpart is actually worse for gaming, perhaps its
because the resources are allocated to supporting multiple displays instead?
In that case, is it reasonable to consider this crippling the device?

~~~
eksith
Professional vid cards are usually about multiple displays so saying that's
crippling might be a bit harsh IMO; I'd say it's "differently allocating"
resources.

Is it worse for gaming _only_ because of multiple displays (I.E. actual
difference in architecture) or is it different in how the funcionality is
offloaded by the software based on the device ID? Until there are benchmarks
of an actual game played being played before and after, it would be pretty
hard to tell.

------
scotty79
That's funny how we feel about things:

FastFood monopolist adding too much salt to its cheapest food products so it
can sell less salty versions of same products at premium prices ... seems
severely pathological.

Hardware monopolist crippling cheapest products so it can sell non-crippled
ones at premium prices ... sort of ambiguous. Legit market strategy or conning
customers?

Graphic design software make selling crippled versions of their software
cheaper so it can sell fully featured version at premium price. Totally legit.

What's the difference?

~~~
auctiontheory
You keep using that word "monopolist." I do not think it means what you think
it means.

~~~
scotty79
I know it's bit inappropriate here. I mean provider or clique of providers
entrenched in the market and large enough to shape the market.

~~~
ffk
The term you may be looking for is oligopoly -
<http://en.wikipedia.org/wiki/Oligopoly>

------
leoh
How do people find hacks like this? Looking at the board, that resistor is one
among tons of components.

~~~
memset
He actually describes it in the thread, a little farther down:

"No, no schematic, what I did was look for resistors that looked like they had
an alternative position, have a look at the photos and you will see what I
mean. Any that I suspected of being a strap I used a meter to check if the
resistor was connected to ground of 3.3V directly, and looked where the
general traces were going in the area. If they went towards the GPU and
connected to one of the rails it was a pretty good bet that it was a hard
strap."

[http://www.eevblog.com/forum/projects/hacking-nvidia-
cards-i...](http://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-
their-professional-
counterparts/msg203225/?PHPSESSID=f88387c520550af1e0508d8687b41928#msg203225)

~~~
pdmccormick
I once saw a networking IC that had a key strap-in pin multiplexed with an
indicator LED, so if you wanted to change the brightness of the LED by varying
the resistor value, watch out because you'll change the device behaviour! Good
times...

------
BoyWizard
You'll find that adding the resistor changes the ID the card sends to the
drivers, and that there is other differences in the hardware (so it doesn't
change the 'model' of the card). It just so happens that it enables 3 monitors
in Linux (this is already enabled in Windows).

------
parad0x1
Entire post mirrored here: <http://imgur.com/ZJt0VmT> Save it as well.

~~~
drivebyacct2
Ow, my eyes. Between the microscopic font and jpeg artifacts.

HTML source of the print friendly version:
<https://gist.github.com/anonymous/5193769>

Or less artifacty screenshot: <http://i4.minus.com/itHdo0GR7zXw1.png> (Sorry
to steal any thunder!)

Not affiliated, but minus.com doesn't compress high-res PNGs into JPEGs like
imgur does (it's only at a certain size that imgur does it, but it's annoying
for screenshot threads, or in this case).

~~~
ars
Here is an optimized version of that image:
<http://i4.minus.com/ivpBgQ8dNf5Ge.png> (smaller filesize, loads quicker).

Why did you save the image with transparency?

~~~
drivebyacct2
Because that's what scrot did?

------
parad0x1
This is simply amazing! And since it's an actual hardware mod, Nvidia can't
fix this right? On the other hand, those cruel corporate brats and their money
making schemes.

------
DoubleMalt
I am astonished there is no law to put you away for 10 years for posting such
disrupting stuff ;)

~~~
wladimir
Please don't joke about this. Perception of ownership has changed so much over
the last ~20 years, that I wouldn't be surprised if someone actually tried to
jail people for improving hardware they bought, by claiming that you only
'license' the device instead of having bought it, or some other contorted
reasoning (give it to the IP maximalists to come up with twisted lines of
thought and sad analogy stories). Luckily NVidia isn't that sue-happy, but
still...

Edit: see also this, currently on the frontpage:
<https://news.ycombinator.com/item?id=5394928>

~~~
DoubleMalt
Laughing is a coping mechanism.

I am well aware of the seriousness of the assault on our freedoms on behalf of
the corporate overlords.

And I would rather be chided for being ridiculous writing this comment than
rewarded with an uneasy laugh of the people that recognize how close to home
it hits.

------
eaurouge
Some people are comparing what NVIDIA has done to its hardware to crippled
software. It's a bit different though. They didn't just cripple their
hardware, they segmented their markets and crippled hardware and software as
needed to make it almost impossible to use the same card for more than one
application.

Geforce cards are crippled in software so you wouldn't want to use them for
CAD work. Quadro cards are crippled in hardware and software so you wouldn't
want to use them for gaming or computation, respectively. Although Teslas are
also stress tested for data reliability so perhaps it's unfair to say the
Quadro cards are unsuitable for computation because they're crippled
intentionally.

------
ohazi
Keep in mind that one of the finer points of making money in the semiconductor
industry is yield management, especially when you're cutting larger dies.

These days you don't just toss a chip when it fails a test - you design the
tests to exercise different physical regions of the chip to identify the
location of a defect. You also design the chip in a way that allows you to
power down different regions and behave like a lower priced part.

So a defective quad-core CPU might be sold as a dual-core part, or as a
variant with a smaller cache. You have slightly finer grain control on a GPU,
and very fine grain control on RAM or flash.

------
rangibaby
It was possible to flash certain ATI 6950 cards "into" 6970s too:
<http://www.techpowerup.com/articles/overclocking/vidcard/159>

------
confluence
Not too surprising - classic example of price discrimination:
<http://en.wikipedia.org/wiki/Price_discrimination>.

Think of any product you see out in the world - and I guarantee you that there
is some level of price discrimination going on. It really is very expensive to
develop completely different lines of products - any rational company would
just slap on a few restrictions and a different brand name and bam! whole new
market being served, with the existing one remaining in play.

It's actually quite elegant.

------
jsumrall
He's changing the resistors such that the bits which specify the identity of
the board to the system now identify as something else? So if in fact there
was some difference in the board design or chip design, then it could cause
problems where unexpected faults occur. It's like saying you are capable of
doing X, Y, Z, but really you can only handle X and Y situations. When someone
asks you to do Z, you're screwed.

But I don't know enough about Nvidia GPU hardware design, and I'm sure he
wouldn't be publishing this hack if it didn't work well.

------
kalleboo
I thought the common knowledge on why the "workstation" cards were more
expensive than the gaming cards was that you're paying for the driver
development for the pro cards (extra stability testing, CAD software
compatibility or whatever). What this guy is doing here is just changing what
driver the card tells the computer to use.

So really, this _is_ equivalent to software piracy/unlocking software with a
product key. He's not changing the actual capabilities of the hardware, just
what driver software it unlocks.

------
syassami
Kind of reminds me back in the day where you could flash your Ati X800 card
(12 pipelines) to upgrade it to 16 pipelines of the X800 XT model.
(<http://www.techpowerup.com/articles/overclocking/vidcard/100>). This
decision corresponds with the quote in the top comment."It is far cheaper to
make one very good chip for the highest market, and modify it slightly for
lower end markets..."

------
sneak
Why not patch the driver in software instead?

~~~
varjag
1\. This is way easier.

2\. You are unlikely breaking any bizarre U.S. reverse engineering law by
doing it.

------
derda
I would not be surprised, if he runs into stability issues.

Silicon manufacturers have long used the approach, to just manufacture the top
of the line chip and then after testing, deactivate certain parts of the chip,
to sell as a lower product. It was famous with AMD processors, where you were
able to unlock more cores. The thing is, often those cores were disabled for a
reason. I would not be surprised if a similar sheme would apply here, too.

~~~
Aissen
It works under windows, with NVIDIA provided drivers. Just not under Linux.

------
brudgers
_"the K5000 is only single GPU and clocked some 25-30% slower then the gaming
card"_

Makes sense. Quadro cards are used for life critical visualizations, e.g.
finite element analysis of a bridge. That's what justifies their expense.
Rendering speed only needs to be "fast enough." The premium is on accuracy and
reliability.

~~~
Keyframe
I thought the premium in quadros these days is in double operations speed.
Since I need floats, not doubles I opted for two GTX 680s. They are screaming
compared to Q6000, but I could always use more.

~~~
brudgers
If an application uses floats in lieu of doubles might that be evidence that
accuracy is not at a premium?

~~~
Keyframe
Indeed, 53 significant bits (doubles) vs 24 significant bits (floats). In my
case float performance was what I needed. There are always other options,
depending on your (precision) needs and needs in general, such as binary coded
decimals, fixed point arithmetic...

------
BuddhaSource
I wonder if this can be done for Intel CPUs? I am sure one has to open the
metal cover and change the resistors, since the device id comes with the
complete package.

 _Off topic_ Its sad that GPUs are very bulky and dissipates heat, discourages
me to buy one to play games once in a while. And expensive too.

------
druidsbane
I don't understand why he can't just modify the driver if he's going to go
through all that trouble. Also, NVidia does support 3 monitors under Linux
which was the point of this hack so this is confusing on many levels!

~~~
bd_at_rivenhill
This probably explains why Nvidia doesn't release open source versions of
their drivers.

------
admford
Oh this is a classic move by Nvidia. I had a gaming PC with two GeForce 8800
GTX cards in it. I used a softmod to get them to be recognised as Quadro
4600's so I could work better in Solidworks.

NVidia makes decent video cards and such, but they're almost all based off a
single reference design. It saves money on component costs and production time
for third parties. Why make three different boards, using three different
GPUs, when all you need to do is determine how much RAM you want to stick on
it and choose the component layout for the specific product.

------
crawdog
When dies are produced from the fab they are broken into different lots based
on results from testing. This is based on the error performance. While one lot
may not work as the top of the line model, it may meet the requirements for a
lower power unit. Buyer beware. While you can possibly overclock your video
card, you certainly run the risk of a higher number of issues.

------
kayoone
Strange, i have seen another developer use 3 displays on Ubuntu with just a
660 GTX Ti. He said he plugged it in and it worked.

------
nwmcsween
This is why you don't piss off your userbase. Also this should be mirrored as
this will be taken down fast.

------
doctorpangloss
Wonderful! While I hesitate to break a $1,100 video card, a little hack
generates so much value.

What other awesome hardware hacks radically improve the value of your
equipment, be it electronic / analog? We're talking about the 100%+ value
improvements here.

------
rbanffy
I guess this is why GPU makers hates open source drivers so much - they
prevent artificial segmentation and they would drive prices down if they were
competitive with proprietary ones.

------
n3rdy
For the past few months my GeForce 450 drivers have been acting up, and my
computer was actually unusable until I disabled just about all hardware
accelleration for the card.

Is it possible that the new drivers for this card are so unstable just because
nVidia is trying to thwart this type of hack?

If that's the case, totally unacceptable to cripple my machine just because
they want to prevent other people from altering their cards (which I will
immediately begin to look into how to do myself now).

~~~
eksith
That's a very bold assertion. I don't think they would push a driver out that
recklessly just to stop one hardware hack. Besides, this was posted within a
few days of him posting on the nVidia forums and you said yourself, the issues
you had with the card are a few months in.

Even if they knew about it before hand, it's not like a critical vulnerability
or something; just an interesting modification to hardware (rarely how
intrusions happen) that very few people know to implement correctly and fewer
still who would want to do to their cards.

~~~
n3rdy
After reading a little more its clear that my original post was incorrect.

Even the original tone of "crippling" hardware seems a little far fetched to
me now, it seems like these cards are just optimized differently for specific
tasks (gaming, or workstation).

Still would be nice if they could get their drivers working better under
windows 7.

------
WatchDog
Does this improve gpgpu performance? I believe the GFX range were crippled in
this regard, has anyone tried bitcoin mining?

------
Quequau
I can't wait for someone to work out how to make the single GPU version of
this work in a MacPro.

------
wildgift
Is this caused by the fact there are only a few companies making graphics
chips?

------
ck2
_I repeat, this does NOT make your GTX 6XX card faster, nor does it make it
slower._

So what is the difference then?

~~~
SODaniel
As the article clearly states the function of the hack is to allow the card to
run with alternative drivers, providing lacking functionality under Linux.

------
smallhands
off point comment ahead i am wondering is bing <strong>smarter </strong>than
google i search for "how is 0x11BA equal to 20k resistor" and got nothing in
google but bing return at least some useful pages!!!!!!!

------
uribs
If they only need to fool the drivers, you could patch the drivers themselves
in software.

