EEVblog Electronics Community Forum

Products => Computers => Topic started by: gnif on March 15, 2013, 04:05:16 am

Title: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 15, 2013, 04:05:16 am
Hi All,

I did originally post this on the nvidia forums but they have silently deleted it  :--, obviously they do not like what I have found becoming public  >:D.

Update: The GTX680 has been hacked also (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)

Firstly I will give a bit of history for those that are unaware. NVidia's has for a long time had two ranges of cards, the GeForce for the gaming market, and Quadro for the professional market, and more recently the Tesla range for high end parallel computing stuff. As I am sure most of you would be aware, it is cheaper to manufacture a single chip and cripple it in some way for different product lines then it is to make different silicon for every product.

In the past it has been possible to convert the GeForce cards into Quadro if you could find what they call 'hardware straps' on the board and change them. These straps control the PCI Device ID that the card reports to the computer, and as such, what the drivers will allow the card to do. Recently nVidia changed the way this all works and it has not been possible for quite a few generations of cards until someone on the nVidia forums discovered that the GeForce 4xx something can be turned into its higher end card by changing the hardware strap values by means of an undocumented override in the EEPROM. They were quick to disable this by changing the drivers to look at only the hardware straps for the PCI ID.

I own a NVidia GTX 690 which I bought for two reasons, gaming, and multi monitor setup for work, NVidia made it very clear that this card would drive up to 3 screens in 2d, which it does quite nicely  :-+... under windows  :--! 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, as the price difference is over $1000 between 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 :-DD.

What NVidia has done is changed the way that it handles the straps, instead of just pulling the straps high or low to control the switches as they did previously, they are now read as analogue values. The scheme is as follows:

When pulling high:

5K   = 8
10K = 9
15K = A
20K = B
25K = C
30K = D
35K = E
40K = F

When pulling low I expect this to be the same, but for 7 - 0, but I did not test this as the device ID I was targeting is >= 8.

There are two tiny SMD resistors on the board, one for each nibble of the PCI Device ID byte. Originally the GTX 690 has a device id of 0x1188, so to become a Quadro K5000 this has to be changed to 0x11BA, which equates to 20K and 15K resistors. If you wanted to change it to a Tesla K10, you would want to change it to 0x118F, which equates to 5K and 40K resistors.

This will only change the rear GPU on the GTX 690, I am yet to identify the resistors to change for the front one. I would also wager a bet that the new NVidia Titan can be upgraded into the Tesla K20 using the same method.

Anyway, enough with the description, here are the photos of what to change:
(https://files.spacevs.com/gtx%20690%20back.jpg)
(https://files.spacevs.com/gtx%20690%20mod.jpg)

And the results:
(https://files.spacevs.com/quatro.png)

(https://files.spacevs.com/k10.png)

Edit:
For those that are just spewing trash on HaD comments without doing a little research... the parts are identical, changing the Device ID just makes the binary blob advertise the additional features to the system, and enables them. It does NOT affect the clock speeds, and will not make the card faster for general day to day work unless you are using the specialised software that takes advantage of these 'professional' features. Changing the ID does not affect the clock speeds as they are configured by the BIOS which we are not touching.

And stock, the GTX690 is clocked FASTER then the K5000 and the Tesla K10, so you are getting a faster card in comparison, not making the GTX690 faster.

I repeat, this does NOT make your GTX 6XX card faster, nor does it make it slower.

Donations:
To give credit to those that have donated and to keep things fair, the following are the current donations I have received to go towards NVidia hardware:
Total: $1070
Target: $1000 (EVGA GTX 690)
Remaining: $-70

Thank you everyone, the card has been replaced, I will see about getting a mod of my 690 up here soon
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Strada916 on March 15, 2013, 04:55:17 am
Great work there gnif. Have they sorted out the "Your video card has stopped responding."  |O errors. I thought for ages it was my system. Until 6 months ago when I started to work for a new company who have all Lenovo computers. These machines too gave this error message. This was all under windows7. Sorry I diress, great work there non the less.  :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 15, 2013, 04:58:04 am
Great work there gnif. Have they sorted out the "Your video card has stopped responding."  |O errors. I thought for ages it was my system. Until 6 months ago when I started to work for a new company who have all Lenovo computers. These machines too gave this error message. This was all under windows7. Sorry I diress, great work there non the less.  :-+

Thanks :) Aparrently it is fixed in the later drivers, but I doubt it, I had to go to a 6 month old driver to get away from all sorts of issues with SLI and surround vision under windows.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amyk on March 15, 2013, 11:52:53 am
Do you mean the "front" one, are the strapping resistors really closer to the other GPU, or is your computer back to front (http://www.electricstuff.co.uk/backwardspc.html)?

Carefully comparing the PCBs (or suitable images thereof) of the 690 with the K5000 might yield useful results.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 15, 2013, 11:59:33 am
Do you mean the "front" one, are the strapping resistors really closer to the other GPU, or is your computer back to front (http://www.electricstuff.co.uk/backwardspc.html)?

Carefully comparing the PCBs (or suitable images thereof) of the 690 with the K5000 might yield useful results.

Sorry, to be clear, when looking at a card, the rear connectors I have always seen as the front of the card. To be specific, it is GPU2 that can be changed. Comparing to a K5000 will not help as it does not have two GPUs on it. Comparing to a Tesla K10 may help as the use the same reference design.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: airthimble on March 15, 2013, 02:37:53 pm
gnif,

I saw your post on the cuda developer forums, which got deleted, then I tracked your username to overclock.net and finally made my way here. I am interested in exploring this with some of the single gpu cards. I am curious as to how you found this mod, were you able to get the schematics for the nvidia reference design?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Ed.Kloonk on March 15, 2013, 04:24:05 pm
Ole Linus has had a bit to say in regards to Nvidia. And he's dead right. A while back Nvidia was the shit for Linux with it's tolerable binary blob drivers. But once they got a rep for being Linux friendly, they seemed to do everything possible to back away from that position. Maybe M$ scared them?

Further, I have been watching the history of the Amiga computer and the demise of Commodore. How great hardware combined with a great user community can still be destroyed by a few business-men fools.

IMO, nvidia is following in Commodore's footsteps and will probably end up just as bankrupt also.

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: olsenn on March 15, 2013, 04:29:00 pm
You've got balls for taking a soldering iron to a GTX-690!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Kaluriel on March 15, 2013, 04:33:23 pm
I didn't even realise nVidia was doing this. Years ago it use to just be broken parts that were disabled, and now they're just purposely disabling parts. For shame
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 15, 2013, 09:42:46 pm
gnif,

I saw your post on the cuda developer forums, which got deleted, then I tracked your username to overclock.net and finally made my way here. I am interested in exploring this with some of the single gpu cards. I am curious as to how you found this mod, were you able to get the schematics for the nvidia reference design?

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.

Ole Linus has had a bit to say in regards to Nvidia. And he's dead right. A while back Nvidia was the shit for Linux with it's tolerable binary blob drivers. But once they got a rep for being Linux friendly, they seemed to do everything possible to back away from that position. Maybe M$ scared them?

I watched that a few days ago, couldn't agree more with him.

You've got balls for taking a soldering iron to a GTX-690!

No, just anger at NVidia for not clearly advertising that surround does not work under linux.

I didn't even realise nVidia was doing this. Years ago it use to just be broken parts that were disabled, and now they're just purposely disabling parts. For shame

Agreed, NVidia are the Microsoft of the hardware industry.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 15, 2013, 10:06:16 pm
I would wager a bet that these are the straps on the EVGA 670 and 680 (they use the same PCB), I would say the top set will me more likely to contain the PCI Deivce ID straps. The lower set I would only investigate if I couldn't find it it in the top set as they look less like straps.

A quick and simple way I found to test was to take a 2.2K resistor, tack the wire onto the board without removing the resistor and pulling it to ground or 3.3V+. Make a DOS bootable USB device and throw nvflash onto it, then running 'nvflash -a' will show you what the current ID is without having to boot all the way into windows/linux.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 15, 2013, 10:10:33 pm
And these might be them on the EVGA GTX 660
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: toster on March 17, 2013, 11:34:39 am
Hum.. what happens if I get the device id wrong? If the driver doesn't work with the chip that's on the card? Does it simply fall back to "software rendering" or can something worse happen?

I have a 9600GT I could mess around with, however the chip is G94b. It looks like the counterpart is Quadro FX 1800 which has a G94. The missing 'b' bothers me.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Zibri on March 18, 2013, 05:41:31 pm
hmm very interesting...
I wonder if a similar approach can enable disabled cores on x70 cards to make them x80 (660/670 >> 680   or 560/570 >> 580).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 18, 2013, 06:18:37 pm
Hum.. what happens if I get the device id wrong? If the driver doesn't work with the chip that's on the card? Does it simply fall back to "software rendering" or can something worse happen?

I have a 9600GT I could mess around with, however the chip is G94b. It looks like the counterpart is Quadro FX 1800 which has a G94. The missing 'b' bothers me.

Windows will just start up in VGA mode as it does not know the card, there is no risk to the card other then botching your soldering.

hmm very interesting...
I wonder if a similar approach can enable disabled cores on x70 cards to make them x80 (660/670 >> 680   or 560/570 >> 580).

Unknown, you would have to test it, I do know however that you can change the device ID to make a card become a 670, but do not know if it disables/enabled cores.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: SeanB on March 18, 2013, 07:25:16 pm
Normally the parts that fail full QC are used to make the lower spec units, but often as process yield improves the rejects become fewer, so they start using full spec devices instead, and just disable them. Normally this is done with a chip level probe test and zener zapping an internal fuse. You could in the old days change certain Intel and AMD parts back as they had either a pin strapping or an on top of case jumper that was cut to do options.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: HLA-27b on March 18, 2013, 09:22:16 pm
Here is where all the traffic is coming from. In case you were wondering.

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

And thanks OP for the brilliant writeup.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: cloudscapes on March 18, 2013, 11:42:03 pm
It's on hackaday as well, gratz!

http://hackaday.com/2013/03/18/hack-removes-firmware-crippling-from-nvidia-graphics-card/ (http://hackaday.com/2013/03/18/hack-removes-firmware-crippling-from-nvidia-graphics-card/)

This has been going on for a while. I remember a decade ago you could some of the better Geforce 2's into a Quadro 2. I also heard years ago that Quadros, though better at workstation stuff like CAD and 3D packages, might offer inferior performance in gaming. Like they trade off the speed for greater precision when going Geforce->Quadro, or something like that. A higher definition z-buffer, or something. I'm unsure if that's still the case, if it ever was.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Zibri on March 19, 2013, 02:33:37 am
hmm sure, but I bet such "fuses" are outside the chip.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Omnipotent_Galaxy on March 19, 2013, 04:12:41 am
hi gnif,

I am wondering if the same method will be useful in mobility Geforce cards since I own a Clevo GTX675MX card of GK104 and I'm looking forward to a K4000m card with the same CUDA cores.

Though some players have announced their successful soft-adjustments from 675MX to K4000m by VBIOS or others, I'm still searching for a way to make a long-term stable work.

Anyway, the price of K4000m with varranty is its worst part maybe, and many users are using ES cards or other cards from factories without varranty... What a pity.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: EEVblog on March 19, 2013, 04:15:53 am
Two Hack-A-Days from GNIF in almost as many days!  :-+
What will he hack next?  :-//

Dave.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Omnipotent_Galaxy on March 19, 2013, 04:21:32 am
hmm very interesting...
I wonder if a similar approach can enable disabled cores on x70 cards to make them x80 (660/670 >> 680   or 560/570 >> 580).

Some GTXx70/x60 cards do use the original CUDA core with the GTXx80 cards but there is likely to be some problems with the 'hidden' parts of the core anyway.

This generation of NV cards uses the GK104 core from 576sp cards (mobility ones of K3000m) to 1344sp cards. It is hard to imagine the power supply of GTX660Ti can be enough for GTX680...

Though with great expectation, Kepler is not like Fermi... GTX560Ti 448sp was just a dream maybe?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: jerry507 on March 19, 2013, 04:42:26 am
It wasn't quite clear to me, did you just turned your 690 into a K5000? I understand that you wanted the multiple monitor support for linux, but you said you also bought it for gaming. The K5000 is significantly worse in that respect, is there something about this hack that preserves that?

I suppose it's a question of priorities.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 05:25:45 am
Two Hack-A-Days from GNIF in almost as many days!  :-+
What will he hack next?  :-//

Dave.

Yay, and looks like my topic has blown out our total number of users on-line 5 fold, makes me glad I went to the trouble to tune the site a bit more :).

HaD have missed one thing though, they said the 690 is a K5000 PCB, etc... it isn't, it is a Tesla K10.

As for those that are just spewing trash on HaD without doing a little research... the parts are identical, changing the Device ID just makes the binary blob advertise the additional features to the system, and enables them. It does NOT affect the clock speeds, and will not make the card faster for general day to day work unless you are using the specialised software that takes advantage of these 'professional' features. Changing the ID does not affect the clock speeds as they are configured by the BIOS which we are not touching.

And stock, the GTX690 is clocked FASTER then the K5000 and the Tesla K10, so you are getting a faster card in comparison, you are not making the GTX690 faster.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: HLA-27b on March 19, 2013, 12:50:48 pm
Quote
14:45    (Read 54112 times)
14:46    (Read 54322 times)
3896 Guests are viewing this topic

0.0
I think you've just made the server impervious to the notorious internet_kiss_of_death !!
 :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: cloudscapes on March 19, 2013, 12:53:17 pm
hack-a-day: the best way to instantly blow your bandwidth limit if you're using a smaller provider.  ;D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 12:54:41 pm
Quote
14:45    (Read 54112 times)
14:46    (Read 54322 times)
3896 Guests are viewing this topic

0.0
I think you've just made the server impervious to the notorious internet_kiss_of_death !!
 :-+

That was the idea :). For those that are interested, this thread has generated 3,316,841 hits to this thread as of writing this post. We peaked out at 5x the highest ever concurrent users on the forums and only saw a peak server load of 0.8 out of 8.0. Just goes to show what a properly configured server with Nginx is capable of :).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: BravoV on March 19, 2013, 01:00:02 pm
Just look at the number of "Most online today" and "'Most online ever" at the bottom of this forum front page , they are equal.  ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 01:01:27 pm
Just look at the number of "Most online today" and "'Most online ever" at the bottom of this forum front page , they are equal.  ;)

I am eager to see the daily stats for today, just waiting for them to get generated.

Edit: I wonder if we will hit 100K reads, has to be some kind of server record :).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: BravoV on March 19, 2013, 01:08:39 pm
The current forum stat page shows that this thread is on rank #8 in Top Ten Topic (by views), will it overthrone the legendary tinhead's "Hantek - Tekway - DSO hack - get 200MHz bw for free" thread ?  :o
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 19, 2013, 01:17:26 pm
gnif: congrats on modifying the card, but do you think you can make both GPU cores K5000 too?
I am interested in this in Windows, would be great if you or somebody else would successfully modify the GTX 680 card :)

In the past I was always changing Geforce to Quadro - until last generation when it was possible with "softquadro" technique using RivaTuner (forum.guru3d.com), because of performance in AutoCAD/3DS Max, nowadays the performance in these applications is almost equal for both the geforce and quadro models, but additional features available in the driver for Quadro models are always very interesting...

Looking forward to seeing some development in this topic
Cheers!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 01:19:49 pm
gnif: congrats on modifying the card, but do you think you can make both GPU cores K5000 too?
I am interested in this in Windows, would be great if you or somebody else would successfully modify the GTX 680 card :)

In the past I was always changing Geforce to Quadro - until last generation when it was possible with "softquadro" technique using RivaTuner (forum.guru3d.com), because of performance in AutoCAD/3DS Max, nowadays the performance in these applications is almost equal for both the geforce and quadro models, but additional features available in the driver for Quadro models are always very interesting...

Looking forward to seeing some development in this topic
Cheers!

Neo,

The only thing preventing me from doing this to the other GPU is the risk of killing my card, see the risk was minimal for the initial hack as the layout of the board hinted at where the straps are, but there is no layout hints for GPU1. If someone was to donate one I would be willing to track down the straps for GPU1 also.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 19, 2013, 01:26:47 pm
Unfortunately at the moment I am not able to donate the card :)
But I can donate up to $50, maybe you could collect the money, we just need other 19 people willing to donate $50...
Or for starters - a GTX 680 for about half the price - only 9 people... :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 01:28:53 pm
Unfortunately at the moment I am not able to donate the card :)
But I can donate up to $50, maybe you could collect the money, we just need other 19 people willing to donate $50...
Or for starters - a GTX 680 for about half the price - only 9 people... :)

If there is enough people willing to do this I will sort out a way to donate. A 680 can be modded also but it will not help with the 690 as the layout on the PCB is very different to accommodate the 2nd GPU.

That said I would be willing to track down straps for any of the GTX 670 and upwards cards if I had them also. Cards based on the NVidia reference design are the best for this as they are more common across brands, the GTX690 I have here is pretty much exactly the reference card that NVidia released.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 19, 2013, 01:31:22 pm
OK, let me know :) Paypal is no problem for me...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 01:41:11 pm
OK, let me know :) Paypal is no problem for me...

Ok, I have been contacted out of band by a few others who have been keen to donate (that was fast), so here is the link:

https://sourceforge.net/donate/?user_id=2785077

I will also update the initial post with this information.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 19, 2013, 01:45:17 pm
Neo_Moucha: Donate: done!  ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 01:47:57 pm
Neo_Moucha: Donate: done!  ;)

Thank you very much :). If the funds can be raised to get the card, I will offer to mod cards of anyone who donates $50 or more once the straps can be identified, you will just have to cover the cost of shipping the card to AU and Back.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 19, 2013, 01:50:17 pm
Great!  :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: HLA-27b on March 19, 2013, 02:05:02 pm
This promises to be very interesting. I'm gonna get me some popcorn.

Gnif, anything you do will help move us toward better open source Linux drivers and farther away from the closed source binary blobs.

I think what you discovered is the exact reason why those bastards won't release anything in the open.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 02:08:14 pm
This promises to be very interesting. I'm gonna get me some popcorn.

Gnif, anything you do will help move us toward better open source Linux drivers and farther away from the closed source binary blobs.

I think what you discovered is the exact reason why those bastards won't release anything in the open.

Possibly, I have been thinking on how they could prevent this in the future and there is some methods they could use, but I will not mention them here simply because I do not want to feed them information :). Needless to say though, if they use them, then the next generation of cards will be impossible to mod without resorting to hacking the binary drivers, which without a doubt encroaches on leagallity issues.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: HLA-27b on March 19, 2013, 02:24:58 pm
Quote
Possibly, I have been thinking on how they could prevent this in the future and there is some methods they could use, but I will not mention them here simply because I do not want to feed them information :). Needless to say though, if they use them, then the next generation of cards will be impossible to mod without resorting to hacking the binary drivers, which without a doubt encroaches on leagallity issues.

Same as jailbreaking a phone I guess...
Anyway, they could have played nicely with Linux from the beginning, but no....

edit: can't spell
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 02:30:40 pm
Quote
Possibly, I have been thinking on how they could prevent this in the future and there is some methods they could use, but I will not mention them here simply because I do not want to feed them information :). Needless to say though, if they use them, then the next generation of cards will be impossible to mod without resorting to hacking the binary drivers, which without a doubt encroaches on leagallity issues.

Same as jailbreking a phone I guess...
Anyway, they could have played nicely with Linux from the beginning, but no....

Yeah, I hate big companies that think that all Linux users are no money burnouts that like to hack things. One day they are going to realise that Linux is attracting all the professional programmers and engineers, and is very fast pulling general users away from windows and mac, especially with the recent move by Steam to release for Linux now due to the crappy APIs in Windows 8.

By not supporting the Linux users, because there is such a high percentage of engineers/developers using it, when things don't work the way they should... out comes the reverse engineering tools and all that R&D they spent on securing their product goes out the window. I wonder if they look at projects like Nouveau and realise that these open drivers will eventually be able to ignore the device ID and enable the professional features regardless?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: tony on March 19, 2013, 06:23:54 pm
Have you looked at the front of the PCB? http://i.imgur.com/WJZqGyl.jpg (http://i.imgur.com/WJZqGyl.jpg)

The same 8-pin soic that is under the resistors you changed is on the lower-right of the other GPU and surrounded by a few resistors and unpopulated spots. It looks pretty promising to me.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Zibri on March 19, 2013, 06:36:54 pm
Do you see the straps here, anywhere?

http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg (http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg)

I wonder what a GTX580 can become :) (if anything useful)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 08:28:59 pm
Have you looked at the front of the PCB? http://i.imgur.com/WJZqGyl.jpg (http://i.imgur.com/WJZqGyl.jpg)

The same 8-pin soic that is under the resistors you changed is on the lower-right of the other GPU and surrounded by a few resistors and unpopulated spots. It looks pretty promising to me.

Agreed, but as stated, this could be completely unrelated to it, it could be controlling voltage and modding could potentially kill the GPU.

Do you see the straps here, anywhere?

http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg (http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg)

I wonder what a GTX580 can become :) (if anything useful)

Nothing stands out, they may be on the front of the card.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 19, 2013, 08:54:03 pm
Do you see the straps here, anywhere?

http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg (http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg)

I wonder what a GTX580 can become :) (if anything useful)

I don't think there is neither a Quadro nor a Tesla card equivalent for any GF110 GPU card
see http://en.wikipedia.org/wiki/Nvidia_Quadro (http://en.wikipedia.org/wiki/Nvidia_Quadro) and http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units (http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Zibri on March 19, 2013, 09:53:08 pm
Do you see the straps here, anywhere?

http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg (http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg)

I wonder what a GTX580 can become :) (if anything useful)

Nothing stands out, they may be on the front of the card.

http://www.techpowerup.com/reviews/NVIDIA/GeForce_GTX_580/images/front_full.jpg (http://www.techpowerup.com/reviews/NVIDIA/GeForce_GTX_580/images/front_full.jpg)

Oh, by the way, hats off for your findings so far!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 10:02:23 pm
Do you see the straps here, anywhere?

http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg (http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg)

I wonder what a GTX580 can become :) (if anything useful)

Nothing stands out, they may be on the front of the card.

http://www.techpowerup.com/reviews/NVIDIA/GeForce_GTX_580/images/front_full.jpg (http://www.techpowerup.com/reviews/NVIDIA/GeForce_GTX_580/images/front_full.jpg)

Oh, by the way, hats off for your findings so far!

Thanks,

I still can not see anything immediately obvious, and I doubt there will be anything as it seems that Neo_Moucha is correct, there was never a Quadro GF110 card.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: mamalala on March 19, 2013, 11:04:27 pm
Yeah, I hate big companies that think that all Linux users are no money burnouts that like to hack things. One day they are going to realise that Linux is attracting all the professional programmers and engineers, and is very fast pulling general users away from windows and mac, especially with the recent move by Steam to release for Linux now due to the crappy APIs in Windows 8.

Funny thing is that if you look at the internet in general, Linux has already won the game. On the desktop it is still a long way to go, but it is getting there. My guess is that the mobile market will give the desktop quite a boost. Android is one thing, but then we also have the QT library, which is cross-plattform and gaining quite some traction.

Then there is the movement towards open formats in general. Stuff like Amazon deleting/denying-access-to eBooks that customers bought makes them more aware of the issues involved. Also, look at all these set-top-boxes and "intelligent" TV's using Linux that are popping up. All that propietary DRM crap is now showing it's true face to those who have these things, giving them more incentive to favour open formats.

That said, my first Linux was Yggdrasil, and that is now 20 years ago. Never looked back! Sure, i still have a Windows, but it is a Win 2000 running in a VirtualBox. And that will go soon as well, since MPLab X is now sufficiently usable on Linux (used the VM only for old MPLab stuff i do/did for customers).

Too bad that i have no use for your hack, since i'm simply not using that line of cards. I am not gaming, my focus is on desktop stuff, and for that my old card does just fine (dual-head, of course).

Anyways, great stuff you are doing here, keep it up!

Greetings,

Chris
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: decaf on March 19, 2013, 11:11:07 pm
Is it possible to do this with a kernel hack? By just changing I.D. So system and also nvidia's driver see Quadro I.D. and behave that way.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 19, 2013, 11:48:51 pm
Is it possible to do this with a kernel hack? By just changing I.D. So system and also nvidia's driver see Quadro I.D. and behave that way.

I wish, I tried this first, the binary blob interrogates the card directly ignoring the kernel reported ID
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 20, 2013, 06:48:49 am
Is it possible to do this with a kernel hack? By just changing I.D. So system and also nvidia's driver see Quadro I.D. and behave that way.

this was possible in the past using "softquadro" with RivaTuner software, see forum.guru3d.com
but nvidia blocked it in newer drivers...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 20, 2013, 07:11:28 am
Is it possible to do this with a kernel hack? By just changing I.D. So system and also nvidia's driver see Quadro I.D. and behave that way.

this was possible in the past using "softquadro" with RivaTuner software, see forum.guru3d.com
but nvidia blocked it in newer drivers...

No, it was not modding the kernel, it was overriding the software straps by writing to the register on the GPU directly.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: moisyes on March 20, 2013, 11:41:56 am
Have you looked at the front of the PCB? http://i.imgur.com/WJZqGyl.jpg (http://i.imgur.com/WJZqGyl.jpg)

The same 8-pin soic that is under the resistors you changed is on the lower-right of the other GPU and surrounded by a few resistors and unpopulated spots. It looks pretty promising to me.

Agreed, but as stated, this could be completely unrelated to it, it could be controlling voltage and modding could potentially kill the GPU.

Do you see the straps here, anywhere?

http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg (http://www.ixbt.com/video3/images/gf110/gtx580-scan-back.jpg)

I wonder what a GTX580 can become :) (if anything useful)

Nothing stands out, they may be on the front of the card.
Gnif, would it be possible to follow the tracks from the second processor pins the same way the are routed to the resistors to find them anyway?
I have a GTS 450 too and after searching the web a lot, couldn't find any hardmod information, I think for obivious reasons. Dou you have any information on how I could hack my 2GB GTS 450 into a Quadro one. I use linux and need to hardmod instead to softmod, what have abundant windows information. Thak you in advance.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 20, 2013, 11:47:31 am
this should be theoretically possible - change it into Quadro 2000 but only for older models before 2011? (GF106 based)
I have one real Quadro 2000 in my possession, so I can scan it and we can look for differences...

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ihasmario on March 20, 2013, 01:11:41 pm
Does this apply to lesser cards such as the 670?

Superb work.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: mungewell on March 20, 2013, 04:03:57 pm
Have you looked at the front of the PCB? http://i.imgur.com/WJZqGyl.jpg (http://i.imgur.com/WJZqGyl.jpg)

The same 8-pin soic that is under the resistors you changed is on the lower-right of the other GPU and surrounded by a few resistors and unpopulated spots. It looks pretty promising to me.

Agreed, but as stated, this could be completely unrelated to it, it could be controlling voltage and modding could potentially kill the GPU.

I'd agree that the placement of the links is approximately correct. Given the coding (resistor values) this would be another hint that you've found the right ones.

Given that you've confirmed the resistors which control GPU1, you could X-ray the board to find out the ball that these go into and then trace from that ball on the other GPU - just looking at surface layers might give you enough.

If anyone has a dead card you could even 'heat gun' the GPUs off to buzz out tracking.

Anyway, congratulations on your find. Look forward to using the 670 as a Quadro for some future 3D work under Linux ;-).
Simon
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 20, 2013, 09:47:15 pm
Gnif, would it be possible to follow the tracks from the second processor pins the same way the are routed to the resistors to find them anyway?
I have a GTS 450 too and after searching the web a lot, couldn't find any hardmod information, I think for obivious reasons. Dou you have any information on how I could hack my 2GB GTS 450 into a Quadro one. I use linux and need to hardmod instead to softmod, what have abundant windows information. Thak you in advance.

Not easy, they are a 6+ layer PCB.

Does this apply to lesser cards such as the 670?

Superb work.

Read back through the thread to find the answer.

this should be theoretically possible - change it into Quadro 2000 but only for older models before 2011? (GF106 based)
I have one real Quadro 2000 in my possession, so I can scan it and we can look for differences...

That would be interesting, but it may yield nothing as the resistors may not be moved, but be different values.

I'd agree that the placement of the links is approximately correct. Given the coding (resistor values) this would be another hint that you've found the right ones.

Given that you've confirmed the resistors which control GPU1, you could X-ray the board to find out the ball that these go into and then trace from that ball on the other GPU - just looking at surface layers might give you enough.

If anyone has a dead card you could even 'heat gun' the GPUs off to buzz out tracking.

Anyway, congratulations on your find. Look forward to using the 670 as a Quadro for some future 3D work under Linux ;-).
Simon

Thanks, and yeah, If I had an X-ray machine I would have already done it :). I am able to remove the chip with my SMD workstation, but I do not have a dead card to try it on, and it is not likely to get one as everyone that has a dead card will still have warranty as they are still a pretty recent card.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ihasmario on March 21, 2013, 01:57:58 am
Quote
Read back through the thread to find the answer.

Are you interested in (borrowing) a 670 to test your suspicions you mentioned? I am local enough (WA though), and my 670 struggles to run my screens because they're incapable of NVIDIA mosaic, so it won't be missed too dearly if it goes wrong.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 21, 2013, 02:01:19 am
Quote
Read back through the thread to find the answer.

Are you interested in (borrowing) a 670 to test your suspicions you mentioned? I am local enough (WA though), and my 670 struggles to run my screens because they're incapable of NVIDIA mosaic, so it won't be missed too dearly if it goes wrong.

I would be willing to have a go at the card, but you must understand there is a risk to damaging the card in order to find the correct straps. And if it is possible, what would you want it to become? A 680, Quadro K5000 or Tesla K10?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ihasmario on March 21, 2013, 02:04:56 am
Quote
Read back through the thread to find the answer.

Are you interested in (borrowing) a 670 to test your suspicions you mentioned? I am local enough (WA though), and my 670 struggles to run my screens because they're incapable of NVIDIA mosaic, so it won't be missed too dearly if it goes wrong.

I would be willing to have a go at the card, but you must understand there is a risk to damaging the card in order to find the correct straps. And if it is possible, what would you want it to become? A 680, Quadro K5000 or Tesla K10?

I don't have a preference between quadro or Tesla, because I assume both can perform mosaic. Essentially the problem is that I use T221s, which always identify as two screens, meaning that true multi-monitor support is impossible with NVIDIA consumer cards.

I'll send a PM.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 21, 2013, 02:09:14 am
Quote
Read back through the thread to find the answer.

Are you interested in (borrowing) a 670 to test your suspicions you mentioned? I am local enough (WA though), and my 670 struggles to run my screens because they're incapable of NVIDIA mosaic, so it won't be missed too dearly if it goes wrong.

I would be willing to have a go at the card, but you must understand there is a risk to damaging the card in order to find the correct straps. And if it is possible, what would you want it to become? A 680, Quadro K5000 or Tesla K10?

I don't have a preference between quadro or Tesla, because I assume both can perform mosaic. Essentially the problem is that I use T221s, which always identify as two screens, meaning that true multi-monitor support is impossible with NVIDIA consumer cards.

I'll send a PM.

Wow, that is an impressive LCD, I am still using 3x Dell 2100FP from 2005. As for Mosaic, I have not checked if a Tesla works with it, as the Tesla K10 never had video outputs on it, so not sure. IMO it would be better to go for the Quadro K5000 as it better meets the requirement and less likely a NVidia update would break video output on modded Tesla cards.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amyk on March 21, 2013, 09:56:45 am
Given that you've confirmed the resistors which control GPU1, you could X-ray the board to find out the ball that these go into and then trace from that ball on the other GPU - just looking at surface layers might give you enough.
I was thinking of this too. Someone here has xrayed some boards (https://www.eevblog.com/forum/chat/apollo-saturn-v-computer-logic-reverse-engineered-with-working-model/), maybe you could ask her for advice?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: emoose on March 21, 2013, 08:27:18 pm
Hi there, thanks for this :)

I just wrote up a pretty detailed post about how this thread made me look at my 3GB GTX 660 Ti's BIOS and find it was similar to a GTX 670s (and different to 2GB GTX 660 Ti's), but because I couldn't read the CAPTCHA I pressed request another, which refreshed the page and lost the post  >:(

Basically my 660 Ti's BIOS is almost the same as a 670's: it uses the same board and SKU numbers (20040005) but has extra code inserted which uses the normal 660 Ti board number (20040001, the 670 has similar code at a different address, but uses the 20040005 board number instead), maybe to emulate/downgrade it to a 660?

After seeing this I pressed further and compared 670 2GB vs 670 4GB, and then mapped the values that were different onto my 660 Ti's BIOS (the addresses were a bit different but it wasn't hard to locate them), they matched with the 670 4GB :o

This started to make me think they might have just crippled 4GB 670s into 3GB 660 Ti's, until I opened up my card and found 6x2Gb chips (H5GQ2H24AFR, which is 1.5GB? Maybe I read the datasheet wrong, or the rest were on the back...) There were 2 unfilled spaces though, so I'm guessing it hasn't got the full 4GB :(

The datasheet of those chips mentions that they're 256-bit, but the 660 Ti is reported as only being 192-bit... Maybe flashing the 670 BIOS over would enable the full bandwidth? I'd be willing to try it but I'm worried that the BIOS might do a check against the hardware device ID... I'd guess not since you can change the HW and it still works, but that could be down to a combined Quadro/Tesla/Geforce BIOS... Any info about this would be great!

Also any info about bad flashes would be great too, the only things I can find about them are from BIOS modders, not crossflashing :-\ I'm scared that the wrong RAM config/HW device ID/other stupid check might throw off the card from even being detected in nvflash...

If anyone wants to look further:

660 Ti 3GB BIOS: http://www.techpowerup.com/vgabios/127140/EVGA.GTX660Ti.3072.120806.html (http://www.techpowerup.com/vgabios/127140/EVGA.GTX660Ti.3072.120806.html)
660 Ti 2GB BIOS: http://www.techpowerup.com/vgabios/127242/EVGA.GTX660Ti.2048.120910.html (http://www.techpowerup.com/vgabios/127242/EVGA.GTX660Ti.2048.120910.html)

670 2GB BIOS: http://www.techpowerup.com/vgabios/125688/EVGA.GTX670.2048.120807.html (http://www.techpowerup.com/vgabios/125688/EVGA.GTX670.2048.120807.html)
670 4GB BIOS: http://www.techpowerup.com/vgabios/126722/EVGA.GTX670.4096.120712.html (http://www.techpowerup.com/vgabios/126722/EVGA.GTX670.4096.120712.html)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 21, 2013, 09:07:33 pm
Hi there, thanks for this :)

I just wrote up a pretty detailed post about how this thread made me look at my 3GB GTX 660 Ti's BIOS and find it was similar to a GTX 670s (and different to 2GB GTX 660 Ti's), but because I couldn't read the CAPTCHA I pressed request another, which refreshed the page and lost the post  >:(

Basically my 660 Ti's BIOS is almost the same as a 670's: it uses the same board and SKU numbers (20040005) but has extra code inserted which uses the normal 660 Ti board number (20040001, the 670 has similar code at a different address, but uses the 20040005 board number instead), maybe to emulate/downgrade it to a 660?

After seeing this I pressed further and compared 670 2GB vs 670 4GB, and then mapped the values that were different onto my 660 Ti's BIOS (the addresses were a bit different but it wasn't hard to locate them), they matched with the 670 4GB :o

This started to make me think they might have just crippled 4GB 670s into 3GB 660 Ti's, until I opened up my card and found 6x2Gb chips (H5GQ2H24AFR, which is 1.5GB? Maybe I read the datasheet wrong, or the rest were on the back...) There were 2 unfilled spaces though, so I'm guessing it hasn't got the full 4GB :(

The datasheet of those chips mentions that they're 256-bit, but the 660 Ti is reported as only being 192-bit... Maybe flashing the 670 BIOS over would enable the full bandwidth? I'd be willing to try it but I'm worried that the BIOS might do a check against the hardware device ID... I'd guess not since you can change the HW and it still works, but that could be down to a combined Quadro/Tesla/Geforce BIOS... Any info about this would be great!

Also any info about bad flashes would be great too, the only things I can find about them are from BIOS modders, not crossflashing :-\ I'm scared that the wrong RAM config/HW device ID/other stupid check might throw off the card from even being detected in nvflash...

If anyone wants to look further:

660 Ti 3GB BIOS: http://www.techpowerup.com/vgabios/127140/EVGA.GTX660Ti.3072.120806.html (http://www.techpowerup.com/vgabios/127140/EVGA.GTX660Ti.3072.120806.html)
660 Ti 2GB BIOS: http://www.techpowerup.com/vgabios/127242/EVGA.GTX660Ti.2048.120910.html (http://www.techpowerup.com/vgabios/127242/EVGA.GTX660Ti.2048.120910.html)

670 2GB BIOS: http://www.techpowerup.com/vgabios/125688/EVGA.GTX670.2048.120807.html (http://www.techpowerup.com/vgabios/125688/EVGA.GTX670.2048.120807.html)
670 4GB BIOS: http://www.techpowerup.com/vgabios/126722/EVGA.GTX670.4096.120712.html (http://www.techpowerup.com/vgabios/126722/EVGA.GTX670.4096.120712.html)

No worries :). I do not think that the ram configuration is stored in the BIOS at all as it is needed to be known before the GPU even reads the BIOS from the EEPROM. In earlier versions it was based on the hard straps, I do not see any reason why they would have changed this.

As for the RAM size, from what I can see, that module is 2Gb which is 0.25GB per chip * 6 = 1.5GB total. This is very odd unless I am also reading it wrong if you say that the card should have 3GB of RAM. Can you have a real close look at the card to be doubly sure that the part number you provided is correct? Also, you did count the chips on both sides of the PCB?

As for seeing cards with less ram accessible then is physically installed, I highly doubt this would ever occur, the cost saving to the mfg is too large to just disable/hide/waste the additional RAM.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: emoose on March 21, 2013, 10:01:16 pm
No worries :). I do not think that the ram configuration is stored in the BIOS at all as it is needed to be known before the GPU even reads the BIOS from the EEPROM. In earlier versions it was based on the hard straps, I do not see any reason why they would have changed this.

Well that's good news then :D, I was scared of flashing the 4GB BIOS in case it messed up because of the missing 1GB, and the 2GB one had me scared because of some different values in spots that matched between the 3GB 660 and 4GB 670, if that's true then the 4GB one is sounding even better :)

As for the RAM size, from what I can see, that module is 2Gb which is 0.25GB per chip * 6 = 1.5GB total. This is very odd unless I am also reading it wrong if you say that the card should have 3GB of RAM. Can you have a real close look at the card to be doubly sure that the part number you provided is correct? Also, you did count the chips on both sides of the PCB?

I took some pictures of the chips while I had it open:
http://imgur.com/FrJ5tJr (http://imgur.com/FrJ5tJr)
http://imgur.com/VrQhuB8 (http://imgur.com/VrQhuB8)
Haven't checked the other side yet because of some metal grille covering it, I can see some sort of thermal paste coming through the holes of it though. I'll take it out later and have a check for definite.

As for seeing cards with less ram accessible then is physically installed, I highly doubt this would ever occur, the cost saving to the mfg is too large to just disable/hide/waste the additional RAM.
Ah yeah that's true, probably should have thought of that before I took it apart ;D

Think I might wait and buy another 3GB 660 Ti when I get money, don't really want to go without if it messed up :-\
If you get hold of a 670 can you note down the resistors? Might come in handy if the BIOS does some sort of check.
Edit: nevermind, just saw that it would be 5K and 10K, bit slow today :palm:
I'll pull the card out and take a peek under the grille now

Edit2: Yep, the other 6 were there, along with another 2 unfilled spaces :( Oh well, heres some pictures:
http://imgur.com/a/TolyJ#8 (http://imgur.com/a/TolyJ#8)
Now check out
http://images.anandtech.com/doci/5818/GeForce_GTX_670_B-1.jpg (http://images.anandtech.com/doci/5818/GeForce_GTX_670_B-1.jpg)
Look similar?  ;D
This is a normal 2GB 660 Ti (best pic I could find): http://rwlabs.com/images/articles/evga/660ti_superclock/08.JPG (http://rwlabs.com/images/articles/evga/660ti_superclock/08.JPG)
Seems like this board might have a good chance :D

Edit3: Looking around led me to this spot for the resistors:
http://imgur.com/cOZg9PM (http://imgur.com/cOZg9PM)
Which seems to have a different config to the 670: http://www.ixbt.com/video3/images/ref/gtx670-scan-back.jpg (http://www.ixbt.com/video3/images/ref/gtx670-scan-back.jpg)
I admit I'm no good when it comes to hardware though, so I'm probably wrong about this... Don't really have any idea how I'd find out where they are, this was just me checking for similarity :-[

Edit4: Remembered you saying about when it's pulled in a different direction it's a different set of values...
http://imgur.com/8SKKD1w (http://imgur.com/8SKKD1w)
90% sure this is the spot now, hope you can tell us more :D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: nhp12345 on March 22, 2013, 03:40:40 am
Hi there,
Nice job gnif  8)
Could you show me your modified card`s benchmark results with 3DS Max, 3DMark... or some game benchmarks?!  :-DMM I really want to see how it performs.
Thanks a lot and good luck in your further tweaking!  :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 22, 2013, 03:43:46 am
Hi there,
Nice job gnif  8)
Could you show me your modified card`s benchmark results with 3DS Max, 3DMark... or some game benchmarks?!  :-DMM I really want to see how it performs.
Thanks a lot and good luck in your further tweaking!  :-+

I would love to when I get some more time. The only place you may see an improvement in performance is CUDA stuff as only one core has been modified. Once the other GPU is modified the results will be much more interesting.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amyk on March 22, 2013, 06:53:43 am
Edit4: Remembered you saying about when it's pulled in a different direction it's a different set of values...
http://imgur.com/8SKKD1w (http://imgur.com/8SKKD1w)
90% sure this is the spot now, hope you can tell us more :D
Either by coincidence or just reuse/modify of an existing PCB, the ID resistors seem to be always next to one of the heatsink mounting holes.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 22, 2013, 06:59:15 am
Edit4: Remembered you saying about when it's pulled in a different direction it's a different set of values...
http://imgur.com/8SKKD1w (http://imgur.com/8SKKD1w)
90% sure this is the spot now, hope you can tell us more :D
Either by coincidence or just reuse/modify of an existing PCB, the ID resistors seem to be always next to one of the heatsink mounting holes.

Could be but I doubt it, when pulling high, the value starts at 8, not 9, both cards should in theory have the resistor in the same location, just a different value. It is more likely to do with the amount of RAM installed or some other configurable feature of the GPU.

Good spotting though, this resistor would now be one of my last to test if the others did not bear any results as it seems less likely to be the one for the device ID strapping.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: AlphaC on March 23, 2013, 12:26:01 am
gnif, you're awesome  :)

I have a few questions though.

Does this allow the modded card to get full performance of a Quadro in workstation applications? If yes, have you tried it on specviewperf11 and speccapc? (http://www.spec.org/benchmarks.html (http://www.spec.org/benchmarks.html))

A GK104 GTX 680 4GB is the same as a K5000  ; GK107 GTX 650 2GB is the same as the K2000. The K4000 is iffy, the GK106 GTX 650 Ti /Boost has the same CUDA Cores though it doesn't have 3GB VRAM. I believe the Boost version is the direct correlation since it has 192-bit memory bus, but it's not out yet.

GeForce GTX 650 Ti    0x11C3 http://www.techpowerup.com/gpudb/2059/NVIDIA_GeForce_GTX_650_Ti_Boost.html (http://www.techpowerup.com/gpudb/2059/NVIDIA_GeForce_GTX_650_Ti_Boost.html)
GeForce GTX 650 Ti    0x11C6http://www.techpowerup.com/gpudb/1188/NVIDIA_GeForce_GTX_650_Ti.html (http://www.techpowerup.com/gpudb/1188/NVIDIA_GeForce_GTX_650_Ti.html)
vs
Quadro K4000    0x11FA http://www.techpowerup.com/gpudb/1841/NVIDIA_Quadro_K4000.html (http://www.techpowerup.com/gpudb/1841/NVIDIA_Quadro_K4000.html)

GeForce GTX 650    0x0FC6 http://www.techpowerup.com/gpudb/894/NVIDIA_GeForce_GTX_650.html (http://www.techpowerup.com/gpudb/894/NVIDIA_GeForce_GTX_650.html)
vs
Quadro K2000    0x0FFE http://www.techpowerup.com/gpudb/1838/NVIDIA_Quadro_K2000.html (http://www.techpowerup.com/gpudb/1838/NVIDIA_Quadro_K2000.html)
or
Quadro K2000D    0x0FF9 http://www.techpowerup.com/gpudb/2021/NVIDIA_Quadro_K2000D.html (http://www.techpowerup.com/gpudb/2021/NVIDIA_Quadro_K2000D.html)


From NVIDIA's Linux Drivers, http://www.nvidia.com/object/linux-display-amd64-310.40-driver.html (http://www.nvidia.com/object/linux-display-amd64-310.40-driver.html)
http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/index.html (http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/index.html) ; http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/supportedchips.html (http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/supportedchips.html)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 23, 2013, 02:42:16 am
gnif, you're awesome  :)

I have a few questions though.

Does this allow the modded card to get full performance of a Quadro in workstation applications? If yes, have you tried it on specviewperf11 and speccapc? (http://www.spec.org/benchmarks.html (http://www.spec.org/benchmarks.html))

A GK104 GTX 680 4GB is the same as a K5000  ; GK107 GTX 650 2GB is the same as the K2000. The K4000 is iffy, the GK106 GTX 650 Ti /Boost has the same CUDA Cores though it doesn't have 3GB VRAM. I believe the Boost version is the direct correlation since it has 192-bit memory bus, but it's not out yet.

GeForce GTX 650 Ti    0x11C3 http://www.techpowerup.com/gpudb/2059/NVIDIA_GeForce_GTX_650_Ti_Boost.html (http://www.techpowerup.com/gpudb/2059/NVIDIA_GeForce_GTX_650_Ti_Boost.html)
GeForce GTX 650 Ti    0x11C6http://www.techpowerup.com/gpudb/1188/NVIDIA_GeForce_GTX_650_Ti.html (http://www.techpowerup.com/gpudb/1188/NVIDIA_GeForce_GTX_650_Ti.html)
vs
Quadro K4000    0x11FA http://www.techpowerup.com/gpudb/1841/NVIDIA_Quadro_K4000.html (http://www.techpowerup.com/gpudb/1841/NVIDIA_Quadro_K4000.html)

GeForce GTX 650    0x0FC6 http://www.techpowerup.com/gpudb/894/NVIDIA_GeForce_GTX_650.html (http://www.techpowerup.com/gpudb/894/NVIDIA_GeForce_GTX_650.html)
vs
Quadro K2000    0x0FFE http://www.techpowerup.com/gpudb/1838/NVIDIA_Quadro_K2000.html (http://www.techpowerup.com/gpudb/1838/NVIDIA_Quadro_K2000.html)
or
Quadro K2000D    0x0FF9 http://www.techpowerup.com/gpudb/2021/NVIDIA_Quadro_K2000D.html (http://www.techpowerup.com/gpudb/2021/NVIDIA_Quadro_K2000D.html)


From NVIDIA's Linux Drivers, http://www.nvidia.com/object/linux-display-amd64-310.40-driver.html (http://www.nvidia.com/object/linux-display-amd64-310.40-driver.html)
http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/index.html (http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/index.html) ; http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/supportedchips.html (http://us.download.nvidia.com/XFree86/Linux-x86_64/310.40/README/supportedchips.html)

Thanks :).

At the moment since only GPU2 can be modded, benchmarking apps like these wont help any since you need to have the Quadro as the primary card. I do know however that in the GTX4xx series that the conversion using the BIOS mod to change the PCI Device ID did indeed give an enormous performance gain. Until I get either a GTX680 or another GTX690 to work on and find the straps on, there is little more I can do. As soon as the funds have been raised and I can find the straps for GPU1 I will do a heap of benchmarking and post all the results on these forums.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: olsenn on March 24, 2013, 02:48:41 pm
I just discovered that this post is being covered on Tomshardware, haha: http://www.tomshardware.com/news/Nvidia-GTX-690-Quadro-K5000,21656.html (http://www.tomshardware.com/news/Nvidia-GTX-690-Quadro-K5000,21656.html)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 24, 2013, 03:23:29 pm
gnif,

Truly exemplary work!

Would you please post your card's brand and full model # as obviously not all cards are based on the reference design?

I'd also like other people to post their brand/model #s as well if they've successfully done a similar mod because those of us who might be looking at the mod need to know what exactly to look for.

Thanks.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 24, 2013, 10:18:06 pm
I just discovered that this post is being covered on Tomshardware, haha: http://www.tomshardware.com/news/Nvidia-GTX-690-Quadro-K5000,21656.html (http://www.tomshardware.com/news/Nvidia-GTX-690-Quadro-K5000,21656.html)

Awesome! A little annoyed though that they did not link to this thread.
Edit: Hats off to TomsHardwareGuide for updating the article promptly with this information.

Would you please post your card's brand and full model # as obviously not all cards are based on the reference design?

It is the EVGA GeForce GTX 690 (04G-P4-2690-KR).

does anyone know what would a GTX660 TI mod into? or if its even modable?

Please read through the thread for the answer, unless someone donates one to the cause we will never know.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 24, 2013, 11:57:32 pm
does anyone know what would a GTX660 TI mod into? or if its even modable?

GTX660 Ti is based on GK104 so *possibly* a Quadro K5000 or Tesla K10 as both share the same chip as GTX.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: bdx on March 25, 2013, 12:37:00 am
Gnif,
I'v been keeping up with this thread...I ran across this while researching how I might pass-through my k20 or 660 ti(s) to a virtual machine using esxi 5.1 and horizon view 5.2. I will donate a gtx 660 ti to the cause. How can I get this to you?

bdx
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 12:56:48 am
I ran across this while researching how I might pass-through my k20 or 660 ti(s) to a virtual machine using esxi 5.1 and horizon view 5.2.

I know it's off topic but I am also interested in passing hardware directly to the VMs. You probably know this already but if not, in order to do it you need to have a vt-d capable CPU and motherboard as well as BIOS support enabled.

Here's a thread of interest http://forums.mydigitallife.info/threads/33730-VT-d-enabled-motherboards-and-CPUs-for-Paravirtualization (http://forums.mydigitallife.info/threads/33730-VT-d-enabled-motherboards-and-CPUs-for-Paravirtualization)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: bdx on March 25, 2013, 01:34:49 am
Amigo-
Thanks for the heads up....
I have been attempting this type of configuration for a year+ now. I've had success passing through ATI cards. Concerning Nvidia, I have had success (though it is a true pain) by following the methods described here http://communities.vmware.com/message/2036345. (http://communities.vmware.com/message/2036345.)
I am currently trying to configure Horizon View 5.2 for vDGA using Nvidia cards.
If you wish to discuss this further please contact me privately per topic of this thread.
Thanks
bdx
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 25, 2013, 02:18:42 am
Gnif,
I'v been keeping up with this thread...I ran across this while researching how I might pass-through my k20 or 660 ti(s) to a virtual machine using esxi 5.1 and horizon view 5.2. I will donate a gtx 660 ti to the cause. How can I get this to you?

bdx

Hi bdx, thanks for the vote of support, I will PM you details:

I ran across this while researching how I might pass-through my k20 or 660 ti(s) to a virtual machine using esxi 5.1 and horizon view 5.2.

I know it's off topic but I am also interested in passing hardware directly to the VMs. You probably know this already but if not, in order to do it you need to have a vt-d capable CPU and motherboard as well as BIOS support enabled.

Here's a thread of interest http://forums.mydigitallife.info/threads/33730-VT-d-enabled-motherboards-and-CPUs-for-Paravirtualization (http://forums.mydigitallife.info/threads/33730-VT-d-enabled-motherboards-and-CPUs-for-Paravirtualization)

I have done this with Xen, but like amigo, never with NVidia, only ATI. Have a look here: http://wiki.xen.org/wiki/Xen_PCI_Passthrough. (http://wiki.xen.org/wiki/Xen_PCI_Passthrough.) Otherwise please create a new thread as this is off topic here (may be offtopic to this entire forum as this forum is Electronics related).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 25, 2013, 08:10:07 am
Successfully modifed:
Zotac GT640 2G to NVIDIA GRID K1 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332)
Palit GTX 650 2G to NVIDIA GRID K1 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg235610/#msg235610)
SPARKLE GeForce GTS 450  1GB to Quadro 2000 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210854/#msg210854)

EVGA GTX670 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798) by blanka (https://www.eevblog.com/forum/index.php?action=profile;u=66164)
EVGA GTX670 good pictures (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg217534/#msg217534) by shlomo.m (https://www.eevblog.com/forum/index.php?action=profile;u=71518)




Hello,

I managed to find the resistors responsible for PCI Id in the graphics card gtx 680 2gb  GV-N680OC-2GD, Device Id: 10DE 1180

Below you can find a list of IDs that I run successfully:
gtx 670, Device Id: 10DE 1189 with 1536 cores.
tesla k10, Device Id: 10DE 118F
quadro k5000, Device Id: 10DE 11BA
vgx grid k2, Device Id: 10DE 11BF
not tested:
gtx770 Device Id 0x1184
gtx660 ti Device Id 0x1183

Also, I succeeded in running the driver on every modification.
My goal was to get the opportunity to do gpu passthough and I achieved it. Only vgx grid k2 and tesla k10 supports this technology. Quadro k5000 works too, but only till I reboot the virtual machine for the 1st time.
I ran gpu passthough using kvm by doing some mouse clicking in the virt-manager. Config of my system is i5-3570, GA-Z77MX-D3H + gpu.
Moreover, I tested the stability on a virtual machine with windows 7 using furmark. Everything works perfectly, the virtual machine can be rebooted as many times as you want without rebooting the host.

Here are a couple of tests:
Tesla on the virtual machine:  file: https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=42263 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=42263)
Tesla on the host: file: https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=42265 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=42265)

NVIDIA Quadro K5000 http://www.ozone3d.net/benchmarks/furmark_score_180.php?id=fe897bb5eef07ca3e8265832340895df (http://www.ozone3d.net/benchmarks/furmark_score_180.php?id=fe897bb5eef07ca3e8265832340895df)
NVIDIA GRID K2 http://www.ozone3d.net/benchmarks/furmark_score_180.php?id=0c875302f22cf53d2d58faad5eb65a1e (http://www.ozone3d.net/benchmarks/furmark_score_180.php?id=0c875302f22cf53d2d58faad5eb65a1e)

and here comes the most exciting  part: the resistors location
(https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=43392;image)

let's consider the example of the modification

Initially device id is 1180
third symbol = 8
4th symbol = 0

1 resistor is responsible for the third symbol. Initially it's 25k on gtx680. tried to replace it with 10k - got A deleting resistor B. Works, but in a weird way :).
2 resistor is responsible for the 4th, symbol 8-f. Tested values: 10k = 9, 15k = A.
3 resistor is responsible for the 4th, symbol 0-7. It is originally 5k on gtx680.
If you use second resistor, third one has to be removed, and vice versa.

Summary
GPU NameResistor 0 / 3th byte Resistor 1 / 3th byte Resistor 2 / 8-f 4th byteResistor 3 / 0-7 4th byte
GTX 660 tinone25knone20k
GTX 670none25k10knone
GTX 680none25knone5k
GTX 770none25knone25k
tesla k10none25k40knone
quadro k500040knone15knone
grid k240knone40knone

upd:
removing resistor 1 may cause random ID changes after reboot :) I will update post after i solve it.
upd April 07, 2013, 07:15:34 AM:
status: testing, works fine, tested about 10 reboots and poweroffs.
upd April 09, 2013, 05:53:00 PM:
works fine, tested many reboots, looks like 40k resistor fixed issue.
April 13, 2013, 07:12:24 AM:
works fine. ;)

upd1 from gamezr2ez
Quote
I was able to successfully modify my card to a Grid K2.

Something that was interesting was I kept getting kernel panics with the 40k resistors. After some experimenting I found a stable solution for this card.

Resistor 0: None
Resistor 1: None
Resistor 2: 100k
Resistor 3: None

My card is an Asus GTX680. I know they build their own PCB layout and my PCB was slightly different than yours (different spacing, same location). I am guessing that may have something to do with it, but I am still a bit confused as to how the resistors directly effect the ID anyway. This was my first time working with SMD components so I may have messed something up, who knows? It works, that is what matters.

Thoughts:
I wonder what happens if we take gtx 670 and modify the id to 680 and the upload 680 BIOS. will it unlock cores?
You may need to compare some other resistances too.
upd: It is imposible due to different names of gk104. 
gtx 680 gk104-400
gtx 670 gk104-325
gtx 660ti gk104-300
I think processor is laser-cutted.
intresting what if someone buy gk104-400 from alibaba(105$) and replace gk104-300 for example ;)

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 25, 2013, 08:25:27 am
Hello,

I managed to find the resistors responsible for PCI Id in the graphics card gtx 680 2gb, Device Id: 10DE 1180

Great work! That is one less card to try to identify :).

I wonder what happens if we take gtx 670 and modify the id to 680 and the upload 680 BIOS. will it unlock cores?

A user is kindly donating one to the cause to see what we can do with it.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 01:46:11 pm
verybigbadboy,

Great job. Please tell us the brand and exact model of the card?

I know I sound like I'm repeating myself, but there's a reason for this. Some manufacturers use reference NV designs in their boards, while others change them.

When they use reference design, we can then pinpoint exactly the location of resistors to change across multiple boards because they are all based on the same reference. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 02:08:47 pm
Further to my post, let me show you what I mean:

(http://i.imgur.com/aZ9hz63.jpg)

I matched your photo composite. Can you guess what board this comes from? :)

Inno3D GTX 670.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 02:39:11 pm
Ok well why not take it all the way...

(http://i.imgur.com/ExD8pE1.jpg)

I took the Inno3D board photos and flipped the back side vertically, then matched it to the front side.

I marked the REFERENCE for alignment and then PADS where you can see the vias coming through and connecting to the other side.

This should be self explanatory, if not, basically it shows how those resistors are related to each other, front to back. I guess when they laid the board out for whatever reason they did not put them all on the same side.

I do not have any cards yet to test, but I would postulate that you can make any GK104 series (Kepler) into Quadro or Tesla or VGX. Of course the issue of the GK104 chip's fuses being burnt on GTX cards would prevent exact specification match to Quadro/Tesla/VGX. But something is better than nothing. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ErikTande on March 25, 2013, 07:15:57 pm
I have a GTX 660 Ti that I would be willing to submit as a guinea pig.     If someone with the abilty and desire to attempt this with a GTX 660 Ti card, send me a PM.   I'll ship the card as long as you ship it back :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 07:38:57 pm
I have a GTX 660 Ti that I would be willing to submit as a guinea pig.   Is this something that gnif or someone else could walk me through over skype?

*edit* nevermind, it looks a little too involved for me to handle.  I would need to send the card to someone else.

If someone with the abilty to attempt this wants a card, send me a PM.   I'll ship a 660 Ti as long as you ship it back  :-+

You edited your message while I was preparing an image for you...

If you have a steady hand and decent tools to move the resistors, here's where I think the resistors are on the 660 Ti (of course I could be terribly wrong :) )

Left: Quadro K5000, right: GTX 660 Ti
(http://i.imgur.com/UsHpSG5.jpg)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: emoose on March 25, 2013, 07:51:22 pm
I have a GTX 660 Ti that I would be willing to submit as a guinea pig.   Is this something that gnif or someone else could walk me through over skype?

*edit* nevermind, it looks a little too involved for me to handle.  I would need to send the card to someone else.

If someone with the abilty to attempt this wants a card, send me a PM.   I'll ship a 660 Ti as long as you ship it back  :-+

You edited your message while I was preparing an image for you...

If you have a steady hand and decent tools to move the resistors, here's where I think the resistors are on the 660 Ti (of course I could be terribly wrong :) )

Left: Quadro K5000, right: GTX 660 Ti
(http://i.imgur.com/UsHpSG5.jpg)
Same place that I marked earlier... good to know I wasn't off track  :-+
Now I'm just hoping that the 670 gnif is getting uses the same board  8)

Maybe we should setup a board number -> resistor location table somewhere?
Seems a lot of different cards use the same board, would make it easier for people to see if their card is supported yet.
Board number is pretty easy to find too, most times it's written on the card (like here (http://www.ixbt.com/video3/images/ref/gtx680-scan-back.jpg) it's written as <BOARDNUMBER>.rom)
Another way to get it is looking with GPU-Z, the BIOS version field usually has it (it does for my card at least)

does anyone know what would a GTX660 TI mod into? or if its even modable?
Well it looks like some 660 Ti's share the same board as the 670, so it might be possible to convert them over and get full use of the 256-bit memory interface... But for all we know these 660-on-670 cards might be some sort of binned hardware with 660 firmware put on to "cripple" them into not using the damaged parts :/ I'm thinking it should work though because the RAM chips themselves are 256-bit.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 08:14:32 pm
660 Ti will turn into K5000, because the board designs are exactly the same, except that the K5000 has the full feature chip (1536/128/32 Shaders/TMUs/ROPs) instead of a possibly crippled/damaged version (1344/1112/24 Shaders/TMUs/ROPs).

Perhaps the resistors on the back of the board underneath the GPU set the configuration, but we need a really good photo close-ups of the boards to see the differences. It's a long shot but we got nothing to lose. :)

My guesstimate is that the Device ID resistors are usually located on the back side in-between U504 and U505 for smaller boards (GTX 660, K5000); on the larger boards (GTX 670, 680) they are also around there as well as around U1 and Y1 on the front side.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ErikTande on March 25, 2013, 08:27:03 pm

Perhaps the resistors on the back of the board underneath the GPU set the configuration, but we need a really good photo close-ups of the boards to see the differences. It's a long shot but we got nothing to lose. :)

I'll take pics as soon as I get home from work.  It will be in about 4 hours from now.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: emoose on March 25, 2013, 08:27:12 pm
660 Ti will turn into K5000, because the board designs are exactly the same, except that the K5000 has the full feature chip (1536/128/32 Shaders/TMUs/ROPs) instead of a possibly crippled/damaged version (1344/1112/24 Shaders/TMUs/ROPs).
Hmm, do we know where that limitation exists though? It seems that my 660 Ti's board is the same number as a 670s, which should mean that it uses the same kind of chip. Here's some info I was editing into my other post before I saw yours:


I'm hoping the limit is in the BIOS, so I can just reflash and swap resistors and hey presto a ghetto 670 %-B
Probably not likely but it's worth a shot...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 08:39:40 pm
See that's the thing, unless the board numbers match, most manufacturers design their own GTX 670 boards because they are higher-end items and consumers demand better power supply design and better components.

With regards to getting the missing computing units, that's neither here nor there. The chips (chip die, silicon) used are all the same (cheaper to manufacture) but they could have factory burnt fuses (inside GPUs) that disable computing units; on-board limitations (like resistors); bios restrictions (least likely imho  because it would be a huge "fail", but I could be wrong) or simply be damaged GPUs that did not pass QA for higher boards.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: emoose on March 25, 2013, 09:06:23 pm
See that's the thing, unless the board numbers match, most manufacturers design their own GTX 670 boards because they are higher-end items and consumers demand better power supply design and better components.

With regards to getting the missing computing units, that's neither here nor there. The chips (chip die, silicon) used are all the same (cheaper to manufacture) but they could have factory burnt fuses (inside GPUs) that disable computing units; on-board limitations (like resistors); bios restrictions (least likely imho  because it would be a huge "fail", but I could be wrong) or simply be damaged GPUs that did not pass QA for higher boards.

I'd figured as much, really though I'm not that interested in making the card more powerful, just hoping to get the improved memory bandwidth... The card performs pretty well until it comes to memory-intensive stuff, then it starts to make me wonder why I didn't pay the extra £50 for the 670 :(

I'd like to think that they'd handle the memory controller stuff in the BIOS, can't really see them making it dependent on e-fuses when it's all down to the number of address lanes on the board, why make it take the time to check some fuses when you know exactly how many lanes the hardware supports (or is crippled to)? That'd just be wasting space in the BIOS...

At least that's how I'd think it out, but then again I'm not a for-profit company... Only way to find out is experimenting  O0 (or if any insiders from NVIDIA feel like helping out, go ahead :P)

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 09:17:40 pm
I think the most interesting bits are making these cards support hardware virtualization which brings the whole field down to the Earth, for all hobbyists who do not have $10k+ to spend on Nvidia VGX solutions. :)

And why should it be any other way: true innovation and progress in the last 100 years had always come from individual people (a lone nut in a garage) and not from some huge research facility attached to some corporation. The latter generally appropriate (steal? :) ) innovation, make improvements, then patent it and basically lock it away with high prices from the people it was originally intended for.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: winjet1 on March 25, 2013, 09:48:00 pm
I would be extremely interested to learn how verybigbadboy was able to convert his 680 into a VGX/GRID K1 (i.e. what to solder, what resistors to use and where to get them, etc).  That would open up a lot of things to the home-virualization crowd.

I'd even give a little funding for some "idiots guide to turning your 680 into a VGX"

Just sayin.........
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 10:04:47 pm
My 20040005 660Ti's BIOS seems to have code to emulate/disguise/downgrade itself to a 20040001 board internally, possibly to make drivers work properly (although gpu-z still picks up the proper number)

By the way, how do you know that your BIOS is downgrading your card, perhaps you have some pointers to look at?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 25, 2013, 10:07:03 pm
I would be extremely interested to learn how verybigbadboy was able to convert his 680 into a VGX/GRID K1

Just remove resistor 1 and 3 showed on picture in my first post and you will get grid k2

Also now I am trying to modify gts450 to quadro 2000. But I have a problem with getting 4th symbol. I think it is possible to modify almost all nvidia cards which have counterparts. Gts450 have similar way to setup device id.

I think gt200 series can be modified too, I looked at died gt240 and I think I know where are right resistors.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 10:10:19 pm
I would be extremely interested to learn how verybigbadboy was able to convert his 680 into a VGX/GRID K1 (i.e. what to solder, what resistors to use and where to get them, etc).  That would open up a lot of things to the home-virualization crowd.

I'd even give a little funding for some "idiots guide to turning your 680 into a VGX"

Just sayin.........

Both verybigbadboy and me have posted enough information for anyone to mod a card based on the reference designs.

His images referring to locations and values as well as the images I posted of GTX 670 apply to GTX 680 as well, unless you have a different board. But then again you did not specify what brand/model you have?

Surely if you come here you must know where to get SMT components? :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 25, 2013, 10:21:50 pm
yeah...! just registered, only to follow this thread..

first of all, congratulations to gnif and others who are working on this.
as a cad user "with small budget", this thread is very interesting.

second, modding a 680 to a k5000 will be great. i've read verybigbadboy's post, but it's a little bit confusing. i personally don't need k5000 performances, i could go with a k2000 (650) or a k4000 (650 ti).

p.s.:
i can somewhat help with a quadro 600, (it's a fermi, i know, but it can be useful for someone) if someone has a gt430 i can compare the pcbs (i have a pny 430, but it's not reference pcb).

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 10:35:00 pm
yeah...! just registered, only to follow this thread..

second, modding a 680 to a k5000 will be great. i've read verybigbadboy's post, but it's a little bit confusing. i personally don't need k5000 performances, i could go with a k2000 (650) or a k4000 (650 ti).

Welcome aboard.

You can only get K5000, if modded, because K2000 is based on GK107 and not GK104 GPU.

Further more, you will gain access to what I believe are locked-out high-end features of drivers (and/or applications) because your card will physically identify as something else.

If you compare raw specs, K5000 is clocked much lower than GTX 680 and if you choose to flash the BIOS you will probably reduce performance you have now, but perhaps gain more stability. That is one of the selling points of the high-end visualization cards.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: emoose on March 25, 2013, 10:37:06 pm
My 20040005 660Ti's BIOS seems to have code to emulate/disguise/downgrade itself to a 20040001 board internally, possibly to make drivers work properly (although gpu-z still picks up the proper number)

By the way, how do you know that your BIOS is downgrading your card, perhaps you have some pointers to look at?
I'm not 100% about what it's doing, comparing a 670 bios to my 660 Ti's showed that the part of the BIOS where versions/board numbers/SKUs are was almost the same, but lower down in the code there was another reference to the board number which in the 670 BIOS was 20040005 (as expected) but 20040001 on my 660Ti's:

Where it shows the version number/board number/SKU (http://i.imgur.com/H0sKwE8.png)
Where the other reference to the board number is (http://i.imgur.com/SOPQOvZ.png)
(left is 660Ti, right is 670)

I think the second reference might be used for when the driver asks the card what board it is, although I'm not even sure if the driver actually does this  :-\
Still, I find it strange that it'd use the board number for the normal 660Ti when the BIOS itself is meant for the 20040005 model. Makes me think it might be doing more than just masquerading the board number...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 25, 2013, 10:56:30 pm

Welcome aboard.

You can only get K5000, if modded, because K2000 is based on GK107 and not GK104 GPU.

Further more, you will gain access to what I believe are locked-out high-end features of drivers (and/or applications) because your card will physically identify as something else.

If you compare raw specs, K5000 is clocked much lower than GTX 680 and if you choose to flash the BIOS you will probably reduce performance you have now, but perhaps gain more stability. That is one of the selling points of the high-end visualization cards.

hi. thankyou for the reply. i know that "raw specs" are worse on quadro, but i need quadro capability. just for CAD, not other features.

now i use a 580 and a quadro 600. so,no 680 atm.
and the 600 is sometimes slow (but i don't have the money to afford a superior card).

would you kindly explain me why gk107 can't be modded.?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 11:03:51 pm
Where it shows the version number/board number/SKU (http://i.imgur.com/H0sKwE8.png)
Where the other reference to the board number is (http://i.imgur.com/SOPQOvZ.png)
Somehow I am not sure those numbers are actually board number/version, looking at other boards that do not have those numbers.

Have you also checked against an older/newer version of the BIOS if those numbers repeat or are different on the same model line?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 25, 2013, 11:06:06 pm
would you kindly explain me why gk107 can't be modded.?
GK104 GPU is in the GTX 660ti, 670, 680, 690 models.

GK107 GPU is in the GTX 650.

Can't make one turn chip into another. But, you could buy a GTX 650 and *possibly* mod it to K2000, based on this thread findings. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: emoose on March 25, 2013, 11:09:57 pm
Where it shows the version number/board number/SKU (http://i.imgur.com/H0sKwE8.png)
Where the other reference to the board number is (http://i.imgur.com/SOPQOvZ.png)
Somehow I am not sure those numbers are actually board number/version, looking at other boards that do not have those numbers.

Have you also checked against an older/newer version of the BIOS if those numbers repeat or are different on the same model line?
EVGA doesn't like to release BIOS updates :( Maybe because so many of their cards use so many different boards :palm:
Other 660 Ti's use the 20040001 board number in the header, where it is in http://i.imgur.com/H0sKwE8.png (http://i.imgur.com/H0sKwE8.png)

You can see the difference here
Normal 2GB 660Ti: http://www.techpowerup.com/vgabios/127242/EVGA.GTX660Ti.2048.120910.html (http://www.techpowerup.com/vgabios/127242/EVGA.GTX660Ti.2048.120910.html)
20040005 3GB 660Ti: http://www.techpowerup.com/vgabios/127140/EVGA.GTX660Ti.3072.120806.html (http://www.techpowerup.com/vgabios/127140/EVGA.GTX660Ti.3072.120806.html)
4GB 670: http://www.techpowerup.com/vgabios/126722/EVGA.GTX670.4096.120712.html (http://www.techpowerup.com/vgabios/126722/EVGA.GTX670.4096.120712.html)

Edit: theres an extra bit in the header which I forgot to mention, just above http://i.imgur.com/H0sKwE8.png (http://i.imgur.com/H0sKwE8.png)
On 3GB 660Ti/670 it's "3GK104 P2004 SKU 0005 VGA BIOS (HWDIAG)"
On 2GB 660Ti it's "3GK104 P2004 SKU 0001 VGA BIOS (HWDIAG)"

Edit2: Just got some NVFLASH output:
Quote
NVIDIA Firmware Update Utility (Version 5.118)

Adapter: GK1xx                (10DE,1183,3842,3663) H:--:NRM B:01,PCI,D:00,F:00

The display may go *BLANK* on and off for up to 10 seconds during access to the
EEPROM depending on your display adapter and output device.

Identifying EEPROM...
EEPROM ID (C8,4012) : GD GD25Q20 2.7-3.6V 2048Kx1S, page
Reading adapter firmware image...
Image Size            : 182272 bytes
Version               : 80.04.4B.00.60
~CRC32                : 8AB5DABA
OEM String            : NVIDIA
Vendor Name           : NVIDIA Corporation
Product Name          : GK104 Board - 20040005
Product Revision      : Chip Rev
Device Name(s)        : GK1xx
Board ID              : E11D
PCI ID                : 10DE-1183
Subsystem ID          : 3842-3663
Hierarchy ID          : Normal Board
Chip SKU              : 300-0
Project               : 2004-0001
CDP                   : N/A
Build Date            : 07/09/12
Modification Date     : 08/06/12
Sign-On Message       : GK104 P2004 SKU 0005 VGA BIOS (HWDIAG)
Guess we can see where that 20040001 is used: Project: 2004-0001
I got a feeling that's in there for more than just NVFLASH output though...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 25, 2013, 11:29:41 pm
would you kindly explain me why gk107 can't be modded.?
GK104 GPU is in the GTX 660ti, 670, 680, 690 models.

GK107 GPU is in the GTX 650.

Can't make one turn chip into another. But, you could buy a GTX 650 and *possibly* mod it to K2000, based on this thread findings. :)

yes, i know that... read my first post, page #7. :-)
maybe i have been a little confusing, sorry.

i'm trying to compare 650s to k2000/4000...but it's hard to find decent photos.
plus, being a "mechanic" doesn't help. :-)

if i fail, i could save € and go for a 660ti. it will be a castrated k5000, but "something is better than nothing"..
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ErikTande on March 26, 2013, 12:31:07 am
Here's my high rez image of the back of a GeForce GTX 660 Ti:

http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg (http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 26, 2013, 01:08:21 am
Here's my high rez image of the back of a GeForce GTX 660 Ti:

http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg (http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg)

It looks like a standard board for 660 Ti... http://www.ixbt.com/video3/images/ref/gtx660ti-scan-back.jpg (http://www.ixbt.com/video3/images/ref/gtx660ti-scan-back.jpg)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: pigeond on March 26, 2013, 02:10:18 am
Hi gnif and all,

I know it's old, but I'm wondering is it possible to do the same for the GTX460?

I have two GV-N460OC-1GI. I'm a Xen-er and I had been through the pain trying to get them to work with VGA passthrough. I ended up taking the easy way and bought some ATI cards instead. Would be nice to make those GTXs useful again.

I could upload some photos of the card if needed.

Thanks!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 26, 2013, 02:41:40 am
I managed to find the resistors responsible for PCI Id in the graphics card gtx 680 2gb  GV-N680OC-2GD, Device Id: 10DE 1180
I have its 670 sibling, GV-N670OC-2GD. Based on the pictures (attached), it's the same card (except for the resistors, I guess).
Since I'm interested in the same - vSGA - I'd be willing to try modding it.

Below you can find a list of IDs that I run successfully:
gtx 670, Device Id: 10DE 1189 with 1536 cores.
tesla k10, Device Id: 10DE 118F
quadro k5000, Device Id: 10DE 11BA
vgx grid k2, Device Id: 10DE 11BF
Since the K5000 wasn't stable, I'd go with Tesla K10.
In this case just one - 4th - symbol needs to be changed: from 9 to F.
And that means only the second resistor has to be replaced (both, 9 and F are in the 8-F range covered by the second resistor).

2 resistor is responsible for the 4th, symbol 8-f. Tested values: 10k = 9, 15k = A.
3 resistor is responsible for the 4th, symbol 0-7. It is originally 5k on gtx680.
If you use second resistor, third one has to be removed or be 40k, and vice versa.
And here is my question:
Making the 4th symbol an F means 40K resistor (in place of the 10k, a "9" symbol)
But based on the quoted text, that is the same as no resistor, aka see what the 3rd has to say.

Do I over analyse it?

Any comments would be appreciated.


Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 26, 2013, 06:30:31 am
And here is my question:
Making the 4th symbol an F means 40K resistor (in place of the 10k, a "9" symbol)
But based on the quoted text, that is the same as no resistor, aka see what the 3rd has to say.

Do I over analyse it?

Any comments would be appreciated.

I just removed 2 and 3 to get F symbol.

you may also remove them, or you may try to put 40k  "in place of the 10k, a "9" symbol"
I think there is no difference.

Looks like "F" is default value for 4 symbol.
and "B" is default  value for 3 symbol.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: nindza on March 26, 2013, 09:26:31 am
Hi, guys. I'm admiring your work. And since I'm a  complete rookie - what do you think I can do with my gtx 660 2Gb that has a GK106 CPU. Does that mean I can mybe mod it to Quadro K4000, also GK106? Device ID is 10DE-11C0 and Quadro K400 ID is xxxx-11FA. Thanks for your thoughts!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 26, 2013, 10:22:05 am
Hi, guys. I'm admiring your work. And since I'm a  complete rookie - what do you think I can do with my gtx 660 2Gb that has a GK106 CPU. Does that mean I can mybe mod it to Quadro K4000, also GK106? Device ID is 10DE-11C0 and Quadro K400 ID is xxxx-11FA. Thanks for your thoughts!

yes, maybe..
but quadro k4000 is more like 650Ti boost than 660 (same gk106, but different specs).

you can see : http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units (http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units) with nvidia card comparison.
it's very well done.

p.s.: i've seen a 660 pcb, but i couldn't find the "resistor pattern" i've seen in gk104 based card, but i'm a rookie as you. maybe it's in the front http://images.anandtech.com/doci/6276/GTX660PCB.jpg (http://images.anandtech.com/doci/6276/GTX660PCB.jpg) right to the red dot (lower left angle of gpu core)
i think that we have to wait if 660ti -> k5000 works well..
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: nindza on March 26, 2013, 11:06:02 am
Hi, guys. I'm admiring your work. And since I'm a  complete rookie - what do you think I can do with my gtx 660 2Gb that has a GK106 CPU. Does that mean I can mybe mod it to Quadro K4000, also GK106? Device ID is 10DE-11C0 and Quadro K400 ID is xxxx-11FA. Thanks for your thoughts!

yes, maybe..
but quadro k4000 is more like 650Ti boost than 660 (same gk106, but different specs).

you can see : http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units, (http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units,) with nvidia card comparison.
it's very well done.

p.s.: i've seen a 660 pcb, but i couldn't find the "resistor pattern" i've seen in gk104 based card, but i'm a rookie as you. maybe it's in the front http://images.anandtech.com/doci/6276/GTX660PCB.jpg, (http://images.anandtech.com/doci/6276/GTX660PCB.jpg,) right to the red dot (lower left angle of gpu core)
i think that we have to wait if 660ti -> k5000 works well..

Tkank you, yes, we should be patient. I can't seem to open your pic link, could you update it please? tnx
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: moisyes on March 26, 2013, 12:05:34 pm
I would be extremely interested to learn how verybigbadboy was able to convert his 680 into a VGX/GRID K1 (i.e. what to solder, what resistors to use and where to get them, etc).  That would open up a lot of things to the home-virualization crowd.

I'd even give a little funding for some "idiots guide to turning your 680 into a VGX"

Just sayin.........

Both verybigbadboy and me have posted enough information for anyone to mod a card based on the reference designs.

His images referring to locations and values as well as the images I posted of GTX 670 apply to GTX 680 as well, unless you have a different board. But then again you did not specify what brand/model you have?

Surely if you come here you must know where to get SMT components? :)
Would you have a Quadro 2000 image. I own a GTS 450 2GB and I wanto to hardmod it to Quadro. If you help me in it anyway, Tahnk you so much.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 26, 2013, 12:33:37 pm
Hi, guys. I'm admiring your work. And since I'm a  complete rookie - what do you think I can do with my gtx 660 2Gb that has a GK106 CPU. Does that mean I can mybe mod it to Quadro K4000, also GK106? Device ID is 10DE-11C0 and Quadro K400 ID is xxxx-11FA. Thanks for your thoughts!

yes, maybe..
but quadro k4000 is more like 650Ti boost than 660 (same gk106, but different specs).

you can see : http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units, (http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units,) with nvidia card comparison.
it's very well done.

p.s.: i've seen a 660 pcb, but i couldn't find the "resistor pattern" i've seen in gk104 based card, but i'm a rookie as you. maybe it's in the front http://images.anandtech.com/doci/6276/GTX660PCB.jpg, (http://images.anandtech.com/doci/6276/GTX660PCB.jpg,) right to the red dot (lower left angle of gpu core)
i think that we have to wait if 660ti -> k5000 works well..

Tkank you, yes, we should be patient. I can't seem to open your pic link, could you update it please? tnx

link now are ok.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 26, 2013, 01:14:06 pm
Would you have a Quadro 2000 image. I own a GTS 450 2GB and I wanto to hardmod it to Quadro. If you help me in it anyway, Tahnk you so much.
Maybe this?
http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareDescription.jsp?lang=en&cc=us&prodTypeId=0&prodSeriesId=3718668&prodNameId=3718669&swEnvOID=4060&swLang=13&mode=2&swItem=wk-104548-1 (http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareDescription.jsp?lang=en&cc=us&prodTypeId=0&prodSeriesId=3718668&prodNameId=3718669&swEnvOID=4060&swLang=13&mode=2&swItem=wk-104548-1)

Although it seems GTS 450 is a GF106 only in OEM, v2 and v3 are GF116...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 26, 2013, 01:34:52 pm
I just removed 2 and 3 to get F symbol.

you may also remove them, or you may try to put 40k  "in place of the 10k, a "9" symbol"
I think there is no difference.

Looks like "F" is default value for 4 symbol.
and "B" is default  value for 3 symbol.
Thank you, verybigbadboy.

Will start looking for the soldering iron...:)

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on March 26, 2013, 02:20:17 pm
And here is my question:
Making the 4th symbol an F means 40K resistor (in place of the 10k, a "9" symbol)
But based on the quoted text, that is the same as no resistor, aka see what the 3rd has to say.

Do I over analyse it?

Any comments would be appreciated.

I just removed 2 and 3 to get F symbol.

you may also remove them, or you may try to put 40k  "in place of the 10k, a "9" symbol"
I think there is no difference.

Looks like "F" is default value for 4 symbol.
and "B" is default  value for 3 symbol.

Hi,
Thanks for gnif and your  findings.
I would like to build a new work station and I am going to buy 2 GTX 680 and mod one of them to Quadro K5000 and one tesla K10
Before this I would like to confirm the modding as 2 fo them may cost over thousand dollars

For a 680 to K10....ID "1180" to "118F"
There is only one symbol has to be changed and you said only remove resistor 2 and 3 is OK....no change to resistor 1 right?

For a 680 to K5000....ID "1180" to "11BA"
To get the third symbol from "8" to "B"....I need to change the no. 1 resistor to 20K right?
And for the Symbol "0" to A....
Sorry for this one...I don't understand....Forgive my foolishness...Woudl you mind telling me how to do that?

Thanks very much
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: winjet1 on March 26, 2013, 02:29:57 pm
I would be extremely interested to learn how verybigbadboy was able to convert his 680 into a VGX/GRID K1 (i.e. what to solder, what resistors to use and where to get them, etc).  That would open up a lot of things to the home-virualization crowd.

I'd even give a little funding for some "idiots guide to turning your 680 into a VGX"

Just sayin.........

Both verybigbadboy and me have posted enough information for anyone to mod a card based on the reference designs.

His images referring to locations and values as well as the images I posted of GTX 670 apply to GTX 680 as well, unless you have a different board. But then again you did not specify what brand/model you have?

Surely if you come here you must know where to get SMT components? :)


In being completely truthful, modding a graphics card into a virtualized graphics card is what caught my eye.  Aside from basic knowledge all my mental stock is in IT (which is why I asked very basic questions) :)  I am extremely grateful for the instructions thus far.  I'm sure this thread will attract a lot of IT, VMware, and CAD enthusiasts.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 26, 2013, 02:31:21 pm
For a 680 to K10....ID "1180" to "118F"
There is only one symbol has to be changed and you said only remove resistor 2 and 3 is OK....no change to resistor 1 right?

For a 680 to K5000....ID "1180" to "11BA"
To get the third symbol from "8" to "B"....I need to change the no. 1 resistor to 20K right?
And for the Symbol "0" to A....

I believe you need to put a 15K for resistor 2.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 26, 2013, 02:33:22 pm
In being completely truthful, modding a graphics card into a virtualized graphics card is what caught my eye.  Aside from basic knowledge all my mental stock is in IT (which is why I asked very basic questions) :)  I am extremely grateful for the instructions thus far.  I'm sure this thread will attack a lot of IT, VMware, and CAD enthusiasts.
I just wonder if there will be a backlash from Nvidia if people start selling modded versions of cards.

I don't think they care if a few enthusiasts mod their card or not, but when someone commercializes on it they would probably take notice.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: winjet1 on March 26, 2013, 02:46:06 pm
In being completely truthful, modding a graphics card into a virtualized graphics card is what caught my eye.  Aside from basic knowledge all my mental stock is in IT (which is why I asked very basic questions) :)  I am extremely grateful for the instructions thus far.  I'm sure this thread will attack a lot of IT, VMware, and CAD enthusiasts.
I just wonder if there will be a backlash from Nvidia if people start selling modded versions of cards.

I don't think they care if a few enthusiasts mod their card or not, but when someone commercializes on it they would probably take notice.

Seems similar to the situation where cellular companies would lock down the bootloaders of smartphones preventing people from unlocking extra software features and modders created ROMs to unlock them.  It didn't prevent people from buying the high-end phones, and it made people who weren't going to buy, purchase a mid-range phone upgrade due to that fact.

I was never going to to be able to afford a $2k virtualized graphics card.  I didn't plan on buying a $500 card from Nvidia this week either but now they are up at least one high-end card purchase.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: moisyes on March 26, 2013, 05:12:07 pm
Would you have a Quadro 2000 image. I own a GTS 450 2GB and I wanto to hardmod it to Quadro. If you help me in it anyway, Tahnk you so much.
Maybe this?
http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareDescription.jsp?lang=en&cc=us&prodTypeId=0&prodSeriesId=3718668&prodNameId=3718669&swEnvOID=4060&swLang=13&mode=2&swItem=wk-104548-1 (http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareDescription.jsp?lang=en&cc=us&prodTypeId=0&prodSeriesId=3718668&prodNameId=3718669&swEnvOID=4060&swLang=13&mode=2&swItem=wk-104548-1)
Than you Amigo.

Although it seems GTS 450 is a GF106 only in OEM, v2 and v3 are GF116...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 26, 2013, 07:04:44 pm
I just wonder if there will be a backlash from Nvidia...
Of course there will. I think the logic will change.
But most likely not before the next generation cards arrive.

Selling modded cards will be simply illegal...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 26, 2013, 07:17:57 pm
Selling modded cards will be simply illegal...

You obviously haven't checked eBay then... :D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 26, 2013, 08:02:29 pm
I just wonder if there will be a backlash from Nvidia...
Of course there will. I think the logic will change.
But most likely not before the next generation cards arrive.


Selling modded cards will be simply illegal...

i think they will be forced to modify the gpu core to avoid completely mods.. but it will be expensive.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 26, 2013, 11:56:22 pm
i think they will be forced to modify the gpu core to avoid completely mods.. but it will be expensive.
I don't think so.
Even Intel, owning all its fabs, doesn't do that.
They will make modding harder and bricking easier... That will do it.

You obviously haven't checked eBay then... :D
I meant as a business model.
For example: building a business on selling Hackintoshes...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 27, 2013, 03:43:57 am
Looks like "F" is default value for 4 symbol.
and "B" is default  value for 3 symbol.
I other words, if I remove the resistors in all positions - 1,2 and 3 - I'll get a 11BF part, aka GRID K2.

Now my last question: does going GRID (or Tesla) disable the outputs?
Or will that happen only after the appropriate BIOS is installed (if it can be installed)?

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on March 27, 2013, 06:33:01 am
I've never been shy of doing hardware mods as easy as changing out resistors. Anyways, I just turned my EVGA GTX 670 FTW into a K10... I simply removed resistor 2 as per verbigbadboy. Will post back in a bit on the question of whether or not those cores got enabled. I still need a K10 BIOS, so if anyone with access to a real K10, it would be a huge help if you could share that, as I highly doubt I will find it on the internet...

Edit: used GPU-Z

(http://i324.photobucket.com/albums/k359/InitialDriveGTR/k10.gif)

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 27, 2013, 09:19:13 am
i think they will be forced to modify the gpu core to avoid completely mods.. but it will be expensive.
I don't think so.
Even Intel, owning all its fabs, doesn't do that.
They will make modding harder and bricking easier... That will do it.

what i intended is exactly what intel does to differentiate cpus..
for example, 3770-3770k.
they can make the same silicon, but something changes inside.

we only have to wait and see...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 27, 2013, 09:23:15 am
... I just turned my EVGA GTX 670 FTW into a K10 ...

glad to know that everything worked for you.
have you tried some benchmarks/tests to see if you gain something?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 27, 2013, 10:28:46 am
Looks like "F" is default value for 4 symbol.
and "B" is default  value for 3 symbol.
I other words, if I remove the resistors in all positions - 1,2 and 3 - I'll get a 11BF part, aka GRID K2.

Now my last question: does going GRID (or Tesla) disable the outputs?
Or will that happen only after the appropriate BIOS is installed (if it can be installed)?
Hi,
Tesla disable outputs.
Grid not disable outputs.
I not tried to change bios.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 27, 2013, 12:20:38 pm
I've never been shy of doing hardware mods as easy as changing out resistors. Anyways, I just turned my EVGA GTX 670 FTW into a K10... I simply removed resistor 2 as per verbigbadboy. Will post back in a bit on the question of whether or not those cores got enabled. I still need a K10 BIOS, so if anyone with access to a real K10, it would be a huge help if you could share that, as I highly doubt I will find it on the internet...

Please do some tests first before replacing the BIOS because you might not get that much of a difference changing ROMs, actually it might degrade your performance due to more conservative settings for the high-end line.

I think it's the features that have become enabled that makes the difference, for example unlocking the virtualization pathway, which driver and applications check/look for.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 27, 2013, 01:16:41 pm
Hi,
Tesla disable outputs.
Grid not disable outputs.
I not tried to change bios.
Thank you, verybigbadboy.

And thanks to gnif for showing us the way.

My soldering skills leave much to be desired but I just love the chance to "stick it to the man"...:)

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on March 27, 2013, 01:39:22 pm
I've never been shy of doing hardware mods as easy as changing out resistors. Anyways, I just turned my EVGA GTX 670 FTW into a K10... I simply removed resistor 2 as per verbigbadboy. Will post back in a bit on the question of whether or not those cores got enabled. I still need a K10 BIOS, so if anyone with access to a real K10, it would be a huge help if you could share that, as I highly doubt I will find it on the internet...

Edit: used GPU-Z

(http://i324.photobucket.com/albums/k359/InitialDriveGTR/k10.gif)

Yeah ~~
I can only find K5000's Bios....is this one correct?
http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html (http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html)
then use NVFlash to flash the bios into the card?

I still working on finding K10...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 27, 2013, 01:45:32 pm
I've never been shy of doing hardware mods as easy as changing out resistors. Anyways, I just turned my EVGA GTX 670 FTW into a K10... I simply removed resistor 2 as per verbigbadboy. Will post back in a bit on the question of whether or not those cores got enabled. I still need a K10 BIOS, so if anyone with access to a real K10, it would be a huge help if you could share that, as I highly doubt I will find it on the internet...

Edit: used GPU-Z

(http://i324.photobucket.com/albums/k359/InitialDriveGTR/k10.gif)

Yeah ~~
I can only find K5000's Bios....is this one correct?
http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html (http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html)
then use NVFlash to flash the bios into the card?

I still working on finding K10...

You are much better off getting your original BIOS and using a hex editor to update its device ID, then use the KGB voltage mod tool to fix the checksum, don't bother with the voltage mod stuff. I highly doubt that the BIOS controls the number of cores available, this will either be another hardware strap, or burnt out fuses in the GPU.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: winjet1 on March 27, 2013, 02:13:28 pm
I've never been shy of doing hardware mods as easy as changing out resistors. Anyways, I just turned my EVGA GTX 670 FTW into a K10... I simply removed resistor 2 as per verbigbadboy. Will post back in a bit on the question of whether or not those cores got enabled. I still need a K10 BIOS, so if anyone with access to a real K10, it would be a huge help if you could share that, as I highly doubt I will find it on the internet...

Please do some tests first before replacing the BIOS because you might not get that much of a difference changing ROMs, actually it might degrade your performance due to more conservative settings for the high-end line.

I think it's the features that have become enabled that makes the difference, for example unlocking the virtualization pathway, which driver and applications check/look for.

So the hardware mod opens up those virtualization pathways, not a BIOS re-flash (or edit)?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on March 27, 2013, 02:18:24 pm
I've never been shy of doing hardware mods as easy as changing out resistors. Anyways, I just turned my EVGA GTX 670 FTW into a K10... I simply removed resistor 2 as per verbigbadboy. Will post back in a bit on the question of whether or not those cores got enabled. I still need a K10 BIOS, so if anyone with access to a real K10, it would be a huge help if you could share that, as I highly doubt I will find it on the internet...

Edit: used GPU-Z



Yeah ~~
I can only find K5000's Bios....is this one correct?
http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html (http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html)
then use NVFlash to flash the bios into the card?

I still working on finding K10...

You are much better off getting your original BIOS and using a hex editor to update its device ID, then use the KGB voltage mod tool to fix the checksum, don't bother with the voltage mod stuff. I highly doubt that the BIOS controls the number of cores available, this will either be another hardware strap, or burnt out fuses in the GPU.

gnif, Thanks for your inspiration!!
I understand what you are telling about the BIOS but hex editor and KBG voltage mod tool is out of my knowledge...Seems I may need to stop here and wait for experts |O

However, if i use a GTX 680 4G and hard-mod it to K5000. The hardware config. are the same. Could I get the functions after I install K5000 driver?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 27, 2013, 02:27:41 pm
gnif, Thanks for your inspiration!!
I understand what you are telling about the BIOS but hex editor and KBG voltage mod tool is out of my knowledge...Seems I may need to stop here and wait for experts |O

However, if i use a GTX 680 4G and hard-mod it to K5000. The hardware config. are the same. Could I get the functions after I install K5000 driver?

No worries. Yes, that is the entire point of this mod.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 27, 2013, 02:44:52 pm
I understand what you are telling about the BIOS but hex editor and KBG voltage mod tool is out of my knowledge...Seems I may need to stop here and wait for experts |O

(http://i.imgur.com/K2cetme.jpg)

I've highlighted for you in blue the portion of the ROM file (in this case EVGA GTX 680 4GB) that contains the Device ID to be changed. Bytes are in the Little Endian order (least significant byte first, indicative of Intel platforms) so DE 10 80 11 translates to 10DE (NV Vendor ID) 1180 (GTX 680 Device ID).

The red highlight just shows the beginning of the actual VBIOS image, the sequence 55 AA is a header so you know you are in the right section, beside seeing all the text around there, too. :)

Once you've done the editing (any hex editor would do, ie. HxD), get the KGB tool (https://www.dropbox.com/s/fsxyvofr1idazhm/kgb_0.6.2.zip (https://www.dropbox.com/s/fsxyvofr1idazhm/kgb_0.6.2.zip)) to fix the new ROM image checksum (very important).

Also, always remember to backup your original ROM image first. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on March 27, 2013, 03:08:26 pm
I understand what you are telling about the BIOS but hex editor and KBG voltage mod tool is out of my knowledge...Seems I may need to stop here and wait for experts |O

(http://i.imgur.com/K2cetme.jpg)

I've highlighted for you in blue the portion of the ROM file (in this case EVGA GTX 680 4GB) that contains the Device ID to be changed. Bytes are in the Little Endian order (least significant byte first, indicative of Intel platforms) so DE 10 80 11 translates to 10DE (NV Vendor ID) 1180 (GTX 680 Device ID).

The red highlight just shows the beginning of the actual VBIOS image, the sequence 55 AA is a header so you know you are in the right section, beside seeing all the text around there, too. :)

Once you've done the editing (any hex editor would do, ie. HxD), get the KGB tool (https://www.dropbox.com/s/fsxyvofr1idazhm/kgb_0.6.2.zip (https://www.dropbox.com/s/fsxyvofr1idazhm/kgb_0.6.2.zip)) to fix the new ROM image checksum (very important).

Also, always remember to backup your original ROM image first. :)

Woooo!!!
I am getting smaller in this...You guys are awesome
So, Should I change the "DE 10 80 11" of the GTX 680 to "DE 10 BA 11"which is K5000 's ID?
What else to do? Sorry that I am just a newbie on this
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 27, 2013, 03:20:27 pm
So, Should I change the "DE 10 80 11" of the GTX 680 to "DE 10 BA 11"which is K5000 's ID?
What else to do? Sorry that I am just a newbie on this

Correct. You need to make sure your checksum is valid before flashing. Even if you manually do this (256 possibilities) still ned to verify it
in some BIOS editor like KGB or Kepler Bios Editor (http://rghost.net/43828722 (http://rghost.net/43828722)) or Kepler BIOS Tweaker (http://ul.to/5vuhxe60 (http://ul.to/5vuhxe60))

Then do some tests, before and after changing the BIOS. Actually should've run some tests before modding, too.

Real credit goes to gnif and verybigbadboy for original disclosure of their findings. The rest is application of existing knowledge. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 27, 2013, 03:58:33 pm
Summary table...

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 27, 2013, 04:11:21 pm
I want to make a few things clear.

YOU DO NOT need to modify your BIOS at this point in time, the driver DOES NOT check the Device ID in the BIOS. Unless NVidia smarten up and start checking both there is no need to do this.

To unlock your cards additional features just modifying the resistors is enough.

A GTX690 is two GK104 GPUs connected via a PCIe bridge/expansion chip, they present to the computer as if you had two separate cards installed.
A Tesla K10 is identical, but has larger ECC RAM chips.

Thus, you can mod ANY single GPU card into a Tesla K10 if you can change its Device ID, but obviously you will only get the single device.

In theory 2x GTX680s in SLI converted to K10s would perform faster then a GTX690 fully converted into a K10 as they would have less latency due to the lack of the PCIe bridge/expansion chip on the GTX690.

Changing the card's device ID does not make the driver try to use additional RAM on the card, the RAM amount is configured by hardware straps on the board also.

Flashing the BIOS to the BIOS of what you turned it into is NOT a good idea, as you will start to use the memory and GPU timings contained in the other BIOS, either causing instabilities, bricking your card, or just giving a performance loss. If you insist on changing your BIOS to match the Device ID that is has been modded to, mod the BIOS on your card as per THESE (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg208490/#msg208490) instructions, and be sure to KEEP A BACKUP.

A side note, the two GPUs on the GTX690 have independent BIOSes, and they are DIFFERENT, if you decide to mod the Device ID in the bios you need to do each one independently.

But again I say, there is NO need at current to mod your BIOS at all
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 27, 2013, 04:42:23 pm
I would also like to post a BIG THANKS to everyone that has donated so far, we are at $300 with $700 remaining at the time of this post.

I plan to video the modification of the GTX690 with before and after benchmarks which will be posted on YouTube. I will also record the process of finding the hardware straps for the other GPU through deductive reasoning and simple testing that is relatively safe to the hardware. So if you want to see this, throw a little into the pool so I can get a card I can safely do this on.

Once we have all the information all figured out I will trawl through this thread and compile everything into a single post making it easy to reference.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: beaker7 on March 27, 2013, 04:46:49 pm
Summary table...

K20x is PCI-E 2.0 x16.  I've got one here.  Last minute change by nVidia.

I would imagine the k10 and k20 are as well.

Hoping to turn some Titans into K20x
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on March 27, 2013, 05:39:28 pm
Well right now I have no idea how to actually test the K10, nor to see what hardware is enabled/disabled, as GPU-Z has a lot of missing information. What resistor values would I need for a GTX 680?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 27, 2013, 05:48:20 pm
Well right now I have no idea how to actually test the K10, nor to see what hardware is enabled/disabled, as GPU-Z has a lot of missing information. What resistor values would I need for a GTX 680?
You can't just turn GTX 670 into GTX 680 (I'm presuming you are talking about your GTX 670 unless you also have a 680). You could change the Device ID but that will not bring the rest of the features out.

As gnif and myself pointed out in previous posts, the number of Shading Units etc would be setup either in another hardware strap, or burnt out fuses in the GPU. The former might be fixable while the later is most probably not.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 27, 2013, 05:55:43 pm
Well right now I have no idea how to actually test the K10, nor to see what hardware is enabled/disabled, as GPU-Z has a lot of missing information. What resistor values would I need for a GTX 680?

Why would you want to turn a < 680 into a 680, it will not unlock any features, nor make it faster. It would be like sticking a ferrari badge on your bike.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 27, 2013, 06:02:09 pm
....It would be like sticking a ferrari badge on your bike.
Myself and those of us who used to put fancy car badges on our bicycles resent that analogy. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 27, 2013, 07:17:54 pm
K20x is PCI-E 2.0 x16.  I've got one here.  Last minute change by nVidia.
Fixed.

Can you check Vendor ID and DeviceID?
May I ask what you paid for it?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ErikTande on March 27, 2013, 07:28:41 pm
If I understand this right, I should be able to turn my GeForce GTX 660 Ti into a Quadro K5000.   Here's a picture of my exact card:

http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg (http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg)

Can anyone point out what exactly needs to be changed?   I'm going to try take it to a local shop and have them give it a shot, but I need to know exactly what to tell them.

 >:D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 27, 2013, 07:46:17 pm
Can anyone point out what exactly needs to be changed?
This is the million dollar question: nobody knows (yet).

At this point only two cards (and their PCB clones) have this question answered. Everything else is guesses at best.

See the posts by gnif and verybigbadboy.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ErikTande on March 27, 2013, 07:53:13 pm
Can anyone point out what exactly needs to be changed?
This is the million dollar question: nobody knows (yet).

At this point only two cards (and their PCB clones) have this question answered. Everything else is guesses at best.

See the posts by gnif and verybigbadboy.

Ah ok, got it.    Is the only way to know by testing it out?   Cuz I'm willing to sacrifice my card.  :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 27, 2013, 07:58:52 pm
Is the only way to know by testing it out?
Yes, but at this point the resistors to be modded (aka in charge of the Device ID) on this board haven't been identified yet.

If you are ready to lose the card, send it to gnif (ask him first).

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amyk on March 27, 2013, 08:43:26 pm
If I understand this right, I should be able to turn my GeForce GTX 660 Ti into a Quadro K5000.   Here's a picture of my exact card:

http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg (http://www.eriktande.com/nvidia_geforce_gtx_660_ti.jpg)

Can anyone point out what exactly needs to be changed?   I'm going to try take it to a local shop and have them give it a shot, but I need to know exactly what to tell them.

 >:D
Look to the right of the top right heatsink mounting hole. Same pattern there. That would be my guess.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Mawson on March 27, 2013, 09:22:21 pm
I've never been shy of doing hardware mods as easy as changing out resistors. Anyways, I just turned my EVGA GTX 670 FTW into a K10... I simply removed resistor 2 as per verbigbadboy. Will post back in a bit on the question of whether or not those cores got enabled. I still need a K10 BIOS, so if anyone with access to a real K10, it would be a huge help if you could share that, as I highly doubt I will find it on the internet...

Edit: used GPU-Z

(http://i324.photobucket.com/albums/k359/InitialDriveGTR/k10.gif)

Yeah ~~
I can only find K5000's Bios....is this one correct?
http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html (http://www.techpowerup.com/vgabios/129867/NVIDIA.QuadroK5000.4096.120817.html)
then use NVFlash to flash the bios into the card?

I still working on finding K10...

You are much better off getting your original BIOS and using a hex editor to update its device ID, then use the KGB voltage mod tool to fix the checksum, don't bother with the voltage mod stuff. I highly doubt that the BIOS controls the number of cores available, this will either be another hardware strap, or burnt out fuses in the GPU.

Hi guys, first post here! :)

I was interested in the possibility of unlocking the 670 as well, but  some research on OCN has lead me no believe that the chips are laser cut during production, making it impossible.

On another note, since I am quite interested in having a 680 with a short pcb, how challenging would it be to swap out the chip from a full 680 with one from a 670? And more importantly, would the end product function?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 27, 2013, 09:37:24 pm
On another note, since I am quite interested in having a 680 with a short pcb, how challenging would it be to swap out the chip from a full 680 with one from a 670? And more importantly, would the end product function?
Hah, that would be an ultimate hack. You need to source the chip out first then remove the original GPU, clean the pads, reball the new chip and then mount it. All in the full  BGA glory. Perhaps if you have access to the chip and the BGA equipment it is theoretically doable. But then there might be other resistors to adjust as well, flash the ROM, etc.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 27, 2013, 09:55:42 pm
I was interested in the possibility of unlocking the 670 as well, but  some research on OCN has lead me no believe that the chips are laser cut during production, making it impossible.

Not true, a GK104 is a GK104 is a GK104, the card (or pure speculation, maybe fuses in the silicon) configures its identification and capabilities. These idiots that keep saying that this mod is 'luck of the draw' if it works or not don't understand the technology as well as they think they do. The only confirmed difference between chips is the speed binning, which is not what this mod changes.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on March 27, 2013, 10:15:40 pm
Well it wont hurt to try. The way I see it is if NVidia got the silicon manufacturing process down to the point where defective units were not common enough to keep up with the demand for 670's, they may have used units that pass the qualifications for a 680 on the 670 boards. I work for a equipment design group and most of the assembly lines we make have a unit production output of about 1 unit every 8 1/2 seconds, with a failure rate of about 1 unit for every ~6000 units (and every unit is tested for quality control). Some of the lines we have made are designed to change product features on the fly, usually producing enough of one product to fill our retail demand for the next quarter, then changing the settings for a version with more/less features. I can't say what this product is, but I assure you many of you have one, and frankly I'd be screwed if I told you that you can upgrade to the better device with a firmware flash and a couple pins on the CPU tied low.

But point is, I want to see if all nvidia did was just disable stuff with this method for the GPU's that are 680 spec, but intended for 670 boards.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: bdx on March 27, 2013, 11:25:53 pm
Could someone clarify the difference between the resistor = "symbol" concept, and what has been described by vbbb, below where he removes two resistors to get a symbol?
 
And here is my question:
Making the 4th symbol an F means 40K resistor (in place of the 10k, a "9" symbol)
But based on the quoted text, that is the same as no resistor, aka see what the 3rd has to say.

Do I over analyse it?

Any comments would be appreciated.

I just removed 2 and 3 to get F symbol.

you may also remove them, or you may try to put 40k  "in place of the 10k, a "9" symbol"
I think there is no difference.

Looks like "F" is default value for 4 symbol.
and "B" is default  value for 3 symbol.

I have a GTX 660 Ti that I would be willing to submit as a guinea pig.   Is this something that gnif or someone else could walk me through over skype?

*edit* nevermind, it looks a little too involved for me to handle.  I would need to send the card to someone else.

If someone with the abilty to attempt this wants a card, send me a PM.   I'll ship a 660 Ti as long as you ship it back  :-+

You edited your message while I was preparing an image for you...

If you have a steady hand and decent tools to move the resistors, here's where I think the resistors are on the 660 Ti (of course I could be terribly wrong :) )

Left: Quadro K5000, right: GTX 660 Ti
(http://i.imgur.com/UsHpSG5.jpg)

Based on what I can gather from your photos of the Quadro, whats been discussed on this thread, and the measurements of resistances I've taken on the EVGA GTX 660 ti, I have a feeling the device ID is measured by how much current gets through the circuit i.e. the magnitude of Req. Something like DEVICE ID = i = V/Req, where Req = R1+R2+R3+R4+...+Rn...

Here is a list of resistor magnitudes from the 660 ti mapped according to my drawings below (hopefully this will be of some use)....
R1 = 40k
R2 = 20k
R3 = 5k
R4 = 5k
R5 = 45k
R6 = 33 ohms
R7 = 33 ohms
R8 = 2k
R9 = 2k
R10 = 45k
R11 = 10k
R12 = 10k

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on March 27, 2013, 11:38:59 pm
K20x is PCI-E 2.0 x16.  I've got one here.  Last minute change by nVidia.

I would imagine the k10 and k20 are as well.

Hoping to turn some Titans into K20x
The K20 is PCI-E 2.0 x16, had one until I got a Titan instead, didn't really need the extra enterprise features for my purposes.

I don't want to mess with my Titan at the moment though... my soldering skills aren't that great, anyway. I could probably have one of my friends give it to a soldering tech at his company to do the work though, lol.

I'm seeing if I can get a 660 Ti relatively cheap (~$200) to convert to a K10 or K5000 in the short term, though. If I do get one, I'd be willing to make it a guinea pig -- Edit: Judging by the mapping that was just posted above, it might be figured out very quickly!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 27, 2013, 11:40:02 pm
Could someone clarify the difference between the resistor = "symbol" concept, and what has been described by vbbb, below where he removes two resistors to get a symbol?

The terminology he used is incorrect. You are adjusting the two value of the last byte in the device ID, so each resistor represents one nibble in the device ID. See the original post.

How did you measure these resistors, in circuit or did you remove them?

Edit: According to the values provided, R2 or R3 could be for the first nibble as they are 5K which matches up with '8'. For values lower then 8 we do not know, they have not been mapped, but if the 5k per value is consistent when pulling low I would expect it to be a 20-25K, which R2 seems to fit the bill.
Title: Re: Hacking NVidia Cards into their Professional Counterparts AKA GnifMod
Post by: coffeegeek on March 28, 2013, 12:01:16 am
Hi all,

Isn't it about time this mod get's a name? In honor of it's author, I propose "GnifMod" or "ModiGnified".

Any other ideas?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: bdx on March 28, 2013, 12:20:13 am
I took measurements with the resistors in series on the card. I know this is frowned upon, but my measured values match those of the resistors when they are detached from the board, I assume it to be an accurate form of measurement. Would you concur?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 28, 2013, 12:21:56 am
I took measurements with the resistors in series on the card. I know this is frowned upon, but my measured values match those of the resistors when they are detached from the board, I assume it to be an accurate form of measurement. Would you concur?

Better then nothing but your measurement can be skewed by surrounding components (ie, the GPU).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 28, 2013, 12:25:39 am
R1 = 40k
R2 = 20k
R3 = 5k
R4 = 5k
R5 = 45k
R6 = 33 ohms
R7 = 33 ohms
R8 = 2k
R9 = 2k
R10 = 45k
R11 = 10k
R12 = 10k
Based on those numbers, the R1, R2 and R3 could be playing the roles of 3,2,1 resistors in vbbb's post here
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)

R1 is 40K, meaning R2 is setting the 4th symbol: 20K - 3 (but could be B).
R3 defines the 3rd symbol: 5K - 8 (but could be 0).

So, the ID is 83 (if you have a good reason to exclude 03, 8B and 0B).
Exactly what 660Ti is - 1183.

Just a guess!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 28, 2013, 12:31:17 am
It does not make sense to me that there is a third resistor involved, I do not understand why it is thought that removing the 40K resistor you mentioned is also required. The hard straps will not change in their scheme across the entire GK104 series.
Title: Re: Hacking NVidia Cards into their Professional Counterparts AKA GnifMod
Post by: eos on March 28, 2013, 12:36:01 am
Isn't it about time this mod get's a name? In honor of it's author, I propose "GnifMod" or "ModiGnified".

Any other ideas?
How about cGNIFit, aka significant...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: reefjunkie on March 28, 2013, 01:25:07 am
Hi-
 I'm getting ready to pull the trigger on TWO 4GB GTX 680 (Gigabyte GV-N680OC-4GD) cards and will be Modding them to a K5000 & K10.
I run 1/2 the time gaming and normal programs and 1/2 the time CAD and graphic programs. From the benchmarks I have seen ( http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_8.html#sect0 (http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_8.html#sect0) ) a K5000 is 3 - 4 times as fast as a 2GB GTX 680 running CAD programs and a 2GB GTX 680 is about 1.5 times as fast as a  K5000 running games.
So, what do I  do...
1.) SLI the GTX 680's together. It will be great for games but so-so for CAD.
2.) Mod both cards to a K5000 & K10 (or two K5000's). this will be blazing for CAD and rendering but, so-so for games.
-OR-
3.) Build "daughter cards" for each and be able to switch the resistors from 680 to K5000 & K10. Also, should I dual boot Win 7 and put the GTX 680 drivers and gaming programs on one boot. And put the Quadro drivers and CAD on the other boot.  :-//

If the "daughter cards" work, could I just put both GTX 680 & Quadro drivers on the same boot partition & Win 7 will know which ones to use depending what I have the cards set to?

Thanks.

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 28, 2013, 01:52:52 am
Hi-
 I'm getting ready to pull the trigger on TWO 4GB GTX 680 (Gigabyte GV-N680OC-4GD) cards and will be Modding them to a K5000 & K10.
I run 1/2 the time gaming and normal programs and 1/2 the time CAD and graphic programs. From the benchmarks I have seen ( http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_8.html#sect0 (http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_8.html#sect0) ) a K5000 is 3 - 4 times as fast as a 2GB GTX 680 running CAD programs and a 2GB GTX 680 is about 1.5 times as fast as a  K5000 running games.
So, what do I  do...
1.) SLI the GTX 680's together. It will be great for games but so-so for CAD.
2.) Mod both cards to a K5000 & K10 (or two K5000's). this will be blazing for CAD and rendering but, so-so for games.
-OR-
3.) Build "daughter cards" for each and be able to switch the resistors from 680 to K5000 & K10. Also, should I dual boot Win 7 and put the GTX 680 drivers and gaming programs on one boot. And put the Quadro drivers and CAD on the other boot.  :-//

If the "daughter cards" work, could I just put both GTX 680 & Quadro drivers on the same boot partition & Win 7 will know which ones to use depending what I have the cards set to?

Thanks.

Personally I would go for two K5000s. The benchmarks that show that the K5000 is slower for games is only because the real K5000 is clocked slower then the GTX680, so by keeping them both K5000 in SLI you will get the best of both worlds. Both cards use the same driver, there is no 'quadro' driver anymore.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 28, 2013, 08:16:39 am
gnif, just an advise..

i think that you should put all "successful mod guides" in first page.
just to make some order and clean things up.

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amyk on March 28, 2013, 11:05:47 am
I don't know if this has been mentioned before but would x-raying help to nondestructively identify which balls the ID straps are connected to?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 28, 2013, 11:22:06 am
hi again, now I try  to modify palit gts 450 green 1gb to quadro 2000.

I successfully changed device id, but card don't want to start. I need help.
Can someone to create highres scans or proho quadro 2000 card?

Also I found that correct resistors are allways placed near SOIC-8. this ic allways have connected 3 7 8 pins together.

I looked gtx690 pictures and think this ic is located on front side, between left processor and pcie.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 28, 2013, 11:30:19 am
I will try to make the Quadro 2000 scans tonight.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: raven on March 28, 2013, 03:06:31 pm
I guess a TITAN cannot be modded in to a Quadro card only Tesla? Not until K6000 comes out I would think. Also can someone post benchmarks of K5000 mod :)

Would be really interesting to compare SPEC benchmarks with K5000.

Also what Tesla and Quadro unlock is a feature called "out of core" rendering for IRAY. Which is avaliable in Nvidia Design Garage for people to test.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 28, 2013, 03:21:56 pm
I guess a TITAN cannot be modded in to a Quadro card only Tesla? Not until K6000 comes out I would think. Also can someone post benchmarks of K5000 mod :)

Would be really interesting to compare SPEC benchmarks with K5000.

+1
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ray78 on March 28, 2013, 04:37:34 pm
First off thanks to all contributing to this project!  :-+

file: (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=42267)

I just ordered a GV-N680OC-2GD. I want to set it to K5000, Value need is 11BA instead of 1180. I'll have to use 15k for resistor 2 and remove resistor 3. What value will be needed for Resistor 1?
Another question without having seen this card by now... does "front" in the image mean you have to remove the fan or is it located somewhere easily accessible?
Thanks
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 28, 2013, 04:56:52 pm
... does "front" in the image mean you have to remove the fan
Yes.

(http://www.overclockers.ru/images/lab/2012/10/21/1/05_big.jpg)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 28, 2013, 06:00:06 pm
I just ordered a GV-N680OC-2GD. I want to set it to K5000, Value need is 11BA instead of 1180. I'll have to use 15k for resistor 2 and remove resistor 3. What value will be needed for Resistor 1?

Hello ray78

added to my first post summary table.
Summary
GPU NameResistor 1Resistor 2Resistor 3
GTX 67025k10knone
GTX 68025knone5k
tesla k1025knonenone
quadro k5000none15knone
grid k2nonenonenone
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 28, 2013, 06:51:27 pm
OK, for all that are interested in hires pictures of Quadro2000 card, here it goes:

www.moucha.net/temp/Quadro2000.7z (http://www.moucha.net/temp/Quadro2000.7z)

Please note, that it has 61.3 MB - 2 hires tiff photos - front and back

As soon as all who asked for it has downloaded it, I will delete it.

Enjoy.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ray78 on March 28, 2013, 07:10:50 pm
@verybigbadboy and eos: Great and thanks a lot  :-+
Okay... I'm a little bit of a noob :-DD but just searched for a 15k resistor and asked myself which power rating I should choose?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: mungewell on March 28, 2013, 08:07:40 pm
It might be useful to 'correct' the terminology regarding resitor naming, to make it clear which is for which high/low nyble...

In terms of performing the mod, it's easiest just to remove a resistor and not have to solder anything down. Is there any problem with just making everything a Grid-K2?

Do we yet have confirmation that the 660ti or 670 will work with the driver when 'told' to report a different PCI-ID? (asking as the number of cores/etc is different to that they spoof... I assume that the amount of memory is actually reported/probed so that would not be an issue.

Simon
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 28, 2013, 08:29:01 pm
Is there any problem with just making everything a Grid-K2?
Not really.
Just the Grid is the least known/used flavor of GK104.
And likely the most expensive (if even sold to anybody but server makers).
Future driver updates might treat it differently...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on March 28, 2013, 11:05:42 pm
I have my GTX 670 FTW setup as a K2 right now, Video outputs work, but unfortunately the disabled cores remain disabled  :-\

But:

(http://i324.photobucket.com/albums/k359/InitialDriveGTR/GridK2.gif)

Gonna go see if it will still run my surround setup.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 29, 2013, 01:23:57 am
I have my GTX 670 FTW setup as a K2 right now, Video outputs work...
Thanks.
That's exactly what I want to accomplish.

Did you just remove the resistors 1 & 2?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 29, 2013, 03:21:53 am
Hi all,

I decided to have a go at finding the straps for GPU 1 on my card, with both success and failure as the result. I was able to locate them and modify the GTX690 to be a dual core Quadro K5000, but I made the stupid mistake of running it without a heatsync on the bridge chip in the middle of the two while testing. The chip quickly died from overheating when I got excited and let Linux boot into the graphical environment, and there goes my $1000 video card for the greater good, and as such donations are now more important then ever to replace this card now.

I am now running on a semi faulty GT220 (random lockups) and an AMD Radeon X300 to get my triple head working, but as you can imagine this is a very buggy configuration.

(https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=42485)

Also that SOIC that sits near the straps I believe is the EEPROM.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 29, 2013, 03:33:13 am
Thank you for taking this mod all the way, and sorry to hear your 690 died in the process. :(

The chip near is the EEPROM from GigaDevice 25Q20 (http://www.gigadevice.com/WebPage/PageDetail.php?PageId=127&WebPageTypeId=98&WebPageTypeId2=151&WebPageTypeId3=134 (http://www.gigadevice.com/WebPage/PageDetail.php?PageId=127&WebPageTypeId=98&WebPageTypeId2=151&WebPageTypeId3=134))

That might be interesting to note, perhaps all the Device ID straps are always located around it?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 29, 2013, 03:40:50 am
Thank you for taking this mod all the way, and sorry to hear your 690 died in the process. :(

The chip near is the EEPROM from GigaDevice 25Q20 (http://www.gigadevice.com/WebPage/PageDetail.php?PageId=127&WebPageTypeId=98&WebPageTypeId2=151&WebPageTypeId3=134 (http://www.gigadevice.com/WebPage/PageDetail.php?PageId=127&WebPageTypeId=98&WebPageTypeId2=151&WebPageTypeId3=134))

That might be interesting to note, perhaps all the Device ID straps are always located around it?

I would not be surprised as one of these straps (the top one) connects through to pin 6, which is SCLK according to the data sheet for that part. Also pin 8 match up as GND, but pin 3 looks like it is VCC, not WP as it is permanently tied high on this card. I do not think it a match, but pretty close.

 So in theory you can find one of the straps by searching for resistors that are connected to pin 6.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 29, 2013, 04:14:06 am
It seems this might be a new invention at NVidia (for 6xx) series, looking at the GTX 570 and its EEPROM (red box), or just a coincidence that the Device ID straps are near the EEPROM in some 6xx series cards.

(http://i.imgur.com/1baLvED.jpg)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 29, 2013, 06:54:15 am
It seems this might be a new invention at NVidia (for 6xx) series, looking at the GTX 570 and its EEPROM (red box), or just a coincidence that the Device ID straps are near the EEPROM in some 6xx series cards.

Not only 600 series. one resistor is located around eeprom since 8000 series. I checked 8600 240 450 cards.
But on gts 450, second is like a sum of 2 resistors on different sides near proccessor.
gts 450 id is 0dc4
Resistors are 10k + "switchable high-low" 20k = 4. I mean 10k = 1, 20k = 3, 1 + 3 = 4 ;)

The easiest way to found them is to check every resistor for 5k, 10k, ... 40k resistances and look how they are connected with "unsoldered" parts.

Not sure about 7000 series, but i think it is too old to modify it :)

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 29, 2013, 09:30:25 am
gnif: man, this is sad! (but great work) - patience is everything... is it all dead or is there a chance to replace the damaged chip from another damaged card?
Next month I will donate another $50 to you.

people: c'mon donate at least 10 bucks... everything counts!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 29, 2013, 11:37:39 am
gnif: man, this is sad! (but great work) - patience is everything... is it all dead or is there a chance to replace the damaged chip from another damaged card?
Next month I will donate another $50 to you.

people: c'mon donate at least 10 bucks... everything counts!

Getting a dead card would be next to impossible, and replacing the chip would require equipment I do not have, so no, not really viable. And thanks for the support, you have no idea how much it is appreciated.

Seems like someone heard you, just received a $250 donation, WOW :scared: Over 1/2 way there now.  :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on March 29, 2013, 07:17:20 pm
I have all the stuff for BGA reworking, if you manage to find a replacement chip I can swap it in for you

When designing circuits such as graphics cards, it's usually a good practice for the engineers in charge of the board design to locate components by their function. IE Power control circuitry in the back farthest away from the GPU, so it makes sense that NVidia (Who I have always thought to make very elegant circuit designs) would group GPU hardware straps near the EEPROM.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 29, 2013, 07:36:17 pm
Seems like someone heard you, just received a $250 donation, WOW :scared: Over 1/2 way there now.  :-+

Great! :D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: bdx on March 29, 2013, 07:49:57 pm
I removed resistors R2 and R3 on the GTX 660 ti and now have a k10(deviceID 118F)!! What does this say about which resistors need to be removed to give this card the deviceID of 11BF (grid k2)?
From what I can gather it seems I might need to remove R1......but R1 is 40k which would be the same if it were removed.
Any words of wisdom?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 29, 2013, 08:35:37 pm
I removed resistors R2 and R3 on the GTX 660 ti and now have a k10(deviceID 118F)!! What does this say about which resistors need to be removed to give this card the deviceID of 11BF (grid k2)?
From what I can gather it seems I might need to remove R1......but R1 is 40k which would be the same if it were removed.
Any words of wisdom?

Hi bdx,
I think you should trace pin 6 from eeprom and you will find correct resistor.

Also gtx 660ti may have "softstrap". You may check that by erasing your eeprom by nvflash. do not forget to save bios first.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: bdx on March 29, 2013, 10:00:25 pm
By removing R1, R2, and R3, I have turned an GTX 660 ti into a GTX 680.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 29, 2013, 10:05:10 pm
I removed resistors R2 and R3 on the GTX 660 ti and now have a k10(deviceID 118F)!!
Since the 660Ti is still in the guessing game, you should remove resistors one by one.

Most likely by removing R2 you changed the last symbol from 3 to F, aka 1183 -> 118F. That is the Tesla K10.
R3 probably has nothing to do with the Device ID. Can you solder the R3 back on and check again?
R4 could be the resistor of interest... Replaced by a 20K resistor, aka "B"...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on March 29, 2013, 10:14:18 pm
I stopped my investigation about modification Palit gts 450 Green (OEM) to quadro 2000. I think it is impossible to modify only OEM version with 144 cores. But I think my knowledge can help to someone who want's to modify another card.

gts 450 device id is 0x0DC4.
quadro 2000 id is 0x0DD8

Lets me explain how to set device id.
4th byte value is calculated by resistors 1, 2, 3.
Initially resistance and their values are:
indexmeaningresistancevalue
1shift10k1
2value 0-720k3
3value 8-fnonenone

Result value equals sum of 1 and 2 or 3. If value more than range of resistor 2 or 3 then it equals to high value.
Example:
if 1 = 5k, 2 = none, 3 = 5k  then result 8.
if 1 = 5k, 2 = 25k, 3 = none  then result 4.

setting 3th byte:
After checking different cards I found that 3 byte always set by resistors connected to pin 6 of eeprom.

indexmeaningresistance
4value C35k
5value Dnone

Setting 3th byte was difficult for me because card have soft straps. (it is new for me)
I tried every resistor value for 5th resistor, and this is my result:
4 = none, 5 = 5...20k device id is 0x0DD8, and card don't want to start due to unable to read eeprom. (but clear works fine ;) )
4 = none, 5 = 25k ... 40k device id is 0x0DC8, card works but have wrong id :(
After I cleared eeprom by nvflash, device id has become 0x0DD8.
Then I get soft straps from quadro bios and upload it to eeprom with original bios.
Now card is starting with 0x0DD8 device id and works fine until I installed drivers :). When windows tries to enable 3d I always have blue screen ;). Tested with every 5th resistor value, also tried to remove other resistors.

Also tried to upload quadro bios. It not works at all. Random lines appears ;).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 29, 2013, 11:11:10 pm
When comparing Tesla K10 and GRID K2 (from the virtualization application perspective) there is very little info to go by.
In terms of specs, both are the pro version of the (underclocked) GTX 690 or two GTX 680 on one PCB.

One vendor announced to carry these cards was Dell. Here is the the PE R720 that has has such option
http://configure.us.dell.com/dellstore/config.aspx?oc=bectj4&model_id=poweredge-r720&c=us&l=en&s=bsd&cs=04 (http://configure.us.dell.com/dellstore/config.aspx?oc=bectj4&model_id=poweredge-r720&c=us&l=en&s=bsd&cs=04)
The GRID K2 is 15% more expensive than Tesla K10 for some reason...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 29, 2013, 11:13:32 pm
The GRID K2 is 15% more expensive than Tesla K10 for some reason...

Niche market that NVidia want to squeeze some extra cash out of.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 29, 2013, 11:23:59 pm
I have all the stuff for BGA reworking, if you manage to find a replacement chip I can swap it in for you

Thanks for the offer, I am not certain that it is the point of failure, but it the only thing there that would have failed like this, voltages on the surrounding circuitry all seem to checkout and the bridge chip does not even show up in lspci or via nvflash any more, so I think the GPUs are fine, but the bridge chip is dead. Apparently the same chip is used on some ASUS motherboards, if I can locate one I will be in contact :).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on March 29, 2013, 11:57:00 pm
Niche market that NVidia want to squeeze some extra cash out of.
They definitely will do their best...

Maybe because Tesla system needs another NV video card when used in a Windows environment (no outputs).
http://nvidia.custhelp.com/app/answers/detail/a_id/2144/kw/tesla/related/1 (http://nvidia.custhelp.com/app/answers/detail/a_id/2144/kw/tesla/related/1)

GRID in its native form also doesn't have outputs
http://www.nvidia.ca/object/grid-boards.html (http://www.nvidia.ca/object/grid-boards.html)
But modding a GTX670 to a GRID keeps them live, i.e. no additional card needed...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 30, 2013, 12:10:43 am
GRID in its native form also doesn't have outputs
http://www.nvidia.ca/object/grid-boards.html (http://www.nvidia.ca/object/grid-boards.html)
But modding a GTX670 to a GRID keeps them live, i.e. no additional card needed...

Same for Tesla K10.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amyk on March 30, 2013, 08:11:11 am
Sorry to hear your card died (I suppose a PCIe switch chip needing a heatsink is a little strange in and of itself) but maybe now you can remove the GPUs and see what balls the ID resistors are connected to?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 30, 2013, 10:05:24 am
........Apparently the same chip is used on some ASUS motherboards, if I can locate one I will be in contact :).

That sounds promising, even I have a "dead" ASUS motherboard (failed BIOS update, no boot, otherwise all OK), let me think what model it is... I think P5K PRO or something like that.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 30, 2013, 12:00:26 pm
........Apparently the same chip is used on some ASUS motherboards, if I can locate one I will be in contact :).

That sounds promising, even I have a "dead" ASUS motherboard (failed BIOS update, no boot, otherwise all OK), let me think what model it is... I think P5K PRO or something like that.

The chip the card uses is a PEX8747 (see: http://www.plxtech.com/products/expresslane/pex8747 (http://www.plxtech.com/products/expresslane/pex8747)). Some boards I read somewhere are using it to expand the number of PCIe slots on it.

Edit: The ASUS P8Z77-V Premium uses it and it seems it is not using a heatsync! Perhaps I have misdiagnosed the fault, I will have another go tomorrow and check things on it to see if I missed anything obvious.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 30, 2013, 12:06:25 pm
OK, so probably only on newer motherboards... :(
http://www.anandtech.com/show/6170/four-multigpu-z77-boards-from-280350-plx-pex-8747-featuring-gigabyte-asrock-ecs-and-evga/31 (http://www.anandtech.com/show/6170/four-multigpu-z77-boards-from-280350-plx-pex-8747-featuring-gigabyte-asrock-ecs-and-evga/31)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 30, 2013, 11:06:48 pm
I'm going to order me some thin film resistors for this mod (0402 imperial/1005 metric) but I'm split between Vishay and Panasonic.

While I'm at it I'm ordering an assortment of values (5K-40K), but getting Vishay is generally twice the price of Panasonic.

Obviously I want to keep the cost low so would Panasonic be adequate in this case?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Fsck on March 30, 2013, 11:24:59 pm
Panasonic's a good brand. They'll be more than enough assuming you've selected adequate ratings.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on March 31, 2013, 01:02:13 am
Thanks for the heads-up.

The best I can get is 0.1% but that's about as low as they go and at 25ppm/C they should be stable even when the board gets hot.

Although in this application I doubt that'll serve any purpose after the system boots up and Device ID is acquired.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: poorchava on March 31, 2013, 01:03:34 am
I'm usually using Yageo, Vishay and Royal Ohm (whichever i can get cheapest). Never actually had any problem with them.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 31, 2013, 01:50:18 am
I am using Vishay, but through testing I found that the values can be +- 2K and it still works, I do not think you need to worry too much.

Also, the straps are read every time the video driver loads, if you are using Linux, this means every time you logout/login. Or windows, every time you get a 'driver is not responding' error and it recovers.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: reefjunkie on March 31, 2013, 05:51:01 am
Hi-
Well I ended up getting Two EVGA 04G-P4-3687-KR GeForce 4GB GTX 680. Core Clock 1084mhz and Boost Clock 1150mhz.
The boards are the same as the GV-N680OC-2GD except mine are 4GB. I modded both of them to Quadro K5000 (Thanks old Playstation 3 for the resistors  :-DD)
I ran the latest Nvidia 314.22 drivers and Quadro 311.35. It seems the 314.22 drivers are a little bite better so I'm using those.
I did some benchmarking to compare the cards before and after the mod's.
                                                   GTX 680 #1   GTX 680 #2   K5000  #1   K5000 #2
3DMARK 11                                      9022                   8987           9077           9016
Passmark 8 (3D Graphics Mark)     6044                   6091           6025          5996
PCMark Vantage (Gaming)             19336                 18956         18880        16177
PhysX                                         10158-166 fps   10003-165 fps    10176-167 fps   10123-166 fps
SPECviewperf 11
   Catia-03                                       6.05                       5.98               5.9             10.20
   Ensight-04                                  32.20                     32.23              32.20         32.27
   Lightwave-01                             13.23                      12.84            13.14           13.22
   Maya-03                                     12.77                     12.73             12.86           12.85
   Proe-05                                       0.96                      1.00                  1.00           0.99
   Sw-02                                         11.09                    11.37                11.36         12.78
   Tcvis-02                                        1.01                      1.17               1.02             1.02   
   Snx-01                                         3.42                      3.37                 3.40            3.42
As you can see all the scores between stock and modded cards are about the same. The problem is with the SPECviewperf 11 scores. This is  the benchmark for Graphic and CAD programs. This is what the Quadro cards were made  for. The scores for the modded K5000 should be MUCH higher. Take a look here.
http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html (http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html)

It looks to me that just because the computer thinks it’s a Quadro K5000 does not mean that it will act like a K5000.
I even tried this benchmark with the Quadro drivers and got the same results. Hopefully It's just a driver issue and not a hardware issue.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 31, 2013, 08:39:31 am
did you try vga bios mod with nvflash?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: natiss88 on March 31, 2013, 09:10:44 am

I ran the latest Nvidia 314.22 drivers and Quadro 311.35. It seems the 314.22 drivers are a little bite better so I'm using those.
I did some benchmarking to compare the cards before and after the mod


please, can you benchmark the cards with quadro drivers?

p.s. happy easter to everyone.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on March 31, 2013, 09:34:23 am


It looks to me that just because the computer thinks it’s a Quadro K5000 does not mean that it will act like a K5000.
I even tried this benchmark with the Quadro drivers and got the same results. Hopefully It's just a driver issue and not a hardware issue.
[/quote]

Thanks for your test!
I would like to make some suggestion as well...there is some another drivers which can be found in nvidia's homepage....like 191.66 Quadro win 7....would you mind try them as well?

That's a very useful information from your test
I just got my Gigabyte 4G 680 last night and will start modding in the coming days
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: niopio on March 31, 2013, 10:08:22 am
1) Please can somebody check if this hack gives you 10bit colors output? Thanks!

2) Whats the progress in flashin quadro bios (and overclocking it) to the gtx cards?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ss_march on March 31, 2013, 10:51:42 am
Hi-
Well I ended up getting Two EVGA 04G-P4-3687-KR GeForce 4GB GTX 680. Core Clock 1084mhz and Boost Clock 1150mhz.
The boards are the same as the GV-N680OC-2GD except mine are 4GB. I modded both of them to Quadro K5000 (Thanks old Playstation 3 for the resistors  :-DD)
I ran the latest Nvidia 314.22 drivers and Quadro 311.35. It seems the 314.22 drivers are a little bite better so I'm using those.
I did some benchmarking to compare the cards before and after the mod's.
Thank you for tests.
Here i made one photo how to edit stock rom (people comments help here) with HxD and checksum fix with Kepler Bios Tweaker (http://www.file-upload.net/download-7309019/KeplerBiosTweaker.exe.html).
And one photo with my guess for GTX660Ti.

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: NiHaoMike on March 31, 2013, 01:35:52 pm
Maybe someone could put on a pin header in place of those resistors and have a play with some resistance substitution boxes? Combine that with a liveUSB designed to boot quickly and automatically do a lspci and it shouldn't take too long to figure things out.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Marius3D on March 31, 2013, 02:38:24 pm
Hi-
Well I ended up getting Two EVGA 04G-P4-3687-KR GeForce 4GB GTX 680. Core Clock 1084mhz and Boost Clock 1150mhz.
The boards are the same as the GV-N680OC-2GD except mine are 4GB. I modded both of them to Quadro K5000 (Thanks old Playstation 3 for the resistors  :-DD)
I ran the latest Nvidia 314.22 drivers and Quadro 311.35. It seems the 314.22 drivers are a little bite better so I'm using those.
I did some benchmarking to compare the cards before and after the mod's.
                                                   GTX 680 #1   GTX 680 #2   K5000  #1   K5000 #2
3DMARK 11                                      9022                   8987           9077           9016
Passmark 8 (3D Graphics Mark)     6044                   6091           6025          5996
PCMark Vantage (Gaming)             19336                 18956         18880        16177
PhysX                                         10158-166 fps   10003-165 fps    10176-167 fps   10123-166 fps
SPECviewperf 11
   Catia-03                                       6.05                       5.98               5.9             10.20
   Ensight-04                                  32.20                     32.23              32.20         32.27
   Lightwave-01                             13.23                      12.84            13.14           13.22
   Maya-03                                     12.77                     12.73             12.86           12.85
   Proe-05                                       0.96                      1.00                  1.00           0.99
   Sw-02                                         11.09                    11.37                11.36         12.78
   Tcvis-02                                        1.01                      1.17               1.02             1.02   
   Snx-01                                         3.42                      3.37                 3.40            3.42
As you can see all the scores between stock and modded cards are about the same. The problem is with the SPECviewperf 11 scores. This is  the benchmark for Graphic and CAD programs. This is what the Quadro cards were made  for. The scores for the modded K5000 should be MUCH higher. Take a look here.
http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html (http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html)

It looks to me that just because the computer thinks it’s a Quadro K5000 does not mean that it will act like a K5000.
I even tried this benchmark with the Quadro drivers and got the same results. Hopefully It's just a driver issue and not a hardware issue.


Check in nvidia control panel in profile menus. If you have GeForce like profile menus with games on it, then the mod is useless, if you have pro 3D apps we are getting somewhere. I remember when I softmoded a 8800 GTS and a 8800 GTX. Some times the pro apps in NVCP didn't show and I have no performance gain. Also the same when I did bios mod on a 8800GT/9800GT to FX 3700. The performance gain only when I had the right profile in NVCP.

I would also like to donate but since Easter, I can't (bank holidays). Also I would like to buy a card to mod it my self. Currently I have a GTX 580 in my system and as far as I know it cam only be modded into Tesla M2090 since this is the only pro card with GF110. I also have on my desk an reference PNY GTX 465 which can be modded to a Quadro 5000 since both have GF100.


I was really interested in modding nvidia card to Quadro a few ears ago. I work in Maya, Mudbox, Zbrush, 3D Coat etc. Now I am very interested again ;D.

This is what I did in the past

http://translate.google.com/translate?hl=en&sl=ro&tl=en&u=http%3A%2F%2Fwww.mygarage.ro%2Fghiduri-si-tutoriale%2F29854-geforce-g80-g92-mod-quadro-fx-tutorial-si-rezultate.html (http://translate.google.com/translate?hl=en&sl=ro&tl=en&u=http%3A%2F%2Fwww.mygarage.ro%2Fghiduri-si-tutoriale%2F29854-geforce-g80-g92-mod-quadro-fx-tutorial-si-rezultate.html)

http://translate.google.com/translate?hl=en&sl=ro&tl=en&u=http%3A%2F%2Fwww.mygarage.ro%2Fghiduri-si-tutoriale%2F29854-geforce-g80-g92-mod-quadro-fx-tutorial-si-rezultate.html (http://translate.google.com/translate?hl=en&sl=ro&tl=en&u=http%3A%2F%2Fwww.mygarage.ro%2Fghiduri-si-tutoriale%2F29854-geforce-g80-g92-mod-quadro-fx-tutorial-si-rezultate.html)

The thread language is in Romanian (my native one also) so I tried to give a translated version. Anyway one picture is like 1000 words right  ;D?  Hope you can see them.

Hope I didn't bored you
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: reefjunkie on March 31, 2013, 05:38:01 pm
Here is a list of drivers I have tried and I get the same benchmarks from all of them:
NVIDIA DESKTOP DRIVER
314.22-desktop-win8-win7-winvista-64bit-english-whql

QUADRO DRIVERS
314.07-quadro-tesla-win8-win7-winvista-64bit-international-whql
311.35-quadro-tesla-win8-win7-winvista-64bit-international-whql  (PERFORMANCE DRIVER)
311.35-quadro-tesla-win8-win7-winvista-64bit-international-whql  (ODE DRIVER)
307.45-Performance quadro-tesla-win8-win7-winvista-64bit-international-whql   (CATIA PERFORMANCE DRIVER)

I'll keep trying.......
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 31, 2013, 05:42:25 pm
It should be noted that this mod was originally performed not to get a high performance Quadro or Telsa card, it was done to unlock additional features such as Mosaic support which does indeed work.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on March 31, 2013, 05:59:05 pm
reefjunkie:
it is important to completely uninstall previous nvidia drivers from system before installing other version
have you done that?
if not - check driversweeper from guru3d http://www.guru3d.com/content-page/guru3d-driver-sweeper.html (http://www.guru3d.com/content-page/guru3d-driver-sweeper.html)

also as somebody already stated - if you can find application profiles in driver setting instead of games profiles, the driver should be fine, can you check that?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: reefjunkie on March 31, 2013, 06:29:10 pm
I will check... Thanks for the tip.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: blanka on April 01, 2013, 07:25:04 am
Really thanks for the efforts of gnif and verybigbadboy
However, since I have a EVGA GTX670 with the same PCB layout like GTX660Ti
So I need to find the modification by myself and here is the result.
For the 4th digit, as everyone already knows, it is right on the position of resistor 1 and 2.
Depend on which card you have and you can remove resistor 1 and change it to tesla(40K), grid k2(40K) or Quadro(15K) on resistor 2.
For the 3rd digit, it is the tricky part.
As the low byte on the top side of the PCB with resistor 4.
You don't need to do anything for Tesla K10.
However, if you need to change it to a Quadro K5000 or Grid K2
You need to remove resistor 4 and install resistor 3 "MANUALLY" since no place for resistor 3 any more in the PCB of GTX670 and GTX660Ti
As you can see in my attached  bottom side photo for the "rework".
You need to connect to EEPROM pin 6 with a 20K Ohm and pull up to VCC.
My rework is quite ugly but it works fine!
Please be careful and take your own risk for modifying your card!!

Summary
GPU Name         Resistor 1 / 0-7 4th byte                  Resistor 2 / 8-f 4th byte                 Resistor 3/ 3th byte (high)       Resistor 4 / 3th byte(low)           
GTX 660Ti          20K                                                  None                                               None                                         25k                                                                             
GTX 670            None                                                10K                                                  None                                         25k                                                                             
tesla k10           none                                                40K                                                  None                                         25k                                                                             
quadro k5000    none                                                15k                                                  20K                                            none                                                                             
grid k2              none                                                40K                                                  20K                                           none                                                                             
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 01, 2013, 10:41:02 am
Hi all again ;)
I successfully modified SPARKLE SXS4501024D5SNM GeForce GTS 450  1GB to Quadro 2000
board is reference nvidia gts 450 http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg (http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg)
upd:
gpu passthrough works fine.

Initial values are:
indexmeaningresistance
13 byte value Dnone
23 byte value C35k
34 byte values 8-fnone
44 byte values 0-725k

device / resistors table

device nameR1R2R3R4
gts 450none35knone25k
Quadro 200035knone5knone

furmark: http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616 (http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on April 01, 2013, 05:14:58 pm
........Apparently the same chip is used on some ASUS motherboards, if I can locate one I will be in contact :).

That sounds promising, even I have a "dead" ASUS motherboard (failed BIOS update, no boot, otherwise all OK), let me think what model it is... I think P5K PRO or something like that.

The chip the card uses is a PEX8747 (see: http://www.plxtech.com/products/expresslane/pex8747 (http://www.plxtech.com/products/expresslane/pex8747)). Some boards I read somewhere are using it to expand the number of PCIe slots on it.

Edit: The ASUS P8Z77-V Premium uses it and it seems it is not using a heatsync! Perhaps I have misdiagnosed the fault, I will have another go tomorrow and check things on it to see if I missed anything obvious.

Submitted a quote for the part through avnet on one of our BOM's... If it's < $50 I'll get it on order.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on April 01, 2013, 06:39:01 pm
It should be noted that this mod was originally performed not to get a high performance Quadro or Telsa card, it was done to unlock additional features such as Mosaic support which does indeed work.

So if I mod it to a K5000...Does it support Maxiums? Or I mod it to a Tesla K10...will be function  like a tesla card?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: smiddereens on April 01, 2013, 11:32:36 pm
Has anybody had any success modifying a GT 640 (GK107-based) to a GRID K1 or Quadro K2000?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: winjet1 on April 02, 2013, 08:04:01 pm
Hey I know this is off topic so please don't flame.

I was able to, by the grace of god and not my soldering skills, change my 680 into a GRID K2 (mini).  If anyone is doing this for virtualization reasons check this VMware thread out for help.  I can now report that I am sharing my 680 among multiple Virtual Machines.

http://communities.vmware.com/thread/415887?start=30&tstart=0 (http://communities.vmware.com/thread/415887?start=30&tstart=0)

Please everyone else donate something if this has helped you out!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on April 03, 2013, 02:53:19 am
Hey I know this is off topic so please don't flame.

I was able to, by the grace of god and not my soldering skills, change my 680 into a GRID K2 (mini).  If anyone is doing this for virtualization reasons check this VMware thread out for help.  I can now report that I am sharing my 680 among multiple Virtual Machines.

http://communities.vmware.com/thread/415887?start=30&tstart=0 (http://communities.vmware.com/thread/415887?start=30&tstart=0)

Please everyone else donate something if this has helped you out!

Been using mine with Windows Server 2012's Hyper-V RemoteFX. It's pretty cool being able to remote desktop in to a virtual machine and then play GTA IV on a 2007 Macbook Pro lol
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 02:59:43 am
Hey I know this is off topic so please don't flame.

I was able to, by the grace of god and not my soldering skills, change my 680 into a GRID K2 (mini).  If anyone is doing this for virtualization reasons check this VMware thread out for help.  I can now report that I am sharing my 680 among multiple Virtual Machines.

http://communities.vmware.com/thread/415887?start=30&tstart=0 (http://communities.vmware.com/thread/415887?start=30&tstart=0)

Please everyone else donate something if this has helped you out!

Been using mine with Windows Server 2012's Hyper-V RemoteFX. It's pretty cool being able to remote desktop in to a virtual machine and then play GTA IV on a 2007 Macbook Pro lol

This is pretty sweet! I will have to have a go at it as I hate rebooting into windows for the odd game. I had never heard of the GRID K2 nor what it could do until members mentioned it in this thread.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 03, 2013, 03:30:19 am
I've been researching soft straps for the past few days and there's a way to change the Device ID without soldering.

Problem is that I could not find full information about the strap bits and so what I could piece together so far is that you can change the last two digits to a certain extent.

If you have a 0x1180 (GTX 680) you can go up to 0x119F (range: 1180-119F), basically you can change bits 0-4.

I do not know if/where the bit 5 is to take it above 9F into As and Bs for the 3rd character. I am not sure if that bit is even present in the soft straps but seeing there's a resistor for it, I'm hoping it must be somewhere in there...

Anyone with some insight into soft straps, bit 5 and beyond please post. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 03:43:46 am
I've been researching soft straps for the past few days and there's a way to change the Device ID without soldering.

Problem is that I could not find full information about the strap bits and so what I could piece together so far is that you can change the last two digits to a certain extent.

If you have a 0x1180 (GTX 680) you can go up to 0x119F (range: 1180-119F), basically you can change bits 0-4.

I do not know if/where the bit 5 is to take it above 9F into As and Bs for the 3rd character. I am not sure if that bit is even present in the soft straps but seeing there's a resistor for it, I'm hoping it must be somewhere in there...

Anyone with some insight into soft straps, bit 5 and beyond please post. :)

Did you actually test this or is it based on the soft-strap information documented here:
https://github.com/pathscale/envytools/blob/master/hwdocs/pstraps.txt

I tried this first and had no success, Linux would ignore them, and we know that in previous generations that the NVidia driver would compare the soft to the hard straps and if they differed enabled 'unstable code' that was designed to cause random hardware faults.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on April 03, 2013, 04:22:16 am

This is pretty sweet! I will have to have a go at it as I hate rebooting into windows for the odd game. I had never heard of the GRID K2 nor what it could do until members mentioned it in this thread.

What the GRID K2 cards are essentially aimed at is the ability for a person to connect from a system on a say an ultrabook, where hardware is not capable of very high end graphics, to a server, and supply a much higher performance than the local hardware is capable of by itself. You can connect to a virtual machine being hosted on a server with a GRID K2 and use the discrete graphics card in things such as say Solidworks. Where I work we have our servers for our engineering department with GRID K2 cards, we used to use Dell desktops/Laptops with high end quadro cards, but now instead of dropping 3 - 4K on a laptop that might fail after a year or two, everyone gets a cheapo laptop configured to use a virtual machine. This works very well on our gigabit ethernet network too.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 04:28:31 am

This is pretty sweet! I will have to have a go at it as I hate rebooting into windows for the odd game. I had never heard of the GRID K2 nor what it could do until members mentioned it in this thread.

What the GRID K2 cards are essentially aimed at is the ability for a person to connect from a system on a say an ultrabook, where hardware is not capable of very high end graphics, to a server, and supply a much higher performance than the local hardware is capable of by itself. You can connect to a virtual machine being hosted on a server with a GRID K2 and use the discrete graphics card in things such as say Solidworks. Where I work we have our servers for our engineering department with GRID K2 cards, we used to use Dell desktops/Laptops with high end quadro cards, but now instead of dropping 3 - 4K on a laptop that might fail after a year or two, everyone gets a cheapo laptop configured to use a virtual machine. This works very well on our gigabit ethernet network too.

So does that mean that multiple users can share the same video card across multiple VMs? or just a single VM? And how well does it work with games, etc? It would be nice to be able to share my high end card out for my daughter to use instead of having to buy her a high end card also.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InitialDriveGTR on April 03, 2013, 05:33:54 am

This is pretty sweet! I will have to have a go at it as I hate rebooting into windows for the odd game. I had never heard of the GRID K2 nor what it could do until members mentioned it in this thread.

What the GRID K2 cards are essentially aimed at is the ability for a person to connect from a system on a say an ultrabook, where hardware is not capable of very high end graphics, to a server, and supply a much higher performance than the local hardware is capable of by itself. You can connect to a virtual machine being hosted on a server with a GRID K2 and use the discrete graphics card in things such as say Solidworks. Where I work we have our servers for our engineering department with GRID K2 cards, we used to use Dell desktops/Laptops with high end quadro cards, but now instead of dropping 3 - 4K on a laptop that might fail after a year or two, everyone gets a cheapo laptop configured to use a virtual machine. This works very well on our gigabit ethernet network too.

So does that mean that multiple users can share the same video card across multiple VMs? or just a single VM? And how well does it work with games, etc? It would be nice to be able to share my high end card out for my daughter to use instead of having to buy her a high end card also.


Edit: I think this is the kind of off topic that deserves it's own thread:

https://www.eevblog.com/forum/projects/things-to-do-with-a-proffesional-nvidia-graphics-card/ (https://www.eevblog.com/forum/projects/things-to-do-with-a-proffesional-nvidia-graphics-card/)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: athanor on April 03, 2013, 09:48:21 am
Hi everyone, new to this forum so go easy on me !!

Great work on the mods been done on the GK104 chip - I want to have a look at my GK110 chip now  :-/O .. might be I should wait until the K6000 card for the device ID + drivers but might settle to try for a K20X

I have attached some pictures of the EVGA Titan card - thinking of looking at the resistors near what I think is the eeprom - am I on the right track ?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 09:57:44 am
Hi everyone, new to this forum so go easy on me !!

Great work on the mods been done on the GK104 chip - I want to have a look at my GK110 chip now  :-/O .. might be I should wait until the K6000 card for the device ID + drivers but might settle to try for a K20X

I have attached some pictures of the EVGA Titan card - thinking of looking at the resistors near what I think is the eeprom - am I on the right track ?

The resistor from pin 6 looks exactly like a hardware strap, and if you follow the trace you can see the alternate position for it, so yeah, I think that's them, but only testing will tell.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 03, 2013, 12:33:46 pm
Did you actually test this or is it based on the soft-strap information documented here:
https://github.com/pathscale/envytools/blob/master/hwdocs/pstraps.txt

I tried this first and had no success, Linux would ignore them, and we know that in previous generations that the NVidia driver would compare the soft to the hard straps and if they differed enabled 'unstable code' that was designed to cause random hardware faults.

I did test on a smaller card (8600GT) as a proof of concept. It is a very delicate operation because setting up wrong straps will hose the card (I know - I did it).

To recover you need to short CE# and Vss pins on the card's EEPROM during boot, then unshort them before running nvflash, to recover from the bad flash.

I am going to conduct a few more tests just to be sure.

The references I used to collect the needed information were the link you posted above; this thread: https://devtalk.nvidia.com/default/topic/489965/cuda-programming-and-performance/gtx480-to-c2050-hack-or-unlocking-tcc-mode-on-geforce/1 and couple of other places for random other details.

I've also looked at dozens of ROMs comparing their soft strap configurations and what not. Most manufacturers do not modify the Device ID in ROMs but here and there you can find them doing it (ASUS for example). You just need to find the same card model with different Device IDs (usually with models with various VRAM configurations)...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 12:36:16 pm
Did you actually test this or is it based on the soft-strap information documented here:
https://github.com/pathscale/envytools/blob/master/hwdocs/pstraps.txt

I tried this first and had no success, Linux would ignore them, and we know that in previous generations that the NVidia driver would compare the soft to the hard straps and if they differed enabled 'unstable code' that was designed to cause random hardware faults.

I did test on a smaller card (8600GT) as a proof of concept. It is a very delicate operation because setting up wrong straps will hose the card (I know - I did it).

To recover you need to short CE# and Vss pins on the card's EEPROM during boot, then unshort them before running nvflash, to recover from the bad flash.

I am going to conduct a few more tests just to be sure.

The references I used to collect the needed information were the link you posted above; this thread: https://devtalk.nvidia.com/default/topic/489965/cuda-programming-and-performance/gtx480-to-c2050-hack-or-unlocking-tcc-mode-on-geforce/1 and couple of other places for random other details. I've also looked at dozens of ROMs comparing their soft strap configurations and what not.

I can confirm that changing the software straps does not change the device ID in the 6 series.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 03, 2013, 12:38:59 pm
I can confirm that changing the software straps does not change the device ID in the 6 series.

The fellow from that NVidia forum post modded a 480 and 580 with this process. I wonder if NVidia caught up to this in 6xx...

EDIT: If you change the Device ID in the straps, obviously you need to change the ROM as well...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 12:40:00 pm
I can confirm that changing the software straps does not change the device ID in the 6 series.

The fellow from that NVidia forum post modded a 480 and 580 with this process. I wonder if NVidia caught up to this in 6xx...

That is what I have said, they did, it does not work in the 6 series, I spent many hours testing this method before restoring to hardware hacking.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 03, 2013, 12:45:04 pm

That is what I have said, they did, it does not work in the 6 series, I spent many hours testing this method before restoring to hardware hacking.

Humbug....well, Fedex is coming today with my 0402 resistors and some larger EEPROMs. :D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 12:46:11 pm

That is what I have said, they did, it does not work in the 6 series, I spent many hours testing this method before restoring to hardware hacking.

Humbug....well, Fedex is coming today with my 0402 resistors and some larger EEPROMs. :D

Why the larger EEPROM? are you going to try and install the quadro/tesla bios?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 03, 2013, 12:57:56 pm
Why the larger EEPROM? are you going to try and install the quadro/tesla bios?

Yes, since I have a GTX 680 4GB its shader/memory configuration is the same with the higher model cards.

I hoped for the soft straps because I wanted a way of finding a resistor configuration that combined with the soft straps could take a card from GTX to Quadro and back just by changing the soft straps.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 03, 2013, 12:59:25 pm
I hoped for the soft straps because I wanted a way of finding a resistor configuration that combined with the soft straps could take a card from GTX to Quadro and back just by changing the soft straps.

You could always hotglue some dip-switches to it and wire them up with wire-wrap.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 03, 2013, 01:05:34 pm
You could always hotglue some dip-switches to it and wire them up with wire-wrap.

Meh. I suppose if I want both worlds it'll have to come down to routing wires across the board.

I thought that would've been a messy solution, so I didn't order any dip-switches...and now it bites me back. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 05, 2013, 11:58:27 am
Hello all again ;) I have good news.

I successfully modified
Zotac PCI-E NV ZT-60206-10L GT640 Synergy 2G 128bit DDR3 900/1600 DVI*2+mHDMI RTL
To NVIDIA GRID K1. It is working fine. passthough works too. BUT Device ID mofidication posible only after bios modification. Bios modification is needed only for specific vendors.

upd:
myweb found resistor places for  Asus GT640-1GD3-L, no bios modification is needed. pic attached to post.

Benchmark:
http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=121229 (http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=121229)

Also I tested NVIDIA Quadro K600. it works.
http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=121226 (http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=121226)

I not tested NVIDIA Quadro K2000 but i think it will work too.

About modification:
all resistors are soldered at back side.
http://www.techpowerup.com/reviews/Zotac/GeForce_GT_640/images/back_full.jpg (http://www.techpowerup.com/reviews/Zotac/GeForce_GT_640/images/back_full.jpg)

Device id
GT640 0FC1
GTX650 0FC6
GRID K1 0FF2
Quadro K600 0FFA
Quadro K2000 0FFE

Initial values are:
indexmeaningresistance
13 byte C D25k
23 byte F none
34 byte values 0-710k
44 byte values 8-fnone

device nameR1R2R3R4
GT 64025knone10knone
GTX 65025knone35knone
Quadro K600none40knone15k
GRID K1none40k15knone
K2000none40knone35K

And you should use unlocked bios. Unlocked bios removed from post due to it is a copyrighted work.
To unlock bios you need to change masks and update checksum.
0000000010: 08 E2 00 00 00 04 00 00 ? 02 10 10 82 FF C3 FF 2F
0000000020: 00 04 00 80
to
0000000010: 08 E2 00 00 00 04 00 00 ? 02 10 10 82 FF FF FF 7F
0000000020: 00 00 00 80
and update bios checksum.

It is not possible to change device id without bios modification for this card.

it is may not necessary to change bios if you using other vendor gt640 card (not Zotac).
To check  "is your bios good for hard mode" you need to do next steps:

1. Create boot dos flash with nvflash.exe tool.
2. Save bios by nvflash --save yourgt640biosname.rom (name should be 8 symbols max long)
3. Create a bios backup.
4. Open bios in any hex editor and check bios values at
0000000010: ?? ?? ?? ?? ?? ?? ?? ?? | ?? ?? ?? ?? FF FF FF 7F;  ?? - any value is good
0000000020: 00 00 00 80
if values are equal your bios is good and you don't need to change anything. else step 4.
4. Change values to be equal values from 4.
5. Update checksum. I do it by nibitor tool. just open bios rom and save it. It produces lot of warnings, but it is ok.
6. Upload bios back to card.
Now you can change values by resistors ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 05, 2013, 12:07:34 pm
Hello all again ;) I have good news.

I successfully modified
Zotac PCI-E NV ZT-60206-10L GT640 Synergy 2G 128bit DDR3 900/1600 DVI*2+mHDMI RTL
To NVIDIA GRID K1. It is working fine. passthough works too. BUT It is posible after bios modification. Bios modification is needed only for specific vendors.

Great work!

And you should use unlocked bios gt640om.rom. I attached it to post.
original bios is gt640ori.rom. I changed masks and updated checksum.

Please remove the BIOS from here, it is a copyrighted work and could bring NVidia down on this forum.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on April 05, 2013, 02:32:33 pm

upd:
removing resistor 1 may cause random ID changes after reboot :) I will update post after i solve it


Any news about this? :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 05, 2013, 02:36:44 pm

upd:
removing resistor 1 may cause random ID changes after reboot :) I will update post after i solve it


Any news about this? :)

I have a donated 680 coming in a few days, I will see if I can track this down. All my SMD components arrived also, so can do a professional rework now :).

Note: donated for testing, not for keeps :(
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Neo_Moucha on April 05, 2013, 02:38:10 pm
this is great news gnif!!! :)
I have a GTX 680 ready for making the mod after it is resolved >D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 05, 2013, 05:05:11 pm

upd:
removing resistor 1 may cause random ID changes after reboot :) I will update post after i solve it


Any news about this? :)

just removing resistor is not good idea. Value on pin may change randomly because pin is not connected. It is needs to be connected with 40k resistor. I have not tried to find right place for it yet, because it happened once after kernel panic& hard reset ;) and reboot again solve this.
it is still actual issue.

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: smiddereens on April 06, 2013, 07:50:02 pm
I successfully modified
Zotac PCI-E NV ZT-60206-10L GT640 Synergy 2G 128bit DDR3 900/1600 DVI*2+mHDMI RTL
To NVIDIA GRID K1. It is working fine. passthough works too. BUT Device ID mofidication posible only after bios modification. Bios modification is needed only for specific vendors.

Congratulations on the mod! I'm interested in doing the same thing with my GT 640 but it appears that its PCB is laid out quite differently from yours. It is an EVGA 02G-P4-2645-KR, a photo of its back is attached.

Does this mean that I would need to remove the cooling unit to reach the necessary resistors?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 06, 2013, 08:53:28 pm
Does this mean that I would need to remove the cooling unit to reach the necessary resistors?

Yes.

gt 640 front pic:
http://www.hdd.com.pl/zdjecia/106545/VGA/NVD/VGAEVGNVD0260/2.jpg (http://www.hdd.com.pl/zdjecia/106545/VGA/NVD/VGAEVGNVD0260/2.jpg)
I just looked your card and i think u10 is eeprom. you need to check resistors around it.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: jnowak1054 on April 08, 2013, 02:47:03 am
Looking at the new gtx 650 Ti Boost, it looks to be almost identical to the Quadro K4000 short the memory (same processor and cuda core count.) Would it be a hardware only or a require bios or softstrap mod as well to be done properly?
http://www.newegg.com/Product/Product.aspx?Item=N82E16814133485 (http://www.newegg.com/Product/Product.aspx?Item=N82E16814133485)
http://www.newegg.com/Product/Product.aspx?Item=N82E16814130909 (http://www.newegg.com/Product/Product.aspx?Item=N82E16814130909)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 08, 2013, 10:09:45 am
Looking at the new gtx 650 Ti Boost, it looks to be almost identical to the Quadro K4000 short the memory (same processor and cuda core count.) Would it be a hardware only or a require bios or softstrap mod as well to be done properly?
It is impossible to say until someone get bios from card.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ks6g10 on April 08, 2013, 02:18:42 pm
For those whom have changed their "model" of their cards, does this enable use of nvidia-smi options, and does it enables use of higher versions of CUDA functions?

E.g. going from CUDA version 3.0 (GTX 670) to 3.5 (K20) would enable Funnel shift as described in http://stackoverflow.com/questions/12767113/funnel-shift-what-is-it (http://stackoverflow.com/questions/12767113/funnel-shift-what-is-it)

Thank you.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: myweb on April 08, 2013, 09:22:21 pm
Dear All,
I have Asus GT640-1GD3-L card and I would like to make it recognizable as K2000 in order to have working VGA Passthrough in XEN (currently guest Windows recognizes card as gt640, but show error 43).
Please find bellow Asus GT640-1GD3-L photos:
http://www.overclockers.ru/images/lab/2012/12/24/1/15_ASUS_back_big.jpg (http://www.overclockers.ru/images/lab/2012/12/24/1/15_ASUS_back_big.jpg)
http://www.overclockers.ru/images/lab/2012/12/24/1/18_ASUS_PCB_big.jpg (http://www.overclockers.ru/images/lab/2012/12/24/1/18_ASUS_PCB_big.jpg)
Could you please specify which resistors on the photo should be replaced?
Is it a software method how to make Asus GT640-1GD3-L recognizable as K2000?
I already have checked the BIOS:
Code: [Select]
010: 08 e2 00 00 00 04 00 00 02 10 10 82 ff ff ff 7f
020: 00 00 00 80 0e 10 10 82 ff ff ff 7f 00 00 00 80
Looks like the BIOS id correct.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: airthimble on April 09, 2013, 03:30:17 am
For those whom have changed their "model" of their cards, does this enable use of nvidia-smi options, and does it enables use of higher versions of CUDA functions?

E.g. going from CUDA version 3.0 (GTX 670) to 3.5 (K20) would enable Funnel shift as described in http://stackoverflow.com/questions/12767113/funnel-shift-what-is-it (http://stackoverflow.com/questions/12767113/funnel-shift-what-is-it)

Thank you.

From what I understand this wouldn't be possible, 670 uses the GK104 chip while the K20 uses the GK110, I don't think the 670 has the hardware to support these features.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 09, 2013, 07:37:04 am
Hello myweb,
Dear All,
I have Asus GT640-1GD3-L card and I would like to make it recognizable as K2000 in order to have working VGA Passthrough in XEN (currently guest Windows recognizes card as gt640, but show error 43).
Quadro K2000 does not support gpu passthrough.
http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters (http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters)
http://hcl.xensource.com/GPUPass-throughDeviceList.aspx (http://hcl.xensource.com/GPUPass-throughDeviceList.aspx)
you need to modify it to GRID K1

Please find bellow Asus GT640-1GD3-L photos:
http://www.overclockers.ru/images/lab/2012/12/24/1/15_ASUS_back_big.jpg (http://www.overclockers.ru/images/lab/2012/12/24/1/15_ASUS_back_big.jpg)
http://www.overclockers.ru/images/lab/2012/12/24/1/18_ASUS_PCB_big.jpg (http://www.overclockers.ru/images/lab/2012/12/24/1/18_ASUS_PCB_big.jpg)
Could you please specify which resistors on the photo should be replaced?
It is hard to say without ohmmeter where resistors are located.
I not sure but I think they are near big capacitors and i think top sop-8 IC is EEPROM. Resistors located on front and back near empty resistor places. If you have ohmmeter you can try it to find by yourself.

Is it a software method how to make Asus GT640-1GD3-L recognizable as K2000?
I already have checked the BIOS:
Code: [Select]
010: 08 e2 00 00 00 04 00 00 02 10 10 82 ff ff ff 7f
020: 00 00 00 80 0e 10 10 82 ff ff ff 7f 00 00 00 80
Looks like the BIOS id correct.
Your bios is great. You need change resistors only.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: seneelya on April 09, 2013, 06:10:50 pm
hello every one!
First of all i`m very happy about you great and very important work!

i`m follow this topic since the very begining of it and i`m very very interested in this genius modification because it is only one possible solution for me(and not only for me) to obtain "REAL"   ;) K5000 in near future.
But as i see only one performance test in professional software (specviewperf 11) was done with very sad results.

So does the hope exist to unlock professional openGl performance features in some future? or may be one of hard + soft modifications already done it? i mean GT 640 -> K2000 or similar.

i have one quadro 4000 at work so if i can do smth not destructible with it for the Great Future =) i will do it for you.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: myweb on April 09, 2013, 08:14:04 pm
Quadro K2000 does not support gpu passthrough.
http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters (http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters)
http://hcl.xensource.com/GPUPass-throughDeviceList.aspx (http://hcl.xensource.com/GPUPass-throughDeviceList.aspx)
you need to modify it to GRID K1
I am confused: information provided via mentioned links confirms than k2000 works with XEN Passthrough. Please correct me if I understood the information incorectly.

It is hard to say without ohmmeter where resistors are located.
I not sure but I think they are near big capacitors and i think top sop-8 IC is EEPROM. Resistors located on front and back near empty resistor places. If you have ohmmeter you can try it to find by yourself.
Yes, I have ohmmeter  - I will try to find some, but I need start region (the place where needed resistor could be located from your point of view). Please find bellow detailed photo of Pm25LD020 and area around plus back side (it would be nice if you could highlight the resistors that I should check at first):
https://dl.dropbox.com/u/52618061/IMG_0249.JPG
https://dl.dropbox.com/u/52618061/IMG_0250.JPG
https://dl.dropbox.com/u/52618061/IMG_0251.JPG
https://dl.dropbox.com/u/52618061/IMG_0253.JPG
https://dl.dropbox.com/u/52618061/IMG_0254.JPG
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 10, 2013, 07:04:37 am
Quadro K2000 does not support gpu passthrough.
http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters (http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters)
http://hcl.xensource.com/GPUPass-throughDeviceList.aspx (http://hcl.xensource.com/GPUPass-throughDeviceList.aspx)
you need to modify it to GRID K1
I am confused: information provided via mentioned links confirms than k2000 works with XEN Passthrough. Please correct me if I understood the information incorectly.
I think you mixing up Quadro 2000 and Quadro K2000, it is different cards.
Please read links again ;)

Yes, I have ohmmeter  - I will try to find some, but I need start region (the place where needed resistor could be located from your point of view). Please find bellow detailed photo of Pm25LD020 and area around plus back side (it would be nice if you could highlight the resistors that I should check at first):
https://dl.dropbox.com/u/52618061/IMG_0249.JPG (https://dl.dropbox.com/u/52618061/IMG_0249.JPG)
https://dl.dropbox.com/u/52618061/IMG_0250.JPG (https://dl.dropbox.com/u/52618061/IMG_0250.JPG)
https://dl.dropbox.com/u/52618061/IMG_0251.JPG (https://dl.dropbox.com/u/52618061/IMG_0251.JPG)
https://dl.dropbox.com/u/52618061/IMG_0253.JPG (https://dl.dropbox.com/u/52618061/IMG_0253.JPG)
https://dl.dropbox.com/u/52618061/IMG_0254.JPG (https://dl.dropbox.com/u/52618061/IMG_0254.JPG)

So I traced pin 6 from eeprom photos and I think:
R532 is R1 and should be 25k
R558 is R2
from https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332)

So you need to find R3 and R4 places. you need to find 10k resistor with empty place near.
just unsolder every 10k resistor step by step, test pci device id and solder resistor back.
It may help, look at picture in my post, it was 5k and 10k resistors near R3 and R4 in my case.
Afraid to unsolder 10k resistors which connected to fets.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: silicman on April 10, 2013, 12:28:48 pm
I've got my PNY GTX 670. Can I follow you guide "mod GTX 680 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)" to a Quadro?
I'm not an electrician. I just like kind of your works guys. I think it risky a bit. but it ok. I love your works.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: myweb on April 10, 2013, 09:22:24 pm
I think you mixing up Quadro 2000 and Quadro K2000, it is different cards.
Please read links again ;)
Yes, You are right :)

So I traced pin 6 from eeprom photos and I think:
R532 is R1 and should be 25k
R558 is R2
from https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332)

So you need to find R3 and R4 places. you need to find 10k resistor with empty place near.
just unsolder every 10k resistor step by step, test pci device id and solder resistor back.
It may help, look at picture in my post, it was 5k and 10k resistors near R3 and R4 in my case.
Afraid to unsolder 10k resistors which connected to fets.
You are right again: R532 is 25K and it's R1, R558 is R2
R3 and R4 are resistors near the mounting hole.
As the result my videocard is recognized as Nvidia G1.
Guest windows also  recognized as Nvidia G1, but shows the same error: "Windows has stopped this device because it has reported problems. (Code 43)" :(. I use Ubuntu 13.04 (Beta), Xen 4.2.1, Asrock Z77 Pro4 and Core i5-3470.
Could you please help me solve the issue?
verybigbadboy, could you please specify software versions which you use to get working VGA path through on  GT640 (modified to Grid K1)?

Thank you in advance!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 11, 2013, 09:15:49 am
You are right again: R532 is 25K and it's R1, R558 is R2
R3 and R4 are resistors near the mounting hole.
I attached your photo with marks on resistors, can you check marks? I would like to add this photo to gt640 post.

Guest windows also  recognized as Nvidia G1, but shows the same error: "Windows has stopped this device because it has reported problems. (Code 43)" :(. I use Ubuntu 13.04 (Beta), Xen 4.2.1, Asrock Z77 Pro4 and Core i5-3470.
Could you please help me solve the issue?
verybigbadboy, could you please specify software versions which you use to get working VGA path through on  GT640 (modified to Grid K1)?
I think it is nvidia drivers issue.
Can you try to remove nvidia geforce drivers. install quadro drivers after.
Also can you check is card working good without xen?

pc: debian 6 xen 4.2
home pc: gentoo, kernel 3.7.10, qemu 1.4.0 + libvirt and virt-manager for config.

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: myweb on April 11, 2013, 11:32:00 am
I attached your photo with marks on resistors, can you check marks? I would like to add this photo to gt640 post.
Yes, sure, I will check on today evening at home.
I think it is nvidia drivers issue.
Can you try to remove nvidia geforce drivers. install quadro drivers after.
Also can you check is card working good without xen?
Could you please specify which version of nvidia driver did you use when check vga path through?
I had installed nvidia geforce drivers on VM before I made resistors modifications. When modified videocard was installed Windows said that device driver is not found and I download and install quadro drivers. Installation of quadro drivers looks like uninstall geforce drivers (I do not see GeForce driver at Add/Remove Program)
Ok, will check if card is working on Ubuntu without Xen. Also, could you please clarify how Gt640 (Grid k1 mod) should work with DVI, HDMI outputs?


pc: debian 6 xen 4.2
home pc: gentoo, kernel 3.7.10, qemu 1.4.0 + libvirt and virt-manager for config.
Did you compile Xen from sourcea and apply patches for Nvidia path through support or use xen 4.2 from repository?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 11, 2013, 04:05:10 pm
Could you please specify which version of nvidia driver did you use when check vga path through?
I had installed nvidia geforce drivers on VM before I made resistors modifications. When modified videocard was installed Windows said that device driver is not found and I download and install quadro drivers. Installation of quadro drivers looks like uninstall geforce drivers (I do not see GeForce driver at Add/Remove Program)
Ok, will check if card is working on Ubuntu without Xen. Also, could you please clarify how Gt640 (Grid k1 mod) should work with DVI, HDMI outputs?
I tested DVI outputs, it is works fine.

pc: debian 6 xen 4.2
home pc: gentoo, kernel 3.7.10, qemu 1.4.0 + libvirt and virt-manager for config.
Did you compile Xen from sourcea and apply patches for Nvidia path through support
Yes, but I think it should work without patches.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: myweb on April 11, 2013, 09:36:56 pm
I attached your photo with marks on resistors, can you check marks? I would like to add this photo to gt640 post.
The photo is correct.
I successfully enable GT640 (mod Grid k1) with Nvidia and Nouveau drivers as secondary card under Ubuntu WITHOUT XEN
Windows guest under XEN was booted from Ubuntu live image and video output automatically switched to GT640 (mod Grid k1) HDMI (the color has some hue, but not significant )
Windows 7 x64 SP1 still can't work with GT640 (mod Grid k1) - I have removed all drivers and installed the latest one dowloaded from Nvidia site: Error 43  |O

verybigbadboy, did you check vga path through before making resistors modification?
Are there any ideas how to make Windows working with Nvidia GT640 (mod Grid k1) via Xen vga path through?

Thank you in advance.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Saibot on April 12, 2013, 01:19:41 pm
verybigbadboy that you so much for all the great information ! :) i have now modified a GTX680 into a Grid K2 following your instructions , and i am running it in my VMware view 5.2 environment and it is working perfectly .
But it would be great if i could use a card with 3 or 4GB of memory  , but i don't want to buy a card if i am not sure which resistors to change. do you know of any such card ?

/Saibot
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: SeSl on April 13, 2013, 10:28:11 am
Hi, everybody! Thanks for an interesting topic.
To me it is most interesting "mod GTX 680 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-

counterparts/msg207550/#msg207550)" to quadro k5000. Now I have no any graphics card based on the chipset gk104. Therefore, I am

free in its choice. The most promising option I see GTX 680 + 4GB mem. For K5000 is important to have the largest possible volume of onboard memory.

With only one such card was a successful experience modding. EVGA 04G-P4-3687-KR GeForce 4GB GTX 680 mod to K5000 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-

professional-counterparts/msg210155/#msg210155). Unfortunately, reefjunkie did not

described  the details of this mod. It is possible, P?B was the same as with GV-N680OC-2GD
I consider following variants of devices:

Gigabyte GV-N680OC-4GD
photo#1reverse side (http://www.nix.ru/autocatalog/gigabyte/video/147201_2258_draft.jpg)
photo#2 reverse side (http://www.hardwareluxx.de/images/stories/galleries/reviews/2012/gigabyte-680oc/gigabyte-680-2.jpg)
photo#3 reverse side (http://www.hardwareluxx.de/images/stories/galleries/reviews/2012/gigabyte-680oc/gigabyte-680-5.jpg)
photo#4 reverse side (http://www.ixbt.com/video3/images/gk104-10/gigabyte-gtx680-scan-back.jpg)
photo front side (http://www.ixbt.com/video3/images/gk104-10/gigabyte-gtx680-scan-front.jpg)
Unlike the GV-N680OC-2GD, Y1 repositioned to the rear side. Different connectors resistors. Independently I do not find their location.

ZOTAC GTX 680 4GB [ZT-60103-10P]
back side (http://www.nix.ru/autocatalog/zotac/134525_2258_draft.jpg)
front side (http://www.easycom.com.ua/data/video/1304062052/img/07_ZOTAC_GeForce_GTX_680_AMP_Edition_Dual_Silencer.JPG)
Video card similar to GV-N680OC-2GD. It is possible, it would be similar mod. The board kept the reference design. It is strange that nobody had chose it for the experiment.

EVGA GeForce GTX 680 FTW+ 4GB [04G-P4-3687-KR]
Pictures with a PCB-s I have not found. Mod executed by reefjunkie described here (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155) However, no description or photos of the device before and after mods. If it is possible, reefjunkie , please give more details.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 13, 2013, 01:25:57 pm
Looking at the new gtx 650 Ti Boost, it looks to be almost identical to the Quadro K4000 short the memory (same processor and cuda core count.) Would it be a hardware only or a require bios or softstrap mod as well to be done properly?
It is impossible to say until someone get bios from card.

ROM BIOS for K4000 is available here http://www.techpowerup.com/vgabios/130511/NVIDIA.QuadroK4000.3072.120813.rom (http://www.techpowerup.com/vgabios/130511/NVIDIA.QuadroK4000.3072.120813.rom)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 13, 2013, 01:37:14 pm
There's also PNY GTX 680 4GB - I have one: http://www.amazon.com/PNY-GeForce-Graphics-Cards-VCGGTX6804XPB/dp/B009MQTVTE (http://www.amazon.com/PNY-GeForce-Graphics-Cards-VCGGTX6804XPB/dp/B009MQTVTE) which basically appears identical to EVGA one.

Not yet modded to K5000, thinking to put a dip switch so I can go between GTX 680 and K5000... :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 13, 2013, 01:44:30 pm
Hi, everybody! Thanks for an interesting topic.
To me it is most interesting "mod GTX 680 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)" to quadro k5000. Now I have no any graphics card based on the chipset gk104. Therefore, I am free in its choice. The most promising option I see GTX 680 + 4GB mem. For K5000 is important to have the largest possible volume of onboard memory.

With only one such card was a successful experience modding. EVGA 04G-P4-3687-KR GeForce 4GB GTX 680 mod to K5000 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155). Unfortunately, reefjunkie did not described  the details of this mod. It is possible, P?B was the same as with GV-N680OC-2GD

I consider following variants of devices:

Gigabyte GV-N680OC-4GD
ZOTAC GTX 680 4GB [ZT-60103-10P]
EVGA GeForce GTX 680 FTW+ 4GB [04G-P4-3687-KR]

Gigabyte board is not a reference, they have redesigned it (look it has 6+8 pin power connector).

Zotac has a board with 6+6 as well as EVGA and PNY (which I believe are identical).

I would probably go with EVGA or PNY (I have the later).

I believe that moving resistors around might only be half the process to get the true high-end features (SpecViewPref).

The system *will* detect the new hardware but it is possible that the ROM BIOS also plays a role in configuration it presents to the NV system driver. Thus ROM needs to be modded/flashed, or alternatively NV system driver hacked. Who's up for it? :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on April 13, 2013, 02:51:33 pm
EVGA GeForce GTX 680 FTW+ 4GB [04G-P4-3687-KR]
Pictures with a PCB-s I have not found.
Here is one (taken from http://www.evga.com/forums/tm.aspx?m=1664376&mpage=1 (http://www.evga.com/forums/tm.aspx?m=1664376&mpage=1))
http://i18.photobucket.com/albums/b147/ArcticSilver/EVGA%20GTX%20680%20FTW%204Gb%20with%20Accelero%20Twin%20Turbo%20II/IMAG0212.jpg (http://i18.photobucket.com/albums/b147/ArcticSilver/EVGA%20GTX%20680%20FTW%204Gb%20with%20Accelero%20Twin%20Turbo%20II/IMAG0212.jpg)
It's identical to the 2GB one and I think this is the reason reefjunkie didn't elaborate on what was done.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on April 13, 2013, 03:30:40 pm
Here is an article about an utility to modify power states (P0, P3, P8 and P12)
http://www.overclock.net/t/964370/howto-dual-monitor-downclocking-fix-for-nvidia-cards (http://www.overclock.net/t/964370/howto-dual-monitor-downclocking-fix-for-nvidia-cards)
It seems to apply to any NV card...

EDIT
Here is an interesting writeup about nvidia-smi
http://microway.com/hpc-tech-tips/2011/12/nvidia-smi_control-your-gpus/ (http://microway.com/hpc-tech-tips/2011/12/nvidia-smi_control-your-gpus/)
Couple things:
-it will (suppose to) work only on professional cards
-power state selection is semi-automatic

If the virtual GPU is passed to the VM in the P12 state (2D), no advantages of the modding will be realized (most likely).
That might explain why some people see better benchmarks and some don't.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on April 13, 2013, 04:28:58 pm
Hi, everybody! Thanks for an interesting topic.
To me it is most interesting "mod GTX 680 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-

counterparts/msg207550/#msg207550)" to quadro k5000. Now I have no any graphics card based on the chipset gk104. Therefore, I am

free in its choice. The most promising option I see GTX 680 + 4GB mem. For K5000 is important to have the largest possible volume of onboard memory.

With only one such card was a successful experience modding. EVGA 04G-P4-3687-KR GeForce 4GB GTX 680 mod to K5000 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-

professional-counterparts/msg210155/#msg210155). Unfortunately, reefjunkie did not

described  the details of this mod. It is possible, P?B was the same as with GV-N680OC-2GD
I consider following variants of devices:

Gigabyte GV-N680OC-4GD
photo#1reverse side (http://www.nix.ru/autocatalog/gigabyte/video/147201_2258_draft.jpg)
photo#2 reverse side (http://www.hardwareluxx.de/images/stories/galleries/reviews/2012/gigabyte-680oc/gigabyte-680-2.jpg)
photo#3 reverse side (http://www.hardwareluxx.de/images/stories/galleries/reviews/2012/gigabyte-680oc/gigabyte-680-5.jpg)
photo#4 reverse side (http://www.ixbt.com/video3/images/gk104-10/gigabyte-gtx680-scan-back.jpg)
photo front side (http://www.ixbt.com/video3/images/gk104-10/gigabyte-gtx680-scan-front.jpg)
Unlike the GV-N680OC-2GD, Y1 repositioned to the rear side. Different connectors resistors. Independently I do not find their location.

ZOTAC GTX 680 4GB [ZT-60103-10P]
back side (http://www.nix.ru/autocatalog/zotac/134525_2258_draft.jpg)
front side (http://www.easycom.com.ua/data/video/1304062052/img/07_ZOTAC_GeForce_GTX_680_AMP_Edition_Dual_Silencer.JPG)
Video card similar to GV-N680OC-2GD. It is possible, it would be similar mod. The board kept the reference design. It is strange that nobody had chose it for the experiment.

EVGA GeForce GTX 680 FTW+ 4GB [04G-P4-3687-KR]
Pictures with a PCB-s I have not found. Mod executed by reefjunkie described here (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155) However, no description or photos of the device before and after mods. If it is possible, reefjunkie , please give more details.


So...that's not possible to mod a Gigabyte GTX 680 4G to a K5000?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: SeSl on April 13, 2013, 05:14:34 pm
EVGA GeForce GTX 680 FTW+ 4GB [04G-P4-3687-KR]
Pictures with a PCB-s I have not found.
Here is one (taken from http://www.evga.com/forums/tm.aspx?m=1664376&mpage=1 (http://www.evga.com/forums/tm.aspx?m=1664376&mpage=1))
http://i18.photobucket.com/albums/b147/ArcticSilver/EVGA%20GTX%20680%20FTW%204Gb%20with%20Accelero%20Twin%20Turbo%20II/IMAG0212.jpg (http://i18.photobucket.com/albums/b147/ArcticSilver/EVGA%20GTX%20680%20FTW%204Gb%20with%20Accelero%20Twin%20Turbo%20II/IMAG0212.jpg)
It's identical to the 2GB one and I think this is the reason reefjunkie didn't elaborate on what was done.

Thank you! Now I see.

Gigabyte board is not a reference, they have redesigned it (look it has 6+8 pin power connector).
Zotac has a board with 6+6 as well as EVGA and PNY (which I believe are identical).

Zotac - yes (6+6), but  EVGA has 8+6 Power Design (http://www.evga.com/articles/00669/#GTX680FTW). There is also a variety of cards 680-series (http://www.evga.com/Products/ProductList.aspx?type=0&family=GeForce+600+Series+Family&chipset=GTX+680), made ??by EVGA. How to find out which of them is identical to the reference? In Russia sell two variants of 4Gb vers. EVGA GTX 680 04G-P4-3687-KR and EVGA GTX680 04G-P4-2686-KR.
PNY version I have excluded. It is not possible to buy somewhere near. Zotac vs EVGA?  Is the question. Why did not anyone binds to Zotac? On the other hand, 04G-P4-3687-KR has already tested in mod. Less risk, possible.


So...that's not possible to mod a Gigabyte GTX 680 4G to a K5000?
I have not said so. For me it is - a difficult task.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: shlomo.m on April 13, 2013, 09:37:35 pm
I can confirm the mod done by blanka.
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)
But I pimped it a little bit.

670GTX to K5000 works!

R4 on the front side.
R1, R2, R3 on the bottom side.

K5000 works absolutely stable for me, but has no performance increase in SPECviewperf. I tested with few different Quadro drivers.

Summary
GPU Name         R1 / 0-7 4th byte        R2 / 8-f 4th byte   R3/ 3th (high)   R4 / 3th (low)
GTX 660Ti          20K                            None                       None             25k
GTX 670            None                           10K                        None              25k
tesla k10           none                            40K                         None            25k
Quadro k5000    none                            15k                          40K            none
grid k2              none                            40K                          40K            none

I flashed it (EVGA 670GTX 2GB 915MHz) with the K5000 bios from techpowerup.
"nvflash.exe -4 -5 -6 K5000.rom" had to be used because of different subsystem and board id.

It started with minor pixel errors but booted into win7.
After driver installation and reboot win7 didn't start anymore.
Flashing it back worked without problems.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on April 13, 2013, 10:25:24 pm
To those that successfully modded their cards and run benchmarks:

Could you download the NVIDIA Inspector from here
http://www.majorgeeks.com/NVIDIA_Inspector_d6630.html (http://www.majorgeeks.com/NVIDIA_Inspector_d6630.html)
and check what power state it is in when running the benchmark.

You might want to add the benchmark to the list of programs that force the card into the P0 state
http://www.overclock.net/t/964370/howto-dual-monitor-downclocking-fix-for-nvidia-cards (http://www.overclock.net/t/964370/howto-dual-monitor-downclocking-fix-for-nvidia-cards)
and run the benchmark again.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 13, 2013, 10:50:47 pm
and check what power state it is in when running the benchmark.

P0
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on April 13, 2013, 11:37:03 pm
P0
Have you noticed improvements when running SPECviewperf (where it suppose to be most visible)?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: SeSl on April 14, 2013, 05:35:30 am
I can confirm the mod done by blanka.
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)
But I pimped it a little bit.

670GTX to K5000 works!

R4 on the front side.
R1, R2, R3 on the bottom side.

K5000 works absolutely stable for me, but has no performance increase in SPECviewperf. I tested with few different Quadro drivers.

Summary
GPU Name         R1 / 0-7 4th byte        R2 / 8-f 4th byte   R3/ 3th (high)   R4 / 3th (low)
GTX 660Ti          20K                            None                       None             25k
GTX 670            None                           10K                        None              25k
tesla k10           none                            40K                         None            25k
Quadro k5000    none                            15k                          40K            none
grid k2              none                            40K                          40K            none

I flashed it (EVGA 670GTX 2GB 915MHz) with the K5000 bios from techpowerup.
"nvflash.exe -4 -5 -6 K5000.rom" had to be used because of different subsystem and board id.

It started with minor pixel errors but booted into win7.
After driver installation and reboot win7 didn't start anymore.
Flashing it back worked without problems.

Accept my congratulations!
This, of course, sadly, that the tests do not show the increase performance. For me this is important point. Card is needed to work with CATIA, in the case of a negative result, I'll be forced to take a real K5000 :-[ Apparently, as for many readers of this thread. In any case, thanks for the work done!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: WillV on April 14, 2013, 06:11:15 am
Was wondering if there was anyone who has successfully got the EVGA GT 640 cards working?  I have the 4gb model of the one mentioned earlier and haven't been able to track down the area needed.  I've attached two pics of mine with the cooler removed.  The backside is identical to the pic posted earlier.  Any ideas or help is greatly appreciated.  I am also looking into this for a VMWare vSGA solution like others have mentioned.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 14, 2013, 08:05:13 am
Was wondering if there was anyone who has successfully got the EVGA GT 640 cards working?
Hi WillV,
Can you create photos near U10 sop-8 IC please, and post the link to back side?
Thank you.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: WillV on April 14, 2013, 08:31:41 am
Does this help?  I'll go ahead and post my pic of the back as well. 
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on April 14, 2013, 08:45:39 am
Does this help?  I'll go ahead and post my pic of the back as well.
Sorry but trace is located under u10, It is imposible to find it without ohmmeter. You need to find resistor and resistor place connected to pin 6 of u10.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: WillV on April 14, 2013, 08:50:04 am
Ah, that gives me a starting point at least.  I'll see what I can find.  Thank you.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: myweb on April 14, 2013, 09:01:31 pm
Dear All,

Could you please help me to make working configuration:
Core i5 i5-3470
Asrock z77 pro4
ASUS GT640-1GD3-L (mod Grid K1)
ASUS HD7750-DCSL-1GD5

Xen 4.2.1
Kubuntu 13.04 (Beta)
3.8.0-17-generic #27-Ubuntu SMP Sun Apr 7 19:39:35 UTC 2013 x86_64 x86_64 x86_64 GNU/Linu

The both videocards are working without Xen.
The both videocards are not working in DomU.
I tried DomU: Wondows 7, Windows 8, Kubuntu 13.04 (Beta)

I get BSOD during boot of ASUS HD7750-DCSL-1GD5 under Windows 7, 8 : atikmpag.sys
I tried to install only drivers (that is impossible to do with drivers from Ati website: windows could not find atikmpag.sys, I installed drivers from asus site)
Windows 8 has embedded driver.

I use xorg edgers ppa under ubuntu - exactly the same that works without Xen.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: zuluriney on April 15, 2013, 01:40:23 pm
Hi,
first of all, great work :)

I will be getting a Zotac ZT-60106-10P GTX 680 with 4GB RAM soon-ish and proceed to start testing..
The goal is a K5000.

does anyone have experience with ZOTACs? do they keep reference layout?
if yes, do I need to Remove the cooler or are the resistors on the back side?

Thanks to everyone ^^

Cheers
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on April 15, 2013, 06:25:16 pm
I will be getting a Zotac ZT-60106-10P GTX 680 with 4GB RAM soon-ish and proceed to start testing..
The goal is a K5000.
Why don't you get a card that is known to be moddable?
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: blanka on April 16, 2013, 12:29:16 pm
I can confirm the mod done by blanka.
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)
But I pimped it a little bit.

670GTX to K5000 works!

R4 on the front side.
R1, R2, R3 on the bottom side.

K5000 works absolutely stable for me, but has no performance increase in SPECviewperf. I tested with few different Quadro drivers.

Summary
GPU Name         R1 / 0-7 4th byte        R2 / 8-f 4th byte   R3/ 3th (high)   R4 / 3th (low)
GTX 660Ti          20K                            None                       None             25k
GTX 670            None                           10K                        None              25k
tesla k10           none                            40K                         None            25k
Quadro k5000    none                            15k                          40K            none
grid k2              none                            40K                          40K            none

I flashed it (EVGA 670GTX 2GB 915MHz) with the K5000 bios from techpowerup.
"nvflash.exe -4 -5 -6 K5000.rom" had to be used because of different subsystem and board id.

It started with minor pixel errors but booted into win7.
After driver installation and reboot win7 didn't start anymore.
Flashing it back worked without problems.

Hi, shlomo:

Thanks for your update.  I am just too lazy to fine tune my workaround for those resistor.
About the reason your windows can't start up, it is because you use the original "K5000" firmnware
DO NOT USE ANY OTHER FIRMWARE EXCEPT THEY ARE FROM THE SAME LAYOUT
The original K5000 firmware is use for 4096MB board with GTX680 layout.
Since we are using GTX670/GTX660Ti, Use the original firmware and modify the PCI Device ID is enough.
Please be aware that EVGA's firmware has 2 place that contain its Device ID.
Please use Hex editor and search 8911(hex value of GTX670) and change it to BA11.
Then use KaplerBIOSTweaker to fix the checksum or any utility you like.
This will make the board run at K5000 smoothly without any problem since you didn't change the firmware at all!!!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on April 18, 2013, 01:14:02 am
I can confirm the mod done by blanka.
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)
But I pimped it a little bit.

670GTX to K5000 works!

R4 on the front side.
R1, R2, R3 on the bottom side.

K5000 works absolutely stable for me, but has no performance increase in SPECviewperf. I tested with few different Quadro drivers.

Summary
GPU Name         R1 / 0-7 4th byte        R2 / 8-f 4th byte   R3/ 3th (high)   R4 / 3th (low)
GTX 660Ti          20K                            None                       None             25k
GTX 670            None                           10K                        None              25k
tesla k10           none                            40K                         None            25k
Quadro k5000    none                            15k                          40K            none
grid k2              none                            40K                          40K            none

I flashed it (EVGA 670GTX 2GB 915MHz) with the K5000 bios from techpowerup.
"nvflash.exe -4 -5 -6 K5000.rom" had to be used because of different subsystem and board id.

It started with minor pixel errors but booted into win7.
After driver installation and reboot win7 didn't start anymore.
Flashing it back worked without problems.

Hi, shlomo:

Thanks for your update.  I am just too lazy to fine tune my workaround for those resistor.
About the reason your windows can't start up, it is because you use the original "K5000" firmnware
DO NOT USE ANY OTHER FIRMWARE EXCEPT THEY ARE FROM THE SAME LAYOUT
The original K5000 firmware is use for 4096MB board with GTX680 layout.
Since we are using GTX670/GTX660Ti, Use the original firmware and modify the PCI Device ID is enough.
Please be aware that EVGA's firmware has 2 place that contain its Device ID.
Please use Hex editor and search 8911(hex value of GTX670) and change it to BA11.
Then use KaplerBIOSTweaker to fix the checksum or any utility you like.
This will make the board run at K5000 smoothly without any problem since you didn't change the firmware at all!!!

The problem of mine is that I got a 4G gigabyte GTX 680....which is not the same as EVGA...I can't find the correct resistors on the board...
Could someone help please?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 18, 2013, 01:39:44 am
The problem of mine is that I got a 4G gigabyte GTX 680....which is not the same as EVGA...I can't find the correct resistors on the board...
Could someone help please?

It should not make that much difference. What is the brand and model # of your card?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: victorngcm on April 18, 2013, 02:00:56 am
The problem of mine is that I got a 4G gigabyte GTX 680....which is not the same as EVGA...I can't find the correct resistors on the board...
Could someone help please?

It should not make that much difference. What is the brand and model # of your card?

Gigabyte GTX 4G
I couldn't find the Y1 element on the front but on the back
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on April 18, 2013, 02:46:53 am
Gigabyte GTX 4G
I couldn't find the Y1 element on the front but on the back

Like this? http://www.overclockzone.com/articles/zolkorn/2012/12/gigabyte_gtx_680_windforce/IMG_9112.JPG (http://www.overclockzone.com/articles/zolkorn/2012/12/gigabyte_gtx_680_windforce/IMG_9112.JPG)

Right below the rightmost memory chip, the quartz oscillator is there Y1 and then below it to the right could be an EEPROM.

Technically around the EEPROM was where all the resistors were found on most cards, perhaps some of those there are what you would be looking for.

You need to do some tracing and probing with a DMM to see what leads to the EEPROM. Also, the resistors could be on the front side directly above the area where the EEPROM is on the back.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: solarbot on April 22, 2013, 09:21:37 am
Hello folks - I have just come across your very cool thread, thanks for sharing.

I'm very keen to give this a go and have been searching for specific info on how to do this to an ASUS GTX 660 DirectCU II but without luck - so wondered if I could run the question/image below past yo'all to see if anyone else has done this or can spot the resistors in question from afar?  I'm still waiting for my card so nothing in front of me at the moment but can hopefully post some decent marked up images soon.  Wondering if anyone has anyone produced a reference for the different cards - success and fails?

Cheers for now :-)

(http://rog.asus.com/wp-content/uploads/2012/09/GTX-660-card-underside.jpg)

from:

http://rog.asus.com/161872012/graphics-cards-2/graphics-go-nifty-on-route-660-asus-geforce-gtx-660-directcu-ii-top-unboxed/  (http://rog.asus.com/161872012/graphics-cards-2/graphics-go-nifty-on-route-660-asus-geforce-gtx-660-directcu-ii-top-unboxed/)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: lightsol on April 22, 2013, 08:01:37 pm
You will probably need to take off the front cooler as well, because thats where they rest ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: solarbot on April 24, 2013, 10:05:20 am
Morning,

My ASUS GTX 660 DirectCU II arrived just now so I took it straight apart :-) - Thanks lightsol, you are spot on by the looks of it, the resistors are on the GPU side :-)

Below are the photos with resistor values - wondering if anyone can confirm that I am looking in the right place and perhaps which resistors I need to change/add/remove to make the most of the ASUS GTX 660 DirectCU II as a Quadro card- ie what is the most we can get out of this baby :-)

In case it helps the datasheet for the Serial Flash IC is here: http://www.mxic.com.tw/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/3F21BAC2E121E17848257639003A3146/$File/MX25L2006E,%203V,%202Mb,%20v1.3.pdf (http://www.mxic.com.tw/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/3F21BAC2E121E17848257639003A3146/$File/MX25L2006E,%203V,%202Mb,%20v1.3.pdf)

Might I also ask if anyone knows what size these resistors are.... 0603 or 0402 ?

Cheers.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: solarbot on April 24, 2013, 02:30:58 pm
Hi,

I was wondering if the info was available to allow us less able folk to work the resistors out ourselves - it might be in this thread already or written up somewhere else but I haven't found it yet?

I guess with the info below we would be able to track down the fix on a card by card basis?

- Which resistors are connected to with which pin on the Serial Flash chip - eg R1 connected to pin 1 on the Serial Flash chip.
- A list of resistor values that equate to device IDs - eg R1@10K, R2@25K & R3@1R = 11BA
- A list of Device IDs which reference card names - eg 11BA = Quadro 5000
- A list of GTX cards & what the metamorphose into - eg a GTX680 into a Quadro 5000

The pin out for the MX25L2006E IC is below.

Any pointers appreciated :-)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on April 25, 2013, 10:08:03 pm
This question is for those of you that have already modded to a Tesla K10, Quadro 4000 or Quadro 5000, or for that matter either GRID K1 or K2 variants:

Which (if any) settings are you able to change using nvidia-settings? See below:
http://microway.com/hpc-tech-tips/2011/12/nvidia-smi_control-your-gpus/ (http://microway.com/hpc-tech-tips/2011/12/nvidia-smi_control-your-gpus/)
Are you able to enable ECC memory settings, for example? Please try to change as many settings as you can test. :)

In Windows installations, nvidia-smi is (usually) present in %ProgramFiles%\NVIDIA Corporation\NVSMI for those that are looking for it.

There still seems to be debate as to how performance differs after a modification is done, and I'm surprised that hasn't been looked into -- virtualization is a great feature, but others are more interested in CAD performance (Quadro mods) or seeing if other nvidia-smi settings can be changed... like these:

Code: [Select]
    -e,   --ecc-config=         Toggle ECC support: 0/DISABLED, 1/ENABLED
    -p,   --reset-ecc-errors=   Reset ECC error counts: 0/VOLATILE, 1/AGGREGATE
    -c,   --compute-mode=       Set MODE for compute applications:
                                0/DEFAULT, 1/EXCLUSIVE_THREAD,
                                2/PROHIBITED, 3/EXCLUSIVE_PROCESS
    -dm,  --driver-model=       Enable or disable TCC mode: 0/WDDM, 1/TCC
    -fdm, --force-driver-model= Enable or disable TCC mode: 0/WDDM, 1/TCC
                                Ignores the error that display is connected.
          --gom=                Set GPU Operation Mode:
                                    0/ALL_ON, 1/COMPUTE, 2/LOW_DP
    -ac   --application-clocks= Specifies <memory,graphics> clocks as a
                                    pair (e.g. 2000,800) that defines GPU's
                                    speed in MHz while running applications on a GPU.
    -rac  --reset-application-clocks
                                Resets the application clocks to the default value.
    -pl   --power-limit=        Specifies maximum power management limit in watts.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Kniteman77 on April 26, 2013, 07:13:59 am
So upon reading through this thread I have a couple questions.

It Appears that you CAN unlock a GTX680 into a full K5000 /w the same pipelines, added features and performance boost.

However, it appears you CANNOT unlock a GTX670 into a K5000 /w the pipelines and performance boost.

Is there any information to the contrary on that I'm missing?

I'm trying to build a video editing MacPro and I'm looking for the best single GPU card I can throw in.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 30, 2013, 07:31:25 pm
Has anybody tried to modify a Titan into a Grid K2?
I'd like the performance of the extra shaders over the GTX680, but I specifically need it for Xen VGA passthrough. And I'm not sure what the driver will do when it sees a card that claims to be a Grid K2 with an extra thousand shaders.

Alternatively, has anyone modified a Gainward Phantom 4GB GTX680? Is the PCB a straight reference design?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: allyman on April 30, 2013, 09:58:58 pm
First of all, great work on discovering this.

Has anyone gotten Nvidia Mosaic to work on the modified cards? I modified my EVAG GTX670 to a Quadro K5000 successfully, however using the quadro driver rev 314.07 or 311.50 no mosaic support in nv control panel.  Do I have to enable it somehow?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: moisyes on May 02, 2013, 03:41:31 pm
Hi all,

I decided to have a go at finding the straps for GPU 1 on my card, with both success and failure as the result. I was able to locate them and modify the GTX690 to be a dual core Quadro K5000, but I made the stupid mistake of running it without a heatsync on the bridge chip in the middle of the two while testing. The chip quickly died from overheating when I got excited and let Linux boot into the graphical environment, and there goes my $1000 video card for the greater good, and as such donations are now more important then ever to replace this card now.

I am now running on a semi faulty GT220 (random lockups) and an AMD Radeon X300 to get my triple head working, but as you can imagine this is a very buggy configuration.

Thank you very much for you job, Gnif. I am working in a Desktop with a GTX 690 using Blender for Architectuiral Rendering. After finding these posts I adviced him And he purchased a GTX 680 GB Zotac, and I could (tks God) Mod it to Quadro K5000.I'm testing it and will take the GTX 690 for modding too. Will I need any extra heatsink to prevent what happenend to you hero card? In you opinion, will be better for my use to mod it to a dual quadro k5000 or to a K10? Thank very much in advance, Gnif.

(https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=42485)

Also that SOIC that sits near the straps I believe is the EEPROM.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on May 02, 2013, 10:03:36 pm
You do not need an extra heat sink, just make sure you put your original one back in place.

The reason gnif's 690 went up in smoke is because in haste he did not put the heat sink back on, so learn from his painful example.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 05, 2013, 10:44:35 am

Might I also ask if anyone knows what size these resistors are.... 0603 or 0402 ?

Cheers.

Judging from the pictures, these have got to be 0402. I am planning on modding my gtx680 when i get a chance.

I would like to know this ahead of time if someone knows the answer.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: justanothercanuck on May 06, 2013, 04:18:11 am
Wow, I didn't know people were still doing this...  I guess I'm a little late here, I should really browse the forums more.  :P

I remember people used to do this so they could run 3d animators and video editors that wouldn't run on the desktop cards...  I'm surprised they are skimping on the linux drivers though...  Kindof sad really, as they're all I would recommend for linux systems, as the ATI drivers were an absolute hellhole for the past 10 years.  What can you do I suppose...  :-//
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 06, 2013, 09:24:00 am
I remember people used to do this so they could run 3d animators and video editors that wouldn't run on the desktop cards...  I'm surprised they are skimping on the linux drivers though...  Kindof sad really, as they're all I would recommend for linux systems, as the ATI drivers were an absolute hellhole for the past 10 years. What can you do I suppose...  :-//

I would have to agree with you there. They were bad, but slowly getting better, though they still have some major problems.

One area where AMD/ATI shines is virtualization. I can pass a 7970 through to a Xen guest with relative ease and get native performance within the VM, useful for gaming no doubt. I believe AMD even worked to help build the code that Xen uses for the gpu passthrough.

In any case, I do not recommend nVidia on linux anymore. I did buy a gtx680 just to do this though.... mmmm FLReset.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 07, 2013, 06:56:38 pm

One area where AMD/ATI shines is virtualization. I can pass a 7970 through to a Xen guest with relative ease and get native performance within the VM, useful for gaming no doubt. I believe AMD even worked to help build the code that Xen uses for the gpu passthrough.

In any case, I do not recommend nVidia on linux anymore. I did buy a gtx680 just to do this though.... mmmm FLReset.

Both Nvidia and ATI have issues once you start straying from the basics. All you can do most of the time prioritize what you need to not be broken and pick the card which works for that specific environment. Just try getting things working reliable in both Linux and Windows with something like an IBM T221 and you'll find there's a number of pitfalls if you haven't done your research properly to begin with. Throw Xen virtualization into the mix and the number of complexities multiplies.

Regarding Xen virtualization, I haven't tried Nvidia yet (my Quadro 2000 for testing is in the post), but I sincerely hope the experience is less appalling than with the ATI. Granted, ATI cards almost work whereas desktop Nvidia cards don't work at all with VGA passthrough without a whole raft of extra Xen patches, but the experience is poor at best. The longest I've gotten out of my 6450 card I've been testing with is about 10 minutes before something odd happens and the driver decided to reset the card - at which point the VM crashes, and the only way you'll get it to boot again without BSOD-ing before the login screen is by rebooting the host. If you have more than one CPU you'll only get to the guest's login screen if you disable IRQ balancing. All in all, good enough for a demo, but absolutely not good enough for anything meaningful.

My plan is to test whether using a Quadro 2000 (drivers officially supports VGA passthrough) makes for a workable experience before I spend 4x as much on a GTX680 to modify into a Quadro K5000 or a Grid K2. Ideally I'd rather like to get a Titan and see what happens if I mod it's device ID to read as a K5000, but as far as I can tell nobody ever reported trying it, and I'd hate to end up with a Titan that I cannot use for it's intended purpose.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 07, 2013, 10:34:20 pm
Regarding Xen virtualization, I haven't tried Nvidia yet (my Quadro 2000 for testing is in the post), but I sincerely hope the experience is less appalling than with the ATI. Granted, ATI cards almost work whereas desktop Nvidia cards don't work at all with VGA passthrough without a whole raft of extra Xen patches, but the experience is poor at best. All in all, good enough for a demo, but absolutely not good enough for anything meaningful.

The patches are only 5 files, about 100 lines of code in total. They are just to read the bios from an extracted bios rather than from the card at runtime as well as a few other things that Xen can't pull dynamically, unlike AMDs. It is fairly basic code, nothing fancy.

As far as only "good enough for a demo", I will have to disagree. You may have just had a poor experience and been unfortunate enough to have an uncooperative motherboard and graphics card. I can attest the fact that the passthrough is fairly stable once it is setup properly (that's the hard part). I had it running for 2 weeks as a gaming VM and it never had a hiccup with an older 5670 of mine. It was impressive! That said, I wouldn't put this into a production environment without alot more testing.

My plan is to test whether using a Quadro 2000 (drivers officially supports VGA passthrough) makes for a workable experience before I spend 4x as much on a GTX680 to modify into a Quadro K5000 or a Grid K2. Ideally I'd rather like to get a Titan and see what happens if I mod it's device ID to read as a K5000, but as far as I can tell nobody ever reported trying it, and I'd hate to end up with a Titan that I cannot use for it's intended purpose.

Keep in mind that the Quadro series does not support FLReset. It is probably not a good idea to use that for passthrough if you plan to start and stop the VM. It will work just fine, but Xen/linux won't be able to reset the card upon VM reboot. If you have to reboot the VM you'll still need to reboot the entire machine. You may have crashes or performance degradation otherwise.

The above also applies to the K5000 if you plan to modify a Titan, there will be no FLReset.

Good luck!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 08, 2013, 06:46:03 am
Regarding Xen virtualization, I haven't tried Nvidia yet (my Quadro 2000 for testing is in the post), but I sincerely hope the experience is less appalling than with the ATI. Granted, ATI cards almost work whereas desktop Nvidia cards don't work at all with VGA passthrough without a whole raft of extra Xen patches, but the experience is poor at best. All in all, good enough for a demo, but absolutely not good enough for anything meaningful.

The patches are only 5 files, about 100 lines of code in total. They are just to read the bios from an extracted bios rather than from the card at runtime as well as a few other things that Xen can't pull dynamically, unlike AMDs. It is fairly basic code, nothing fancy.

I'm not saying it's a big deal, but it's unstable and not merged into the mainline last time I checked, which means that if you care about such niceties as package management, especially on a stable (e.g. EL6) rather than unstable bleeding edge (e.g. Fedora) distribution, you have to hunt around for the specific versions that the patches are against or versions that the patches apply against cleanly (and work). And considering that some of these things don't work too well even when extensively tested, I don't fancy my chances much with something that has been only tested by a handful of individuals.

As far as only "good enough for a demo", I will have to disagree. You may have just had a poor experience and been unfortunate enough to have an uncooperative motherboard and graphics card. I can attest the fact that the passthrough is fairly stable once it is setup properly (that's the hard part). I had it running for 2 weeks as a gaming VM and it never had a hiccup with an older 5670 of mine. It was impressive! That said, I wouldn't put this into a production environment without alot more testing.

It's not just about the motherboard or the card being uncooperative. Sure, having to disable irq balancing took a while to think of to try (google didn't find much obvious mention of it, and neither did anyone mention it on the threads I posted on xen-users). But if things work for 10 minutes, they should stay working and not randomly crash after that. And since the BSODs always refer to a device reset failure/timeout, it looks like the problem is mainly related to the driver not knowing how to reset the card properly. (Also see below re: FLreset.)

My plan is to test whether using a Quadro 2000 (drivers officially supports VGA passthrough) makes for a workable experience before I spend 4x as much on a GTX680 to modify into a Quadro K5000 or a Grid K2. Ideally I'd rather like to get a Titan and see what happens if I mod it's device ID to read as a K5000, but as far as I can tell nobody ever reported trying it, and I'd hate to end up with a Titan that I cannot use for it's intended purpose.

Keep in mind that the Quadro series does not support FLReset. It is probably not a good idea to use that for passthrough if you plan to start and stop the VM. It will work just fine, but Xen/linux won't be able to reset the card upon VM reboot. If you have to reboot the VM you'll still need to reboot the entire machine. You may have crashes or performance degradation otherwise.

The above also applies to the K5000 if you plan to modify a Titan, there will be no FLReset.

I know that they, too, lack FLreset, but I am not all that convinced that FLreset is all that necessary. Sure, it makes it a little easier for the driver to do it's job, but think about this at a low level like an embedded engineer for a moment. On the lowest level it comes down to setting registers on the device. Unless the card is poorly engineered and buggy (e.g. it drops off the bus in a questionable, un-re-attachable and uncontactable state), the driver should always be able t o set the registers to whatever they need to be to get the card to a known, initialized state, without even any help from the card's BIOS. FLreset is a nicety that means your driver doesn't have to handle the initialization of the hardware itself, but it doesn't strike me at all as a necessity to get something like this working properly.

I'll know one way or the other soon enough.

Edit: Having tried a Quadro 2000, the experience thus far is that it is even more unstable than using an ATI card. Most disappointing. I guess I won't be wasting my time modifying a GTX into a Quadro.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 10, 2013, 04:25:46 am
I know that they, too, lack FLreset, but I am not all that convinced that FLreset is all that necessary. Sure, it makes it a little easier for the driver to do it's job, but think about this at a low level like an embedded engineer for a moment. On the lowest level it comes down to setting registers on the device. Unless the card is poorly engineered and buggy (e.g. it drops off the bus in a questionable, un-re-attachable and uncontactable state), the driver should always be able t o set the registers to whatever they need to be to get the card to a known, initialized state, without even any help from the card's BIOS. FLreset is a nicety that means your driver doesn't have to handle the initialization of the hardware itself, but it doesn't strike me at all as a necessity to get something like this working properly.

I'll know one way or the other soon enough.

Edit: Having tried a Quadro 2000, the experience thus far is that it is even more unstable than using an ATI card. Most disappointing. I guess I won't be wasting my time modifying a GTX into a Quadro.


Today I have found the time to test and successfully modify my GTX 680.

I tested a K5000 and Grid K2. To my surprise neither of them supported FLReset! At least not according to `lspci`. This means I cannot issue a reset to the card through the kernel. Despite that, it worked fine. It would appear you are correct about FLReset not being necessary.

The Grid K2 was my first to test, but both cards behaved identical in my testing with a small difference after rebooting the VM.

I complied xen-4.2.1 (stable) without any patches. I did a standard vga passthrough. The real video card is actually a secondary video card in the system with this method. I installed the appropriate drivers and reboot the VM. Upon reboot everything worked as desired! It was quite easy compared to the previous mess I have been through trying to get this to work.

The "K5000" card had performance issues upon VM reboot, but it did not blue screen. I ejected the K5000 using Windows "Safely Remove Device" feature. After it came back up the performance degradation was gone and it performed perfect as far as I could test it.

Thanks go to verybigbadboy and gnif!

The Xen portion of this is a bit offtopic, so if anyone has any questions on that feel free to send me a PM.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Kniteman77 on May 12, 2013, 09:26:53 am
I'm looking at getting this (http://www.newegg.com/Product/Product.aspx?Item=N82E16814130799) card.

It seems like most of the 680's people are modding are the 2gb version, how can I tell I'll be able to mod this 4gb version?

I'm still working my way through the thread, it's quite long. :-/
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on May 13, 2013, 12:41:16 am
I posted this a while back but no one addressed it:
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg223546/#msg223546 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg223546/#msg223546)

The TL,DR version is, does modifying any particular card into Tesla K10, Quadro 4000 or Quadro 5000, or for that matter either GRID K1 or K2 variants enable nvidia-smi support for changing the settings listed in the link above? e.g. ECC/TCC support, application clocks, power limit?

Note that not all the settings may work with a particular (transformed) card. If anyone could try to modify each of the settings for their modified card I would very much appreciate it!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 13, 2013, 03:47:33 am
I posted this a while back but no one addressed it:
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg223546/#msg223546 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg223546/#msg223546)

The TL,DR version is, does modifying any particular card into Tesla K10, Quadro 4000 or Quadro 5000, or for that matter either GRID K1 or K2 variants enable nvidia-smi support for changing the settings listed in the link above? e.g. ECC/TCC support, application clocks, power limit?

Note that not all the settings may work with a particular (transformed) card. If anyone could try to modify each of the settings for their modified card I would very much appreciate it!

I have a GTX 680 modified to a Grid K2 passed through to a Windows 7 x64 xen VM. I am running the nVidia quadro/tesla/grid drivers version 320.00

Here is a pastebin of my nvidia-smi out (http://pastebin.com/8tj3M6wi)

ECC would have to be supported by the RAM, which they wouldn't install in a consumer grade card. The power features and other things I would _assume_ are also added hardware bits that physically don't exist on the card.

I am no expert on this subject or with nvidia-smi, though. If you would like me to try something else, I will. I may have just not used the correct commands.

After reading this entire thread can i conclude the following?
a GTX680 can be fairly easily modded into K5000 / K10 / Grid K2 by fixing some ID-resistors
this results in additional features (like gpu passthrough for VM's and Mosaic support)
but no performance gain for Pro apps (specviewperf 11)

Or has anyone (Gnif, VeryBigBadBoy, ReefJunkie, etc.) discovered
how to actually boost the OpenGL performance of a GTX680 ?
For many self-employed pro-users like me that would be truly awesome!

The performance boost you are asking about would have to come from a disabled feature or something to that effect. As far as I am aware, there are no disabled features related to performance. This just removed the arbitrary limitations placed on nVidia cards that have no purpose other than to get the user to upgrade to a professional card to gain access to those features.

Also, in the case of the Grid K2, the real card supports VGX. I have no gotten that to work with this card sadly. I haven't spent to much time with it yet. Just want to see it in action, play with it a little.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on May 13, 2013, 02:30:24 pm
I have a GTX 680 modified to a Grid K2 passed through to a Windows 7 x64 xen VM. I am running the nVidia quadro/tesla/grid drivers version 320.00

Here is a pastebin of my nvidia-smi out (http://pastebin.com/8tj3M6wi)

ECC would have to be supported by the RAM, which they wouldn't install in a consumer grade card. The power features and other things I would _assume_ are also added hardware bits that physically don't exist on the card.

I am no expert on this subject or with nvidia-smi, though. If you would like me to try something else, I will. I may have just not used the correct commands.
Thanks for the output. I'll give a bit of background. Under Linux, there are some card settings that cannot be read, and to my knowledge there isn't any sort of application that provides the equivalent control/monitoring of the Windows NVIDIA Inspector and EVGA Precision X/MSI Afterburner applications. At least with nvidia-smi support, monitoring under Linux would be possible if the settings are reported, however at least for your converted Grid K2, it doesn't seem like anything else is reported, boo. (i.e. no data for GPU Utilization)

The other major thing for me would be TCC support -- it turns off the card outputs and doesn't have the overhead of driving a display when you're running computational CUDA codes under Windows, for example.

Can you try these? If there was no change, nvidia-smi should say 'not supported'. If it nvidia-smi acknowledges that it's able to change any of the settings it would be great. :)

Code: [Select]
nvidia-smi -e 1
nvidia-smi -dm 1
nvidia-smi -fdm 1
nvidia-smi --gom=0
nvidia-smi -ac 2000,800
nvidia-smi -pl 250

Also, if anyone else can try these with a converted Quadro or Tesla to confirm those cards behave the same way, that'd be awesome too. (nvidia-smi doesn't explicitly state full support for GRID cards, just Tesla/Quadro)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 13, 2013, 03:59:07 pm
Also, if anyone else can try these with a converted Quadro or Tesla to confirm those cards behave the same way, that'd be awesome too. (nvidia-smi doesn't explicitly state full support for GRID cards, just Tesla/Quadro)

Quote
Supported products:
- Full Support
    - NVIDIA Tesla Line:
            S2050, C2050, C2070, C2075,
            M2050, M2070, M2075, M2090,
            X2070, X2090,
            K10, K20, K20X, K20Xm, K20c, K20m, K20s
    - NVIDIA Quadro Line:
            410, 600, 2000, 4000, 5000, 6000, 7000, M2070-Q
            K2000, K2000D, K4000, K5000, K6000
    - NVIDIA GRID Line:
            K1, K2, K340, K520

It does say it fully supports GRID K2. I can mod it over to a Tesla and check the difference (if any). I am not at home at the moment, but I will run your other commands to test it out.

My extent for using features beyond gaming is just some oclhashcat and some experimental x264 gpu stuff. Also some very rare 3D modeling stuff, not enough to care about performance. But if I am reading your post correctly, then this could give added performance in those aspects, yes?

EDIT:
Code: [Select]
nvidia-smi -e 1
nvidia-smi -dm 1
nvidia-smi -fdm 1
nvidia-smi --gom=0
nvidia-smi -ac 2000,800
nvidia-smi -pl 250

All features came back as "not supported for GPU"
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on May 13, 2013, 05:46:40 pm
It does say it fully supports GRID K2. I can mod it over to a Tesla and check the difference (if any). I am not at home at the moment, but I will run your other commands to test it out.

My extent for using features beyond gaming is just some oclhashcat and some experimental x264 gpu stuff. Also some very rare 3D modeling stuff, not enough to care about performance. But if I am reading your post correctly, then this could give added performance in those aspects, yes?

Well, TCC mode is a Windows exclusive setting. It disables the display outputs, so it would only be useful for running applications that don't depend on a display -- running CUDA code that just crunches numbers is one of those situations. Here's a bit more details about it: http.developer.nvidia.com/ParallelNsight/2.1/Documentation/UserGuide/HTML/Content/Tesla_Compute_Cluster.htm (http://http.developer.nvidia.com/ParallelNsight/2.1/Documentation/UserGuide/HTML/Content/Tesla_Compute_Cluster.htm)

I guess nvidia-smi executables have different verbiage between versions or perhaps even architectures. Under Win 7 x64, 314.14 driver, nvidia-smi 4.314.14 version reports:

Code: [Select]
Supported products:
- Full Support
    - NVIDIA Tesla Line:
            S2050, C2050, C2070, C2075,
            M2050, M2070, M2075, M2090,
            X2070, X2090,
            K10, K20, K20X
    - NVIDIA Quadro Line:
            4000, 5000, 6000, 7000, M2070-Q, 600, 2000, 3000M and 410
    - NVIDIA GeForce Line:            None

which is why I thought GRID K2 wasn't supported fully. Thanks for testing, look forward to seeing if by any chance any of the mode changes work. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: snakema on May 15, 2013, 10:28:23 am
hello
after a google search I found the forum and I appreciated this article.
if anyone can help me find the right card for the edit.
thank you
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: lightsol on May 15, 2013, 05:39:36 pm
hello
after a google search I found the forum and I appreciated this article.
if anyone can help me find the right card for the edit.
thank you

Grab the 680, that card has been modded the most so far :).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: snakema on May 16, 2013, 08:24:56 am
hello
after a google search I found the forum and I appreciated this article.
if anyone can help me find the right card for the edit.
thank you

Grab the 680, that card has been modded the most so far :).



is that it will be a real Quadro K5000?
performance, quality ...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on May 16, 2013, 11:35:23 pm
is that it will be a real Quadro K5000?
performance, quality ...

It will not be a real K5000 in performance and quality, but it should allow certain options not available to gaming (GTX) series of cards, useful for virtualization etc.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: snakema on May 17, 2013, 07:59:17 am
is that it will be a real Quadro K5000?
performance, quality ...

It will not be a real K5000 in performance and quality, but it should allow certain options not available to gaming (GTX) series of cards, useful for virtualization etc.


you can talk to me options unlocked?
I want to know if I was interested or not.
thanks
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 17, 2013, 05:59:30 pm
hello
after a google search I found the forum and I appreciated this article.
if anyone can help me find the right card for the edit.
thank you

Grab the 680, that card has been modded the most so far :).



is that it will be a real Quadro K5000?
performance, quality ...

As far as I am aware, the only feature you won't get is the ECC memory. Everything else will be the same, except maybe the clock speeds. Quadro cards tend to be clocked a little more conservatively. GeForce cards tend to be pre-overclocked right to their thermal and stability limits, and occasionally beyond.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on May 17, 2013, 06:40:48 pm
As far as I am aware, the only feature you won't get is the ECC memory...
Nobody (so far) has demonstrated that a modded 670/680 card can score the same as Quadro/Tesla/Grid in specviewperf11.
And that is the single most important reason why the pro cards are 3-4 times the $$$ of the GTXs...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on May 18, 2013, 01:13:12 am
Nobody (so far) has demonstrated that a modded 670/680 card can score the same as Quadro/Tesla/Grid in specviewperf11.
And that is the single most important reason why the pro cards are 3-4 times the $$$ of the GTXs...

You are absolutely right, and nobody will demonstrate it, because the cards will not score the same.

Many people fail to realize that Nvidia is also reading the Web and following what is going on with all these mods. They did not sit idly for the 4xx to 5xx transition where the soft-switch mod stopped working. And with the 6xx series they've most likely added more roadblocks to prevent any entrepreneurial people from causing them any further revenue loss.

Doing this for them is very easy, after all they are the ones who engineered the chips and so they have all the information needed. We are for the most part tapping in the dark, finding things out through trial and error.

I'd love to be proven wrong but as it stands, the facts point otherwise.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: seneelya on May 18, 2013, 10:08:49 am
so one block have been successfully passed  - that was hardware straps and driver instalation. I think  one more left. It must be somewhere  in BIOS, perhaps OGL features report. May be we need to check it between origonal quadro and moded? Is there some difference present or not?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: seneelya on May 18, 2013, 10:25:44 am
here is my AIDA64 report for quadro4000

may be it can somehow help if we compare features
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 18, 2013, 10:27:50 am
As far as I am aware, the only feature you won't get is the ECC memory. Everything else will be the same, except maybe the clock speeds. Quadro cards tend to be clocked a little more conservatively. GeForce cards tend to be pre-overclocked right to their thermal and stability limits, and occasionally beyond.

In fact, nothing changes. You get no performance benefit. You get no additional features save the added features provided by the driver itself. According to lspci no additional features were reported as available. According to nvidia-smi no additional features could be accessed.

The card is not faster or slower than the card it originally was.

The only reason to mod this is if you need to use the professional drivers for some reason.

This has all been covered multiple times (including the original post...).

Many people fail to realize that Nvidia is also reading the Web and following what is going on with all these mods. They did not sit idly for the 4xx to 5xx transition where the soft-switch mod stopped working. And with the 6xx series they've most likely added more roadblocks to prevent any entrepreneurial people from causing them any further revenue loss.

Doing this for them is very easy, after all they are the ones who engineered the chips and so they have all the information needed. We are for the most part tapping in the dark, finding things out through trial and error.

I do not have a Tesla K10 or a Grid K2 to compare, but in this case I do believe physical hardware bits are missing allowing some of these features. I would love to have one to examine for a day or two just to look it over.

Then again these could all just be features locked by the bios. I am not about to got flash a different bios just yet.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on May 18, 2013, 02:38:52 pm
You are absolutely right, and nobody will demonstrate it, because the cards will not score the same.
Oka-a-ay...
I'd love to be proven wrong...
So, what is it that you think? It can be done or not?

You can't have it both ways...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on May 18, 2013, 03:24:24 pm
Oka-a-ay...
???

So, what is it that you think? It can be done or not?

You can't have it both ways...
In principle, anything can be done and I do have some ideas to explore, just waiting for a GTX card to arrive in the mail.

I opted to get a GTX 5xx because interwebs say 6xx series appears to be optimized towards gaming and not business applications, and is sub-par in performance to 5xx.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 20, 2013, 07:38:51 am
As far as I am aware, the only feature you won't get is the ECC memory...
Nobody (so far) has demonstrated that a modded 670/680 card can score the same as Quadro/Tesla/Grid in specviewperf11.
And that is the single most important reason why the pro cards are 3-4 times the $$$ of the GTXs...

Two points:
1) What software do you use that is particularly well approximated with specviewperf11?
2) How much of a difference are we talking about? 300% difference, roughly equivalent to the difference in the price tag? I doubt it.

I can understand that ECC might be required for some application where reliability and correctness of calculations is paramount (science/research headless number crunching), but in the vast majority of cases it isn't particularly useful. In virtually all cases, people who are interested in a cheap alternative to Quadro cards only want compatibility with their software (e.g. for a driver that handles VGA passthrough without requiring additional hypervisor patches). A few % of performance difference between a GeForce and an equivalent Quadro will make no difference to the vast majority of people. If anything, for most people the GeForce will be faster because it is clocked slightly higher.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 20, 2013, 07:42:07 am
Oka-a-ay...
???

So, what is it that you think? It can be done or not?

You can't have it both ways...
In principle, anything can be done and I do have some ideas to explore, just waiting for a GTX card to arrive in the mail.

I opted to get a GTX 5xx because interwebs say 6xx series appears to be optimized towards gaming and not business applications, and is sub-par in performance to 5xx.

How exactly do you figure the use case in which 1536 shaders is not at least as good as 512 shaders? I'm pretty sure a GTX680 will outperform a GTX580 in every way possible.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on May 20, 2013, 01:54:32 pm
How exactly do you figure the use case in which 1536 shaders is not at least as good as 512 shaders? I'm pretty sure a GTX680 will outperform a GTX580 in every way possible.

Interwebs is your friend...why don't you do a search and find out. Bigger is not always better. ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 20, 2013, 06:42:03 pm
How exactly do you figure the use case in which 1536 shaders is not at least as good as 512 shaders? I'm pretty sure a GTX680 will outperform a GTX580 in every way possible.

Interwebs is your friend...why don't you do a search and find out. Bigger is not always better. ;)

And I'm asking you to cite a well informed source with scrutinizable empirical evidence. Surely you aren't about to claim that "it must be true because I read it on the internet".
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: lightsol on May 20, 2013, 07:14:03 pm
How exactly do you figure the use case in which 1536 shaders is not at least as good as 512 shaders? I'm pretty sure a GTX680 will outperform a GTX580 in every way possible.

Interwebs is your friend...why don't you do a search and find out. Bigger is not always better. ;)

And I'm asking you to cite a well informed source with scrutinizable empirical evidence. Surely you aren't about to claim that "it must be true because I read it on the internet".

http://www.anandtech.com/show/5699/nvidia-geforce-gtx-680-review/17 (http://www.anandtech.com/show/5699/nvidia-geforce-gtx-680-review/17)

or if you dont believe that, then just google some more benches and tests.
Anyways, don't get offtopic please :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on May 20, 2013, 08:09:04 pm
http://www.anandtech.com/show/5699/nvidia-geforce-gtx-680-review/17 (http://www.anandtech.com/show/5699/nvidia-geforce-gtx-680-review/17)

or if you dont believe that, then just google some more benches and tests.
Anyways, don't get offtopic please :)

I was going to suggest he does his own homework, as it's not right for any of us to do it for him. :)

There are many benchmarks in which 680 appears faster, but in actuality once you move into a real world and forget synthetic tests, the picture is totally different.

For example Adobe CS applications, Apple Motion and Final Cut Pro, DaVinci Resolve, etc. Then in the 3D land, most content creation packages perform better with older generations of NVidia chips such as 5xx, 4xx etc. They are closer to their equivalent Quadro chips and could potentially be modded to Quadro as well.

With 6xx, NVidia has clearly decided to separate gaming from business applications. They really want you to spend the big bucks on their pro-line (Quadro) for anything "serious" and so modding the 6xx will only take you so far. As I said before, they are not sitting idly either, waiting for modders to make their moves.

What's mind boggling is that it appears both 6xx and Quadro Kxxx chips come from the same factory line and the former are just crippled versions of the later; or those that don't pass QA testing for pro-line. But, we've already discussed that here, in the earlier posts...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: SeSl on May 21, 2013, 04:06:14 am
Good day to all!


What's mind boggling is that it appears both 6xx and Quadro Kxxx chips come from the same factory line and the former are just crippled versions of the later; or those that don't pass QA testing for pro-line. But, we've already discussed that here, in the earlier posts...

It's sad, but it seems to be true. Maybe they do chip selection. It is also possible that the ECC is a beacon validity of pro-series.

Anyway, my EVGA 04G-P4-3687-KR GeForce 4GB GTX 680 for mod in a way. A month ago, paid for it on Amazon. Parcels into Russia are long time. If nothing comes out, it will be waste of money and time. Game card I do not need a gift, and for the K5000 will have to pay anyway.The hope was, that collective brainstorm will give a positive result. The hope dies last.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: seneelya on May 21, 2013, 10:45:54 am
anybody reads me?

can we compare real quadro and fake one features reports?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 21, 2013, 01:24:49 pm
Small update:

I know most of you are trying to get professional cards out of consumer, I just want a card for passthrough so I could game "on linux". In every test I have run, this GTX680 modded to a Grid K2 runs exactly the same as the GTX680 except with Physx. Physx doesn't work with the "professional" drivers so I forced the consumer drivers to install. They work and run fine and now Physx will say it is enabled, but the card will not do any of the work. It offloads everything to the CPU while still reporting it is working to the program. Its a bit strange and annoying. Going to mod it back to confirm my results and trying a Telsa mod just in case that will support it (probably not).

Nvidia, if you are reading this, I just want virtualization FOR PLAYING GAMES. Seriously, AMD actually worked with the community on this one, why can't you just enable it? It clearly works fine.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: eos on May 22, 2013, 01:42:17 am
Two points:
1) What software do you use that is particularly well approximated with specviewperf11?
2) How much of a difference are we talking about? 300% difference, roughly equivalent to the difference in the price tag? I doubt it.
See this post
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155)
and the xbitlab link within
http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html (http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html)

The latter lists programs (software) and what specviewperf11 expect in pro-cards vs. gaming GTXs.

Those should answer both your questions...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on May 22, 2013, 09:43:58 am
Hello all again :)
I have a new palit gtx 650 2gb card and successfully modificated it into grid k1.
Looks like palit have a reference card.
modification steps same asGT 640 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332). BIOS modification needed too.

Picture with resistor places attached.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vsgan on May 22, 2013, 05:20:17 pm
Does the card actually work as NVIDIA GRID VGX after modification? e.g. vmware vsphere vgsa?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vsgan on May 22, 2013, 05:31:43 pm
Small update:

I know most of you are trying to get professional cards out of consumer, I just want a card for passthrough so I could game "on linux". In every test I have run, this GTX680 modded to a Grid K2 runs exactly the same as the GTX680 except with Physx. Physx doesn't work with the "professional" drivers so I forced the consumer drivers to install. They work and run fine and now Physx will say it is enabled, but the card will not do any of the work. It offloads everything to the CPU while still reporting it is working to the program. Its a bit strange and annoying. Going to mod it back to confirm my results and trying a Telsa mod just in case that will support it (probably not).

Nvidia, if you are reading this, I just want virtualization FOR PLAYING GAMES. Seriously, AMD actually worked with the community on this one, why can't you just enable it? It clearly works fine.

How did you force the driver to install?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 22, 2013, 06:56:12 pm
Small update:

I know most of you are trying to get professional cards out of consumer, I just want a card for passthrough so I could game "on linux". In every test I have run, this GTX680 modded to a Grid K2 runs exactly the same as the GTX680 except with Physx. Physx doesn't work with the "professional" drivers so I forced the consumer drivers to install. They work and run fine and now Physx will say it is enabled, but the card will not do any of the work. It offloads everything to the CPU while still reporting it is working to the program. Its a bit strange and annoying. Going to mod it back to confirm my results and trying a Telsa mod just in case that will support it (probably not).

Nvidia, if you are reading this, I just want virtualization FOR PLAYING GAMES. Seriously, AMD actually worked with the community on this one, why can't you just enable it? It clearly works fine.

+1

I actually had more success with PhysX. My Win7 64-bit VM with a Quadro 2000 worked fine with PhysX once I installed the PhysX package in addition to the Quadro drivers. I haven't checked whether it was offloading onto the CPU or not, though, but games and GPU-Z all reported PhysX capability.

On XP64, however, that didn't work - no PhysX on the Quadro 2000, with or without the PhysX software installed.

In the end, I gave up on Nvidia and decided to save myself money, modding effort and time and just got an ATI card instead, because I, too, only wanted a decent GPU to game with in a VM without having to dual boot machine. At least until Steam has a better selection of Linux capable games and get their client software working without requiring bleeding edge glibc.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 22, 2013, 07:42:33 pm
Does the card actually work as NVIDIA GRID VGX after modification? e.g. vmware vsphere vgsa?

I tried a GTX 680 > Grid K2 and it did not work. I was sad.

How did you force the driver to install?

The Quadro K5000 is supported by the "consumer" graphics but it will lockup on VM boot with those drivers.

The Grid K2 is not supported, but since my card is for all intents and purposes a GTX 680 the drivers should work fine. I just did some inf edits to add the new strings for the card. The driver will not be a signed driver for that PCI ID though. Doesnt affect performance, but it will throw warnings.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 22, 2013, 07:50:27 pm
I actually had more success with PhysX. My Win7 64-bit VM with a Quadro 2000 worked fine with PhysX once I installed the PhysX package in addition to the Quadro drivers. I haven't checked whether it was offloading onto the CPU or not, though, but games and GPU-Z all reported PhysX capability.

I may retract my CPU offloading comment later. After modding to a k5000 again the physx score is the same. Both grid and quadro report supporting phsyx, but they both only give the same performance as my aging cpu.

Setting up a new windows install to test the card types to verify everything.

In the end, I gave up on Nvidia and decided to save myself money, modding effort and time and just got an ATI card instead, because I, too, only wanted a decent GPU to game with in a VM without having to dual boot machine. At least until Steam has a better selection of Linux capable games and get their client software working without requiring bleeding edge glibc.

I use a chroot for steam on linux so I dont break the rest of my system or have it all bleeding edge. Space isnt an issue now a days and there is no less performance. Annoying, but workable.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vsgan on May 23, 2013, 04:05:50 am
I just did some inf edits to add the new strings for the card. The driver will not be a signed driver for that PCI ID though. Doesnt affect performance, but it will throw warnings.

Could you share the method for modifying the driver? I tried to add some strings for my hardware id but the driver still cannot install correctly. Thanks.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on May 23, 2013, 07:40:48 am
Does the card actually work as NVIDIA GRID VGX after modification? e.g. vmware vsphere vgsa?
I tested vga passthrough with xen only. It works fine.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 23, 2013, 02:55:04 pm
Does the card actually work as NVIDIA GRID VGX after modification? e.g. vmware vsphere vgsa?
I tested vga passthrough with xen only. It works fine.

That is different than the vGPU offered by VGX. vGPU in VGX (http://www.nvidia.com/object/grid-vgx-software.html) did not work. I may play around with it more later to figure it out if it is possible.

Update on Physx offloading to cpu:
Turns out this is a well known issue. nVidia disables a bunch of stuff when it is not the primary graphics card in the OS. This is the case with typical vga passthrough and xen. I am trying to get primary passthrough to work now.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 23, 2013, 09:07:33 pm

In the end, I gave up on Nvidia and decided to save myself money, modding effort and time and just got an ATI card instead, because I, too, only wanted a decent GPU to game with in a VM without having to dual boot machine. At least until Steam has a better selection of Linux capable games and get their client software working without requiring bleeding edge glibc.

I use a chroot for steam on linux so I dont break the rest of my system or have it all bleeding edge. Space isnt an issue now a days and there is no less performance. Annoying, but workable.

You could just install a newer glibc as required into a separate path and set LD_LIBRARY_PATH before invoking steam. LD_LIBRARY_PATH gets evaluated before ld.so.conf. No need for a full chroot. Just make sure your newer glibc isn't in one of the directories referenced in ld.so.conf or ld.so.conf.d.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: lightsol on May 28, 2013, 10:23:00 am
anyone have luck with the actual VGX? It would be pretty damn nice if the gpu could be spread out to 10+ VM's at the same time
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on May 28, 2013, 03:47:05 pm
anyone have luck with the actual VGX? It would be pretty damn nice if the gpu could be spread out to 10+ VM's at the same time

I spent this past weekend working on that. Nothing.

I still have a few avenues to go down before I give up.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: winjet1 on May 28, 2013, 04:03:36 pm
anyone have luck with the actual VGX? It would be pretty damn nice if the gpu could be spread out to 10+ VM's at the same time

Here's the issue........

If you are just passing a 680 -> VGX card to a VM, there's really nothing special there.  You are just doing a hardware passthrough and since 5.1, pass-through has been pretty stable.

If you are using a 680 -> VGX to do sVGA, then you are truely trying to use a VGX as intended.  To use it here you have to enable a few things in VMware (see below).

http://communities.vmware.com/thread/415887?start=30&tstart=0 (http://communities.vmware.com/thread/415887?start=30&tstart=0)

Sadly, VMware's 3D drivers are really not up to par to run things like games.  In addition you can only farm out 256Mb of RAM and 256Mb of vRAM per VM (can you remember the last game you played on a 256Mb card?  Bet it wasn't Crysis 2).

Microsoft's Hyper-V and Citrix may be a better solution.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vsgan on June 02, 2013, 09:19:00 pm
Does any vendor other than vmware have a stable shared graphic acceleration solution at this point? especially for *nix
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: lightsol on June 04, 2013, 04:52:20 pm
Well from my experience RemoteFX is great, but it needs a lot of configuration
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 05, 2013, 01:09:36 am
RemoteFX is great, seconded.

I have not tried this yet, I will setup a Server 2012 tonight to test that. I will try it 2 ways, natively and then through xen. Thats right, Server 2012 with GPU passthrough, running vms using the GPU. How cool would that be? I am not so familiar with Hyper-V to know if that will work inside of a Xen domU, I suspect not. Maybe it won't whine to much about the extensions it doesnt have access to.

According to an nVidia blog post about remoteFX (http://blogs.msdn.com/b/rds/archive/2010/07/08/more-partner-momentum-around-microsoft-remotefx-in-windows-server-2008-r2-sp1-beta.aspx), Quadro cards support remoteFX. This post was a few years prior to GRID cards, but I believe they should work too.

Will get back to the community on this.

PS: Through some testing and config verification, the offloading physx and poor GPU performance in passthrough was a problem with my mobo not truly supporting xen. Upgraded and everything is great. It is truly wonderful. (Plus I have an onboard iGPU to passthrough now, yay!)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: lightsol on June 05, 2013, 08:06:17 am
Try with the just released Server 2012 R2 preview , i heard that they upgraded the hyper-v engine even more, maybe there are some good RemoteFX upgrades as well :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: function on June 06, 2013, 12:59:39 am
I know that they, too, lack FLreset, but I am not all that convinced that FLreset is all that necessary. Sure, it makes it a little easier for the driver to do it's job, but think about this at a low level like an embedded engineer for a moment. On the lowest level it comes down to setting registers on the device. Unless the card is poorly engineered and buggy (e.g. it drops off the bus in a questionable, un-re-attachable and uncontactable state), the driver should always be able t o set the registers to whatever they need to be to get the card to a known, initialized state, without even any help from the card's BIOS. FLreset is a nicety that means your driver doesn't have to handle the initialization of the hardware itself, but it doesn't strike me at all as a necessity to get something like this working properly.

And I believe that is exactly the problem, GPU vendors do not want to reveal the initialization and setup of their hardware lest they end up revealing their IP. So the video bios does a lot of heavy lifting for bootstrapping the GPU. intel opregion is at least nice in that it allows for complete OS (in contrast to part firmware) based initialization.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 06, 2013, 06:38:57 am
I know that they, too, lack FLreset, but I am not all that convinced that FLreset is all that necessary. Sure, it makes it a little easier for the driver to do it's job, but think about this at a low level like an embedded engineer for a moment. On the lowest level it comes down to setting registers on the device. Unless the card is poorly engineered and buggy (e.g. it drops off the bus in a questionable, un-re-attachable and uncontactable state), the driver should always be able t o set the registers to whatever they need to be to get the card to a known, initialized state, without even any help from the card's BIOS. FLreset is a nicety that means your driver doesn't have to handle the initialization of the hardware itself, but it doesn't strike me at all as a necessity to get something like this working properly.

And I believe that is exactly the problem, GPU vendors do not want to reveal the initialization and setup of their hardware lest they end up revealing their IP. So the video bios does a lot of heavy lifting for bootstrapping the GPU. intel opregion is at least nice in that it allows for complete OS (in contrast to part firmware) based initialization.

I think you got that backwards. If they implemented FLR, they would need to reveal _less_ because the reset would be a single, standards defined call to reset the card without having to reveal _anything_ about the hardware. What using proprietary initialization does do, however, is make it more difficult for open source drivers to be written. This enables companies like Nvidia to charge you 5x the amount for the same hardware just for changing 2 resistors and half a byte of firmware to get access to the "pro" feature set of the driver.

It's not about protecting the IP - it's about protecting the high-margin revenue streams.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: function on June 10, 2013, 09:09:58 am
I know that they, too, lack FLreset, but I am not all that convinced that FLreset is all that necessary. Sure, it makes it a little easier for the driver to do it's job, but think about this at a low level like an embedded engineer for a moment. On the lowest level it comes down to setting registers on the device. Unless the card is poorly engineered and buggy (e.g. it drops off the bus in a questionable, un-re-attachable and uncontactable state), the driver should always be able t o set the registers to whatever they need to be to get the card to a known, initialized state, without even any help from the card's BIOS. FLreset is a nicety that means your driver doesn't have to handle the initialization of the hardware itself, but it doesn't strike me at all as a necessity to get something like this working properly.

And I believe that is exactly the problem, GPU vendors do not want to reveal the initialization and setup of their hardware lest they end up revealing their IP. So the video bios does a lot of heavy lifting for bootstrapping the GPU. intel opregion is at least nice in that it allows for complete OS (in contrast to part firmware) based initialization.

I think you got that backwards. If they implemented FLR, they would need to reveal _less_ because the reset would be a single, standards defined call to reset the card without having to reveal _anything_ about the hardware. What using proprietary initialization does do, however, is make it more difficult for open source drivers to be written. This enables companies like Nvidia to charge you 5x the amount for the same hardware just for changing 2 resistors and half a byte of firmware to get access to the "pro" feature set of the driver.

It's not about protecting the IP - it's about protecting the high-margin revenue streams.

FLR however is only for resetting the device at the PCI bus level, not actually bootstrapping and loading of firmware to the ICs, DSPs etc on the board. E.g. PCI devices also support PCI reset via D3-D0 transition but that doesn't reinitialize the hardware after it has been reset either. I would also think that moving this complicated device initialization to the HDL would make board specific customizations unnecessarily complex.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gpvecchi on June 10, 2013, 08:38:41 pm
Hallo! I'd need to convert my MSI GTX 680 Lightning into a GTX 770 Lightning as I need a card to SLI (680 are unavailable!)...
Flashing the bios doesn't change device ID, so I suppose I need this hack... Any help, please?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on June 10, 2013, 09:10:18 pm
Hallo! I'd need to convert my MSI GTX 680 Lightning into a GTX 770 Lightning as I need a card to SLI (680 are unavailable!)...
Flashing the bios doesn't change device ID, so I suppose I need this hack... Any help, please?

Hello, You may try to change device ID using gtx 680 guide (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)
I updated resistors values for gtx 770.
Thank you ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on June 10, 2013, 09:20:24 pm
May be it is offtopic but I have question:
Did anyone try to flash bios from 670 to 680? will it lock cores?
If we unable unlock cores, may be we need to find how to lock it? ;)

It is really interesting to know function of near located resisors. ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gpvecchi on June 11, 2013, 07:57:26 pm
Hallo! I'd need to convert my MSI GTX 680 Lightning into a GTX 770 Lightning as I need a card to SLI (680 are unavailable!)...
Flashing the bios doesn't change device ID, so I suppose I need this hack... Any help, please?

Hello, You may try to change device ID using gtx 680 guide (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)
I updated resistors values for gtx 770.
Thank you ;)
Great! Thank you very much! I just hope that Lightning PCB doesn't differ in that point...
EDIT: PCB is very different... Could you please help me find resistor n.3 in this hires image?
http://img823.imageshack.us/img823/9379/backfullb.jpg (http://img823.imageshack.us/img823/9379/backfullb.jpg)
Thanks!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 12, 2013, 05:45:25 am
@gpvecchi

An image of the other side may be useful. I am assuming this is the "MSI GTX 680 Lightning" you spoke about previously.

R3 is possibly this one. (http://i.imgur.com/oKdeXET.jpg) Check to see if that is a 5k resistor. It should be if this is a GTX680. All the pieces seem to be there, just shifted around a bit.



@Anyone following GPU passthrough or GPU sharing

I moved this past weekend. It was a bit overly ambition of me to try and test a new server setup before. I will attempt Hyper-V on Server 2012 this weekend.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gpvecchi on June 12, 2013, 09:23:57 am
Yes, that's the PCB of the MSI GTX 680 Lightning (more power phases and military class components on custom PCB)...
This is the front side:
http://img405.imageshack.us/img405/8878/frontfulle.jpg (http://img405.imageshack.us/img405/8878/frontfulle.jpg)
Thank you!
P.S.: Do someone know the difference between GK104-400 of the 680 and the GK104-425 of the 770?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ret on June 12, 2013, 11:07:25 am
Hi all!

First of all thanks for all your hard work, i really appreciate the "jailbreaking" way :)

Which card would you recommend for modding to a K1 card? I'd like to setup a lab to show off all the new 3D features which were introduced by Citrix - XenServer and vSphere supports GPU virtualization and this workaround would be awesome. Otherwise i'd have to spend ~ 2.000$ for a K1 card.

Thanks!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: vgeek on June 12, 2013, 02:40:28 pm
For you who like to try these cards in vSphere and Horizon View 5.2, there is a new whitepaper from VMware that explains how to configure both vSGA (Shared GPU) and vDGA (Dedicated GPU):

http://www.vmware.com/files/pdf/techpaper/vmware-horizon-view-graphics-acceleration-deployment.pdf (http://www.vmware.com/files/pdf/techpaper/vmware-horizon-view-graphics-acceleration-deployment.pdf)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: maxlapshin on June 12, 2013, 07:54:32 pm
Is it possible to download nvidia bios under linux?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 13, 2013, 06:25:07 am
Bah. I just modified my GTX580 into a Quadro 7000 only to find out that my main/only reason for modifying it (gaming in a VM) is not applicable on this card - Quadro 7000 is not supported for VGA passthrough!  :palm:
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on June 13, 2013, 07:08:24 am
Bah. I just modified my GTX580 into a Quadro 7000 only to find out that my main/only reason for modifying it (gaming in a VM) is not applicable on this card - Quadro 7000 is not supported for VGA passthrough!  :palm:

Hello :)
You may try to change device id to quadro 6000. :) I think it is strange to mod 1-GPU GeForce card to 2-GPU Quadro. ;)
Also can you provide picture with resistors positions please :)?

Thank you ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 13, 2013, 12:09:44 pm
You may try to change device id to quadro 6000. :)

That was what I looked into first, but the device ID between 580 and 7000 can be adjusted by only twiddling the bottom 5 bits o fthe ID. To go all the way to the 6000 requires modifying the bottom 13 bits, which is more difficult.

I think it is strange to mod 1-GPU GeForce card to 2-GPU Quadro. ;)

You mean like modifying a GTX680 to a Grid K2? :)
Anyway, Quadro 7000 is a single-GPU card. I suspect you are confusing Quadro 7000 with QuadroPlex 7000. The latter is an external PCIe enclosure with two Q7000 cards in it. A Q7000 card is essentially identical spec to a GTX580, apart from having 2-4x the RAM on-board (6GB on Q7000 vs. 1.5-3GB on a 580).

Also can you provide picture with resistors positions please :)?

I'll see what I can do, but I lack a decent digital camera to do this with, and my cheap ass Android phone's camera barely has enough dots to make people's faces vaguely recognizable (as in recognizable as human), let alone surface mount components. :(
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on June 13, 2013, 01:59:51 pm
You may try to change device id to quadro 6000. :)

That was what I looked into first, but the device ID between 580 and 7000 can be adjusted by only twiddling the bottom 5 bits o fthe ID. To go all the way to the 6000 requires modifying the bottom 13 bits, which is more difficult.
You found one of resistors, It's very good :) May be I try to find second one? ;)
I think it is possible to find photo via google, can you provide your card name please?

I looked bios from 580. It is different than 600 series bios ;) but I don't see any softs straps in bios. Looks like "and" and "or" masks allow any values. If I right It means you need only hardware mod ;)

thank you ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 14, 2013, 02:09:38 am
After my failure to get a GTX580 to do what I want, I got my hands on a cheap GTS450 (thanks for your investigation on those cards earlier on the thread). Successfully modified it to a Q2000.

Good news: Works fine for gaming in a Xen VM. :)
Bad news: There is absolutely no performance boost in SPECviewperf from modifying them to Quadros. I have a genuine Quadro 2000 and that utterly annihilates the modified GeForce card in SPECviewperf.

The thing is - I cannot figure out why. I went as far as flashing a Q2000 BIOS to a GTS450, hacked about with the BIOS, compared clocks, GPU-Z and CUDA-Z info, and absolutely everything I can see shows that the GTS450 should be about 50% faster because it has the same number of shaders and memory and is clocked about 50% higher.

What is the special ingredient that makes the drivers decide to use a non-crippled OpenGL renderer? They clearly identify the card as a quadro, otherwise it wouldn't work in the VM. Most perplexing...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 14, 2013, 02:30:52 pm
What is the special ingredient that makes the drivers decide to use a non-crippled OpenGL renderer? They clearly identify the card as a quadro, otherwise it wouldn't work in the VM. Most perplexing...

I suppose I should ask. You are running the Quadro drivers, yes?

Also, try these performance tests under native windows, not through Xen. You have to do some wierd stuff to get full options under Xen.

Bah. I just modified my GTX580 into a Quadro 7000 only to find out that my main/only reason for modifying it (gaming in a VM) is not applicable on this card - Quadro 7000 is not supported for VGA passthrough!  :palm:

Nether is the K5000. (http://www.dwhynes.com/nvidia-quadro-k5000/) It still works. I would suggest using the Geforce drivers and checking that. When modding to the Quadro on my card, it had different results when using the Geforce vs Quadro drivers.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 14, 2013, 05:02:24 pm
What is the special ingredient that makes the drivers decide to use a non-crippled OpenGL renderer? They clearly identify the card as a quadro, otherwise it wouldn't work in the VM. Most perplexing...

I suppose I should ask. You are running the Quadro drivers, yes?

Of course.

Also, try these performance tests under native windows, not through Xen. You have to do some wierd stuff to get full options under Xen.

I am running them on bare metal Windows.

Bah. I just modified my GTX580 into a Quadro 7000 only to find out that my main/only reason for modifying it (gaming in a VM) is not applicable on this card - Quadro 7000 is not supported for VGA passthrough!  :palm:

Nether is the K5000. (http://www.dwhynes.com/nvidia-quadro-k5000/) It still works. I would suggest using the Geforce drivers and checking that. When modding to the Quadro on my card, it had different results when using the Geforce vs Quadro drivers.

I uninstalled the GeForce drivers - they are newer and clobber the Quadro drivers. WEIRD things happen when you have a GeForce and a Quadro in the same system. But putting in a Q2000 on it's own makes SPECviewperf go fast. Pulling it and replacing it with a modified GTS450 makes it go slow. Same driver, same version, according to device manager.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 14, 2013, 06:56:40 pm
Quick question guys - regarding the GTX690 mod - can the ID of both GPUs be modified? I'm pondering unifying two gaming rigs into one. Get a GTX690, pass one GPU to each VM. One big box, 2 monitors, 2 keyboards, and 1x GTX690->Grid K2 seems like a neater solution than 2x GTX680s (that and I'm a little short PCIe slots for other things need in there).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: free_electron on June 14, 2013, 08:39:43 pm

What is the special ingredient that makes the drivers decide to use a non-crippled OpenGL renderer? They clearly identify the card as a quadro, otherwise it wouldn't work in the VM. Most perplexing...

fusebits in the core. disabled. you think NVidia is so stupid that it would simply be a few resistors on the outside ?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 14, 2013, 11:59:05 pm
@gordan

I am in the same boat, I have a GTX 570 and found the necessary resistors for it to go to Q7000 and Tesla C2075, C2090 but there's no performance changes.

What have you tried doing to the GTX BIOS to adjust it to the new mod?

Flashing the card to the actual Quadro/Tesla BIOS does not work because of timings and other things, but these parameters can be used as transplants.

I would be interested if you have worked further on getting the upper 13 bits figured out for the Quadro 4/5/6000, if that's even an option?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 15, 2013, 12:01:08 am
fusebits in the core. disabled. you think NVidia is so stupid that it would simply be a few resistors on the outside ?

That's an interesting hypothesis, but do you have anything to support it?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: free_electron on June 15, 2013, 12:51:32 am
That's an interesting hypothesis, but do you have anything to support it?

Here's how it works :

The resistors are used to downgrade boards depending on what is installed. You can only go down , not up. The max capability of the GPU is set in the GPU. The resistors determine the downmix (memory, speed, cores, voltage ,core voltage, ram voltage) .

You can set resistors to a combination above what the core is specced at but it will not enable. it is a logical OR of what the resistors say and what the fusebits say. Fusebits have priority. Sometimes there are no fusebits as the chip simply does not have the extra features. One board layout can be used for multiple different GPU's in a family.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 15, 2013, 01:07:03 am
@free_electron - not always the case.

In the case of GTS450 vs. Quadro 2000, however, I believe I have just figured it out - it is actually a slightly different chip between the two; I missed a tiny detail in the spec readings.

GTS450 == GF106
Quadro 2000 == GF106GL

I'm guessing the "GL" is important.  :palm:

Never mind - I got the VM VGA passthrough functionality for free - that was the main (and only) thing I was after anyway. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 15, 2013, 01:12:23 am
Here's how it works :

The resistors are used to downgrade boards depending on what is installed. You can only go down , not up. The max capability of the GPU is set in the GPU. The resistors determine the downmix (memory, speed, cores, voltage ,core voltage, ram voltage) .

You can set resistors to a combination above what the core is specced at but it will not enable. it is a logical OR of what the resistors say and what the fusebits say. Fusebits have priority. Sometimes there are no fusebits as the chip simply does not have the extra features. One board layout can be used for multiple different GPU's in a family.

Would you happen to know which features would be disabled in the core though that relate to Quadro capability?

Or is that that the fusebits only manage the features that exist in all chips from the same family (ie. GF100 or GF110: GTX480/GTX570 vs Quadro 4-5-6000/Quadro 7000). Therefore if the fusebit is set, the driver disables the feature but the feature still exists in the chip itself.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: SeanB on June 15, 2013, 09:38:47 am
To do a zener zap on bits during an on wafer test that does a basic function test that then determines whether the chip is fully good, usable for the top line, or partially good and usable with disabling some cores ( you will have a little logic to enable selective disabling of cores and then reoranising the remainder to appear as contiguous) so it will be a lower spec chip, or is a DOA or fails in critical areas ( same thing really, if the cache logic or glue logic is faulty then it will never work properly) so is recycled, and these pads are never bonded out to pads on the BGA is cheap, and might only add 1 second more to the initial test, at the lowest cost part of the process, before you add an expensive package to what will be a dead unit. Then you can slice and sort based on the paint dot on the chip, and grade them into the bins as needed for assembly. Then you take the complete units and place in a test jig for speed grading, and then you can use resistors or links to enable features. That way you will get different chip suffixes, as they are now different items. If you are lucky they ran out of the low spec chips as they were doing the run for your card and then finished off with the full spec units, as they do cost the same. That though is the luck of the draw, you could have 2 cards made on the same line at the same day but they used different chips on it.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 15, 2013, 12:39:48 pm
Though question still remains, what does make Quadro QUADRO?

There are no special fancy features between the two lines of chips, perhaps slight core difference, if any, such as Shaders / TMUs / ROPs. But that explains the above process of selection so really the features are all there. So what decides whether something is a Quadro and what does Quadro do more that GeForce doesn't.

What I mean is that if you run a SPECViewPerf you will get two different results between the same line of chips (ie. GF100) just because one is GeForce and the other is Quadro. What cripples the performance, OGL driver, BIOS, hardstraps, fuses,...?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: jimseal on June 15, 2013, 06:22:05 pm
Trying to do a proof of concept before investing in the real thing.  I have an ASUS GTX660TI-DC2T-2GD5 card and would like to mod it to a Quadro K5000 or some other GPU virtualization compatible card.  (Hyper-V 2012 ?).  The ASUS card seems different from the other images in this thread.  Here are some pictures of both sides, if someone would be so kind as to help me out:

Thank you,
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on June 15, 2013, 09:38:57 pm
Trying to do a proof of concept before investing in the real thing.  I have an ASUS GTX660TI-DC2T-2GD5 card and would like to mod it to a Quadro K5000 or some other GPU virtualization compatible card.  (Hyper-V 2012 ?).  The ASUS card seems different from the other images in this thread.  Here are some pictures of both sides, if someone would be so kind as to help me out:

Thank you,
Hello, looks like they rotated GPU :)
Can you take a picture of the area shown on a pic?

I googled some photos, and I think I found locations of resistors.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: free_electron on June 16, 2013, 07:35:44 am
@free_electron - not always the case.

like i said : same pcb layout can hold multiple chips. some are actually different , some are fusebits.

A key element of Quadro is the drivers. if you got a regular card and you experience a software glitch nobody gives a rat's ass.
If you have a quadro and there is a glitch with a particular software , it will get fixed and it will get fixed very quickly.
quadro's are workstation card. meaning they are used to visualised data from engineering software. solidworks, catia , adobe .. all the big stuff out there.

there are other elements on quadro . OpenGL is run in hardware on a quadro s opposed to software emulation on a non quadro. Quadros can have much more memory than other boards  (which is important for massive polygon scenes . And no SLI does not share memory ... ) Try loading a complete Catia design for a wing of an airplane down to the last nut and bolt. change the viewport. The Quadro will respond immediately. the GTX will curl up in a corner ,choke and may give you a screen refresh a few minutes later. unworkable if you are designing.

As software is being rewritten to take advantage of CUDA the quadro will loose its advantage. but tright now , 3d cad software is , in a lot of cases, still driven on OpenGL or DirectX and there the quadro runs circles around the other boards.

in short : for gaming , video processing : no advantage , stick with gtx
for anythin involving massive vertex count : quadro will chomp the gtx to bits. so if you are thinking to make the next Toystory or Monsters Inc , or run things like 3Dmax, Catia and other high end cad software ... quadro is the way to go. games have no advantage on quadro as the amount of polygons a game throws at the GPU is simply too small to notice an effect.

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: jimseal on June 16, 2013, 07:21:16 pm
More info on the 660Ti ASUS

Hope that helps...

Thanks
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on June 16, 2013, 09:34:32 pm
More info on the 660Ti ASUS

Hope that helps...

Thanks

Thank you for perfect photos ;)

You may use resistors value table from 680 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)


Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: sw on June 17, 2013, 05:32:20 am
Hello, I have a EVGA GeForce GTX 660Ti  (03G-P4-3663-KR) that I would possibly like to try this on, I have read through this forum but still have a few questions. It seems to me this card can be shown as a tesla k10, quadro k5000 or a grid k2 according to a post on page 16. I game a lot, but also use processor intensive programs like Adobe CS6 and a few others that would seem to benefit from these higher end cards. Which would be the best card for me to change the resistor values to, and will I loose PhysX support or anything similar by reporting this cards to the computer as a higher model?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 17, 2013, 07:32:31 am
... will I loose PhysX support or anything similar by reporting this cards to the computer as a higher model?

I have found this to be somewhat hit-and-miss. GTS450 -> Q2000 appears to lose PhysX on XP-64, but not on Win7-64. GTX480->Q6000 seems to retain PhysX capability on XP-64. The only way to really know for sure is to try it and see, over and above going over the spec of all quadro cards on the Nvidia website and checking which ones they claim support PhysX.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: sw on June 17, 2013, 07:42:09 am
Ok, so will I use the resistors on the EVGA GTX 660Ti  (03G-P4-3663-KR) that have been shown for the 670 card because the board is the same? And is anyone working on a way to make this information easier to view? That would be nice, if not I may do that.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 17, 2013, 08:39:47 pm
... will I loose PhysX support or anything similar by reporting this cards to the computer as a higher model?

To add to what gordan said, my experience has been strictly with one card (GTX680) and Windows 7 64.

When I was running native Windows, I never lost Physx under any scenario.

While running Windows under Xen, I lost phsyx when the card reported itself as a Quadro K5000 and I was using the Quadro (not the GeForce) drivers. While using the geforce drivers it worked fine.

While running Windows under Xen, I lost phsyx when the card reported itself as a Grid K2, I was able to retain Physx will doing primary gpu passthrough only.

Nvidia drivers seems to know they are running on Xen even with primary passthrough and like to cause trouble (some missing options and features that are tricky to get back).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on June 17, 2013, 10:00:22 pm
There is no issue with physx for me.
I have grid k2 as xen domu with quadro/grid drivers. I have no physx by default, because quadro drivers doesn't contain "PhysX System Software". But it is easy to fix :) just download geforce drivers and unpack. after that install "PhysX System Software" from "PhysX" folder and enjoy :)
I able to run Supersonic sled demo from nvidia. :)

May be I am miss something? ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 18, 2013, 12:28:55 am
May be I am missing something? ;)

Bad luck. Ill give you some if you want it.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 18, 2013, 02:02:15 am
When modding to the Quadro on my card, it had different results when using the Geforce vs Quadro drivers.

I take it this is GTX680 -> K5000 mod you are talking about. How much of a difference do you actually see in specviewperf? A slight difference or a ~5x difference in catia?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 18, 2013, 08:23:28 pm
Just in case anyone is wondering, I just compared the output of
lspci -vvvv
between my genuine Q2000 and a modified GTS450, and there is no difference between them at all. The only things that come up on a diff are the different BAR addresses the card got mapped to. At least that excludes one thing that could be making it not quite behave like a real Quadro in terms of SPECviewperf, and we're back to the GF106 vs. GF106GL chip-wise.

Has anyone got a genuine Quadro 5000 or Quadro 6000 (or even Quadro 7000 - yes, I know, fat chance) that they could capture the output of lspci -vvvv on? We could then compare it to what my faux Quadros show.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: nporter on June 19, 2013, 01:14:24 pm
I have a Quadro 4000 and a Tesla C2075 if either of those would help in this or anything in the future.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 19, 2013, 03:35:42 pm
I have a Quadro 4000 and a Tesla C2075 if either of those would help in this or anything in the future.

Hmm... Q4000 doesn't really have a straight GeForce equivalent, but a C2075 is essentially a GTX480 with 4x the RAM.
Give me a few days to re-mod my GTX480 into a pseudo-C2075 and see what I can come up with for comparing notes.
We'd need to find some kind of a benchmark to compare performance between them, though, since AFAIK Teslas have no video ports (or do they?), which means no SPECviewperf comparison, which is the only thing I've found that performs differently.

Edit:
Dismantled my Q2000 and GTS450s. There is a difference in the chip number.
Q2000: GF106-875
GTS450: GF106-250

Whether that means something conclusive or not remains to be seen.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: jimseal on June 19, 2013, 09:04:17 pm
Thanks for your help so far,

Back concerning the ASUS GTX660TI-DC2T-2GD5

One more question please:

The config I am looking for (tk10) asks for a 40kOhms
and it seems that they are not that easy to find or no longer sold, so question is will a 39KOhms or a 46KOhms one work?

Thanks for anyone that could answer with some experiance at this detail here.



Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 19, 2013, 09:40:22 pm
so question is will a 39KOhms or a 46KOhms one work?

39k should work. I don't actually use any 40k resistors as the 40k caused me some problems and are just a solution to the stability issues some have experienced.

Since you have an ASUS card in the same series as mine (ive got the 680 equivalent of that card), try without a 40k resistor and see if your ID changes randomly. If it doesn't change randomly and is the value you want, you can leave off the 40k ones.

EDIT: Clarified wording.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 20, 2013, 09:42:20 pm
Interesting article on GeForce vs. Quadro performance:
http://doc-ok.org/?p=304 (http://doc-ok.org/?p=304)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 21, 2013, 07:09:30 pm
I think I might be getting somewhere with this.

Attached is the glxinfo output from a genuine Q2000 and a GTS450 modified to Q2000.

They are quite substantially different.

I wonder what differences lurk in the BAR0 registers and if they might be changeable...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Bishop on June 25, 2013, 08:09:32 pm
Good evening
I have a Galaxy GeForce GTX 670 GC 2 GB GDDR5  67NPH6DV5ZVX and I would like to turn it into one of the workstation counterparts. I mainly want it for Xen passthrough to a second monitor domU with 3d/gaming capabilities. The dom0 will be used by another person for work with the iGPU. Is this possible? Do I have to remove or solder resistors? Removing resistors is an option but resoldering cables/resistors freaks me out!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 26, 2013, 07:27:37 am
The dom0 will be used by another person for work with the iGPU. Is this possible?

Possible, yes. The i915 (Intel HD4000) will only work if you are using it for a text only console. X has artifacting with the Xen kernel and intel driver when using the iGPU on dom0 (presumed Xen is at fault here, no solution in the works afaik).

I wouldn't recommend using dom0 as a workstation anyway. I passed the iGPU through to an hvm and used it that way. More secure, bit harder to manage dom0 when it is headless, though.

As for the resistors and such, I suggest reading the thread before attempting anything like this. The questions you posed are all answered.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 26, 2013, 07:32:50 pm
I would have thought you'd still be able to use the iGPU with the dumb frame buffer, if performance isn't too much of a requirement.

Performance of accelerated drivers is often an issue on dom0 - Nvidia accelerated drivers get about 3fps in glxgears. ATI ones didn't work at all in Xen dom0 last time I checked (not that I would recommend ATI for anything these days - they have crippled and dumbed down their products to the point where Nvidia have me well and truly by the proverbials by being the only game in town for my use-cases).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 26, 2013, 08:43:21 pm
nVidia and ATI/AMD proprietary and open source drivers all work with dom0 from reports I have read.

I have personal experience with AMD proprietary and open source working with dom0.

As far as I am aware, the _only_ crippling issue with video and dom0 is with the i915.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Bishop on June 26, 2013, 09:48:02 pm
The dom0 will be used by another person for work with the iGPU. Is this possible?

Possible, yes. The i915 (Intel HD4000) will only work if you are using it for a text only console. X has artifacting with the Xen kernel and intel driver when using the iGPU on dom0 (presumed Xen is at fault here, no solution in the works afaik).

I wouldn't recommend using dom0 as a workstation anyway. I passed the iGPU through to an hvm and used it that way. More secure, bit harder to manage dom0 when it is headless, though.

As for the resistors and such, I suggest reading the thread before attempting anything like this. The questions you posed are all answered.
Got it. What about the nvidia gtx670 passthrough? I've been reading some stuff that says it is not possible, only the workstation counterparts are able to do it. I am sorry I'm just scared of bricking my card as I'm currently a broke student in a 3rd world country studying beginner's virtualization in a subpar laboratory  :-+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 27, 2013, 02:27:44 pm
I think I might be getting somewhere with this.

Attached is the glxinfo output from a genuine Q2000 and a GTS450 modified to Q2000.

They are quite substantially different.

I wonder what differences lurk in the BAR0 registers and if they might be changeable...

I'm not sure what version of NVidia drivers you are using, but as a hint try something older, perhaps from the 270.XX line.

With the original softmods back when, I believe that NVidia had caught up with that and disabled advanced features (ie. Quadro) in drivers.

Still trying to determine when it occurred, which requires testing many old versions of drivers.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 27, 2013, 08:15:27 pm
I'm not sure what version of NVidia drivers you are using, but as a hint try something older, perhaps from the 270.XX line.

What would that prove?

With the original softmods back when, I believe that NVidia had caught up with that and disabled advanced features (ie. Quadro) in drivers.

How do you figure that? How does the driver know it's not a real Quadro? I'm using the latest, 319.23 on Linux. There are no separate Quadro and GeForce drivers on Linux, it's the same driver for both.

Still trying to determine when it occurred, which requires testing many old versions of drivers.

I suspect the functionality is laser cut out.
Then again, it could be there is extra strapping on the PCB (e.g. a cap across chip pins) that disables certain functionality, but this is hard to eyeball. All 3 GTS450 cards hav emarkedly different cap arrangements under the GPU, which is different again from the real Q2000.

I don't really use apps that benefit from the extra GL primitives, so I'm not that interested in researching further, but if anyone else is planning to put some more work into it, I would suggest comparing the register values in BAR0 before the driver loads (reasonably easy to do in Linux, just mmap() the bar and dump it out, and compare the real thing vs. the modified card). PMC should contain register values that should imply what engines are enabled/disabled and you _might_ be able to re-enable them by clobbering the values, as provided by the real Quadro. If you can figure it out, on Linux you could write a small program that gets executed before the binary driver loads and clobbers the values to get the driver convinced the card is the real deal.

I'm not a big Windows user so I'm not sure how that might work in Windows, but something similar might be possible.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 27, 2013, 08:56:16 pm
What would that prove?
It would prove that things have changed in the mean time.

People have soft-modded their GTX cards to Quadros in the past, remember RivaTuner? It had a soft-strap editor that would change PCI Id to match whatever other card.

Also, remember that fellow who posted on NVidia CUDA forums about modding vbios soft-straps on his GTX 480 to a Tesla.

How do you figure that? How does the driver know it's not a real Quadro? I'm using the latest, 319.23 on Linux. There are no separate Quadro and GeForce drivers on Linux, it's the same driver for both.
I might as well say the same thing back at you: How do *you* figure that?? Obviously you have not done anything past installing the latest drivers and drawing a conclusion based on a quick look at it.

I suspect the functionality is laser cut out.
Then again, it could be there is extra strapping on the PCB (e.g. a cap across chip pins) that disables certain functionality, but this is hard to eyeball. All 3 GTS450 cards hav emarkedly different cap arrangements under the GPU, which is different again from the real Q2000.
Prove it.

Everyone assumes some kind of manufacturing process or what not involved to cripple GPUs. I suppose because this is an electronics forum that's inherent, but if you have not looked into other aspects, I would not draw conclusions so fast.

Actually I am somewhat positive that crippling occurs on the software side because, unlike you, I tried an older driver giving me different result than the new one, AND I took a peek under the hood (inside the driver).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 27, 2013, 10:41:55 pm
I am somewhat positive that crippling occurs on the software side

I would agree with you that this is a very strong possibility. With my experience so far, the driver tends to not want to allow certain features under xen. I think this is mostly due to the way xen presents the GPU to the OS (and whether you have a secondary GPU, even if it is disabled). The point here is they have a documented history of crippling features within the software.

But I know more about software, so I would tend to believe it to be a software problem with a software solution.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 28, 2013, 07:08:23 am
What would that prove?
It would prove that things have changed in the mean time.

Like what? Are you suggesting that newer drivers do more crippling and better faux-Quadro detection than the old ones?
Can you please list an old driver version that produces markedly better results in SPECviewperf tests on a pseudo-Quadro?

People have soft-modded their GTX cards to Quadros in the past, remember RivaTuner? It had a soft-strap editor that would change PCI Id to match whatever other card.

Also, remember that fellow who posted on NVidia CUDA forums about modding vbios soft-straps on his GTX 480 to a Tesla.

Soft-modding still works to a large extent. The only limitation is the strap bits that are exposed in software.
In the past three weeks I have soft-modded:
GTS450->Q2000
GTX470->Q5000
GTX480->Q6000
GTX580->Q7000
GTX680->Tesla K10

Q7000 and Tesla K10 aren't "MultiOS" capable, so the driver doesn't make them work with VGA passthrough, which makes the mod of limited usefulness, over and above enabling TCC feature in Windows.

Everything required to do this is pretty well documented by the nuoveau project. There are also other things that are useful (and easy) to mod, for example BAR1 size to be >= the size of the RAM on the card. This lets you take, say, a 4GB card and when you're not gaming, you can map it as a really fast block device for some fast swap or whatever you might need.

Kepler BIOSes are quite different, but having spent an hour looking at the dump out of my GTX680, I've worked out most of the bits relevant to this thread. The strapping on them is... odd. It's done in two places, but what is odd is that it is done the same way in two places.

The other odd thing is that the PCI device ID is set in two places, but it has a profound effect on the way the card is handled. For example, just changing the the strapping for the device ID from GTX680 -> Tesla K10 works fine. But if you also chance the PCI ID, at least in the primary location, the card no longer works properly - it gets detected as a standard unaccelerated VGA adapter, even though the Quadro driver is still running it, and the RAM on it shows up as 2990MB instead of 4096MB. Put the device IDs back to GTX680 (but keep the K10 strapping), and it works fine. I'm guessing there may be a checksum on the blocks containing the PCI IDs, but I didn't have a genuine Tesla K10 BIOS handy to cross-check against it last night.

Also, I'm not 100% sure, but I thought I saw a substantial boost in Crysis benchmark fps when running as a K10, but I could have just been dreaming that - will need to re-test that later today when I am more properly caffeineated.

How do you figure that? How does the driver know it's not a real Quadro? I'm using the latest, 319.23 on Linux. There are no separate Quadro and GeForce drivers on Linux, it's the same driver for both.
I might as well say the same thing back at you: How do *you* figure that?? Obviously you have not done anything past installing the latest drivers and drawing a conclusion based on a quick look at it.

I'm guessing that on the basis that laser cutting chips is cheap and easy during production, and the technique is widely used.
Plus the fact that the GF106 in the Q2000 has a different part number etched into it compared to the GF106 in the GTS450 (sample size 3 for GTS450, 1 for Q2000).

I suspect the functionality is laser cut out.
Then again, it could be there is extra strapping on the PCB (e.g. a cap across chip pins) that disables certain functionality, but this is hard to eyeball. All 3 GTS450 cards hav emarkedly different cap arrangements under the GPU, which is different again from the real Q2000.
Prove it.

Everyone assumes some kind of manufacturing process or what not involved to cripple GPUs. I suppose because this is an electronics forum that's inherent, but if you have not looked into other aspects, I would not draw conclusions so fast.

Actually I am somewhat positive that crippling occurs on the software side because, unlike you, I tried an older driver giving me different result than the new one, AND I took a peek under the hood (inside the driver).

Prove it. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 28, 2013, 01:18:05 pm
Soft-modding still works to a large extent. The only limitation is the strap bits that are exposed in software.
In the past three weeks I have soft-modded:
GTS450->Q2000
GTX470->Q5000
GTX480->Q6000
GTX580->Q7000
GTX680->Tesla K10

Q7000 and Tesla K10 aren't "MultiOS" capable, so the driver doesn't make them work with VGA passthrough, which makes the mod of limited usefulness, over and above enabling TCC feature in Windows.

Everything required to do this is pretty well documented by the nuoveau project. There are also other things that are useful (and easy) to mod, for example BAR1 size to be >= the size of the RAM on the card. This lets you take, say, a 4GB card and when you're not gaming, you can map it as a really fast block device for some fast swap or whatever you might need.

It seems to me you mistakenly compare ability to be detected as something else (spoofing) with real conversion of one to another. Perhaps in your application of this modification (Xen in Linux) it is sufficient to just spoof the wanted card but what I'm looking for is actually getting the Quadro performance instead.

I'd like to know how did you mod the GTX 580 to Q7000 with soft straps and have it work?

Because, I've spent some time on a similar project using a GTX 570 and the only real way to do this was through changing hard straps (driver ignores vbios soft-straps and the system will not boot, will boot with a black screen or not initialize the GUI). Some, if not all, Quadro vbioses actually check if the ROM and board PCI ID match and also lock out.

I am able to get a Q7000, C2075 through hard straps and the system actually boots and initializes. Then I am able to install the latest Quadro/Tesla driver, alas the performance is not there due to whatever limitations imposed (I'd say software).

Kepler BIOSes are quite different, but having spent an hour looking at the dump out of my GTX680, I've worked out most of the bits relevant to this thread. The strapping on them is... odd. It's done in two places, but what is odd is that it is done the same way in two places.

Why don't you share that information here, as it is not documented anywhere it will help everyone else?

The other odd thing is that the PCI device ID is set in two places, but it has a profound effect on the way the card is handled. For example, just changing the the strapping for the device ID from GTX680 -> Tesla K10 works fine. But if you also chance the PCI ID, at least in the primary location, the card no longer works properly - it gets detected as a standard unaccelerated VGA adapter, even though the Quadro driver is still running it, and the RAM on it shows up as 2990MB instead of 4096MB. Put the device IDs back to GTX680 (but keep the K10 strapping), and it works fine. I'm guessing there may be a checksum on the blocks containing the PCI IDs, but I didn't have a genuine Tesla K10 BIOS handy to cross-check against it last night.

You might be finding the PCI ID from the VBIOS and the EFI sections, that's why there are two matches.

On newer Windows systems and Macs, EFI is used to init/boot the card and so the PCI ID in that section also has to be changed - needs to match hard straps. EFI code itself also checks for the Vendor ID, PCI ID and Board ID, so that has to be changed accordingly.

As far as I know the checksums exist for the entire ROM and for the HWINFO section (soft-straps), although it is true that the GK ROM format has changed and they've introduced wrappers for the old VBIOS. Obviously one needs to make sure the HWINFO checksum is correct and then adjust the entire ROM checksum.

You've also probably noticed a cryptographic signature at the end of the ROM which UEFI/Winblows uses to verify authenticity of hardware. In Linux that is irrelevant but thanks to M$, they've managed to create a deadlock and control all OEMs who produce motherboards with this whole signature issue (remember Linux booting problems until the whole UEFI issue was figured out).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 28, 2013, 03:15:56 pm
It seems to me you mistakenly compare ability to be detected as something else (spoofing) with real conversion of one to another. Perhaps in your application of this modification (Xen in Linux) it is sufficient to just spoof the wanted card but what I'm looking for is actually getting the Quadro performance instead.

Indeed, all the mods so far, hard or soft, have been purely about spoofing. I am not aware of any mod that will re-enable the missing part of the hardware GL implementation.

I'd like to know how did you mod the GTX 580 to Q7000 with soft straps and have it work?

The usual way. Change the PCI ID, re-calc the checksum, flash the card, change the straps, in that order. It "just works". Doesn't really gain you much, though. Mosaic app might work, but since Q7000 isn't MultiOS, it won't run in VGA passthrough mode.

Because, I've spent some time on a similar project using a GTX 570 and the only real way to do this was through changing hard straps (driver ignores vbios soft-straps and the system will not boot, will boot with a black screen or not initialize the GUI). Some, if not all, Quadro vbioses actually check if the ROM and board PCI ID match and also lock out.

I'm not using a Quadro BIOS, I'm using a modified version of the original BIOS. Switching to a Quadro BIOS would be a whole different can of worms to open.
I've not had any problems with it as Q7000, the only reason I bother keeping it as that is so that I don't have the GeForce driver clashing with the Quadro driver on the same system when I boot into Windows (the other card is a GTX480 -> Q6000, which i what I use for VGA passthrough).

I am able to get a Q7000, C2075 through hard straps and the system actually boots and initializes. Then I am able to install the latest Quadro/Tesla driver, alas the performance is not there due to whatever limitations imposed (I'd say software).

I got to that point without heating up my soldering iron.

Why don't you share that information here, as it is not documented anywhere it will help everyone else?

Half of the info was already posted on this thread, the first (newly added) strap is at the beginning of the BIOS. This seems to be the same as the first 8 bytes of the normal strap, apart from a discrepancy in th efirst bit of the OR mask, IIRC. The old strap you can easily work out where it is - nvflash edits it correctly. There appears to be a 0x400 length header prepended to the BIOS (includes the new strap), after which the BIOS is fairly similar to previous generations.

You might be finding the PCI ID from the VBIOS and the EFI sections, that's why there are two matches.

That seems quite plausible.

On newer Windows systems and Macs, EFI is used to init/boot the card and so the PCI ID in that section also has to be changed - needs to match hard straps. EFI code itself also checks for the Vendor ID, PCI ID and Board ID, so that has to be changed accordingly.

Hmm... I wonder if this could be stripped out to reduce the BIOS to the old, EFI-less state that is more open to modifying. It'd also make it a lot more similar to the previous BIOSes in terms of understanding what the various bits do.

As far as I know the checksums exist for the entire ROM and for the HWINFO section (soft-straps), although it is true that the GK ROM format has changed and they've introduced wrappers for the old VBIOS. Obviously one needs to make sure the HWINFO checksum is correct and then adjust the entire ROM checksum.

Prior to 6xx at least, the strap checksum is independent of the full checksum, IIRC (unless nvflash updates both when you use it with --straps, which I don't think it does).

You've also probably noticed a cryptographic signature at the end of the ROM which UEFI/Winblows uses to verify authenticity of hardware. In Linux that is irrelevant but thanks to M$, they've managed to create a deadlock and control all OEMs who produce motherboards with this whole signature issue (remember Linux booting problems until the whole UEFI issue was figured out).

I don't own any EFI motherboards, but I would have thought the whole EFI wrapping should be strippable out from the VBIOS. Once you skip past the 0x400 bytes of header, the rest of the BIOS is similar in terms of offsets of known areas to the Fermi BIOSes.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 28, 2013, 03:36:28 pm
The usual way. Change the PCI ID, re-calc the checksum, flash the card, change the straps, in that order. It "just works". Doesn't really gain you much, though. Mosaic app might work, but since Q7000 isn't MultiOS, it won't run in VGA passthrough mode.
Ah, so you change the straps from the command line with nvflash.

I actually edit the straps while I'm editing the ROM. I find it easier because all I have to do afterwards is flash the ROM, although I do make sure that nvflash verifies my ROM first.

I got to that point without heating up my soldering iron.
For me, Windows Quadro driver would not install if I do not change hard-straps. Matter a fact in some cases I could not even get to Windows GUI to install the driver.

Hmm... I wonder if this could be stripped out to reduce the BIOS to the old, EFI-less state that is more open to modifying. It'd also make it a lot more similar to the previous BIOSes in terms of understanding what the various bits do.
That should be doable, but you have to make sure that you include all ROM parts (minus the EFI). In Fermi cards, the ROM had two parts (one was the vbios and the other another device, I believe HDMI audio).

I don't own any EFI motherboards, but I would have thought the whole EFI wrapping should be strippable out from the VBIOS. Once you skip past the 0x400 bytes of header, the rest of the BIOS is similar in terms of offsets of known areas to the Fermi BIOSes.
IIRC, according to the PCI firmware spec the wrapping stuff ends up being ignored on older computers with BIOS, until the 55 AA signature is detected. On the new UEFI, they will probable read the wrapper and then read the rest (55 AA, on).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 28, 2013, 04:33:31 pm
Ah, so you change the straps from the command line with nvflash.

I actually edit the straps while I'm editing the ROM. I find it easier because all I have to do afterwards is flash the ROM, although I do make sure that nvflash verifies my ROM first.

I may be wrong but IIRC NiBiTor doesn't update the strap checksum, only the full checksum.

I got to that point without heating up my soldering iron.
For me, Windows Quadro driver would not install if I do not change hard-straps. Matter a fact in some cases I could not even get to Windows GUI to install the driver.

Sounds strange, I've never seen an issue like that on any of the cards I modified, it always "just works".
Then again, modifying a GTX580 is a complete waste of time anyway. GTX480 is just as fast (in some cases faster due to dual DMA channels when modded to Quadro/Tesla), and is trivial to modify into a Q6000. I only modified my 580 because I already had it and I was seeing odd driver clashing when using a GeForce and a Quadro in the same system under Windows. One driver would end up driving both cards, usually the later one (the GeForce one has a higher version number).

Hmm... I wonder if this could be stripped out to reduce the BIOS to the old, EFI-less state that is more open to modifying. It'd also make it a lot more similar to the previous BIOSes in terms of understanding what the various bits do.
That should be doable, but you have to make sure that you include all ROM parts (minus the EFI). In Fermi cards, the ROM had two parts (one was the vbios and the other another device, I believe HDMI audio).

Indeed, but you get the same thing on Kepler, they have a HDMI audio device, too.

I don't own any EFI motherboards, but I would have thought the whole EFI wrapping should be strippable out from the VBIOS. Once you skip past the 0x400 bytes of header, the rest of the BIOS is similar in terms of offsets of known areas to the Fermi BIOSes.
IIRC, according to the PCI firmware spec the wrapping stuff ends up being ignored on older computers with BIOS, until the 55 AA signature is detected. On the new UEFI, they will probable read the wrapper and then read the rest (55 AA, on).

Handy, so you could effectively s/.*55AA// and strip out the EFI capability and defeat crypto. Nice. Presumably the trailing garbage would just get ignored then.

The only question is whether there is an extra ID bit in Kepler soft straps. These are not yet fully documented. It could be one of the unknown bits (but it's not the unknowns next to ID bit 4, I tried those). The reason I say that is because until Kepler, all cards were modifiable using only soft-straps into any other card sporting the same GPU and memory type. And I only mention memory type because the GDDR3 GTS450 differed in more than just the last 5 bits of device ID, I had not seen such a case before.

What I'll probably do on my GTX680 is mod the resistor slot controlling the 3rd nibble by adding a dip switch, so I can toggle that bit between 1 and 0. From there on, I can modify the GTX680 into any card sporting the GK104 chip using the switch the 5 soft-strapped bits.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 28, 2013, 06:21:48 pm
I may be wrong but IIRC NiBiTor doesn't update the strap checksum, only the full checksum.
Who said anything about NiBiTor? :)

I edit everything by hand in a hex editor - I've done so many things now that I know where to look and what to do with it blindfolded.

Sounds strange, I've never seen an issue like that on any of the cards I modified, it always "just works".
Then again, modifying a GTX580 is a complete waste of time anyway. GTX480 is just as fast (in some cases faster due to dual DMA channels when modded to Quadro/Tesla), and is trivial to modify into a Q6000. I only modified my 580 because I already had it and I was seeing odd driver clashing when using a GeForce and a Quadro in the same system under Windows. One driver would end up driving both cards, usually the later one (the GeForce one has a higher version number).
I deliberately chose GTX 570 because GTX 4xx are running much hotter than 5xx and if they even have any performance improvements over 5xx I think it's negligible. Altough even GTX 5xx run hot, heck they are all crap due to the terrible NVidia design which makes the GPU run additional 10-15C hotter if you plug two monitors into the card.

Handy, so you could effectively s/.*55AA// and strip out the EFI capability and defeat crypto. Nice. Presumably the trailing garbage would just get ignored then.

The only question is whether there is an extra ID bit in Kepler soft straps. These are not yet fully documented. It could be one of the unknown bits (but it's not the unknowns next to ID bit 4, I tried those). The reason I say that is because until Kepler, all cards were modifiable using only soft-straps into any other card sporting the same GPU and memory type. And I only mention memory type because the GDDR3 GTS450 differed in more than just the last 5 bits of device ID, I had not seen such a case before.
You can't defeat the signature but I think Linux will ignore it altogether so it does not matter if it's there. The only reason it would matter is to Windows.

Also, because of all the new crap added to the ROM the EEPROM is bigger too- instead of 256KB it's 512KB now thus requires soldering when modding some cards.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 28, 2013, 06:47:36 pm
I may be wrong but IIRC NiBiTor doesn't update the strap checksum, only the full checksum.
Who said anything about NiBiTor? :)

I edit everything by hand in a hex editor - I've done so many things now that I know where to look and what to do with it blindfolded.

Can you please share the strap checksum algorithm? How do you compute it after modifying the strap manually?

Sounds strange, I've never seen an issue like that on any of the cards I modified, it always "just works".
Then again, modifying a GTX580 is a complete waste of time anyway. GTX480 is just as fast (in some cases faster due to dual DMA channels when modded to Quadro/Tesla), and is trivial to modify into a Q6000. I only modified my 580 because I already had it and I was seeing odd driver clashing when using a GeForce and a Quadro in the same system under Windows. One driver would end up driving both cards, usually the later one (the GeForce one has a higher version number).
I deliberately chose GTX 570 because GTX 4xx are running much hotter than 5xx and if they even have any performance improvements over 5xx I think it's negligible. Altough even GTX 5xx run hot, heck they are all crap due to the terrible NVidia design which makes the GPU run additional 10-15C hotter if you plug two monitors into the card.

Most of the reason why 580 runs cooler than the 480 is the power management that throttles certain operations. That plus they cut out the 2nd DMA engine. GF100 and GF110 are nearly identical silicon-wise.

Handy, so you could effectively s/.*55AA// and strip out the EFI capability and defeat crypto. Nice. Presumably the trailing garbage would just get ignored then.

The only question is whether there is an extra ID bit in Kepler soft straps. These are not yet fully documented. It could be one of the unknown bits (but it's not the unknowns next to ID bit 4, I tried those). The reason I say that is because until Kepler, all cards were modifiable using only soft-straps into any other card sporting the same GPU and memory type. And I only mention memory type because the GDDR3 GTS450 differed in more than just the last 5 bits of device ID, I had not seen such a case before.
You can't defeat the signature but I think Linux will ignore it altogether so it does not matter if it's there. The only reason it would matter is to Windows.

Also, because of all the new crap added to the ROM the EEPROM is bigger too- instead of 256KB it's 512KB now thus requires soldering when modding some cards.

I presume you speak of the 7xx series - My GTX680 ROM is 180KB.
As for Windows - the only reason for using that is disappearing with Steam acquiring Linux support.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 29, 2013, 01:14:15 am
Can you please share the strap checksum algorithm? How do you compute it after modifying the strap manually?
The algorithm is the same as for the ROM itself: 0x100 - (S & 0xFF), where S is sum of bytes from offset 0x58 to 0x6a (0x6a is always 0xA5, it's a HWINFO signature) in a standard vbios image. Offset 0x6b is then the checksum itself which is not part of the S.

I presume you speak of the 7xx series - My GTX680 ROM is 180KB.
Actually GTX 680 ROM is over 200KB due to the EFI portion and all the other crap like secure signature and new wrappers, etc. That is on a GTX 680 2 or 4GB I've seen.

As for Windows - the only reason for using that is disappearing with Steam acquiring Linux support.
Hear, hear!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 29, 2013, 03:20:56 am
Actually GTX 680 ROM is over 200KB due to the EFI portion and all the other crap like secure signature and new wrappers, etc. That is on a GTX 680 2 or 4GB I've seen.

My Asus is 180k.

A GV-N680OC-2GD is 64k.

Of note, the gigabyte one does not have uefi gop support; no space I am guessing.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 29, 2013, 12:11:36 pm
@amigo
Thanks for the checksum algorithm.

@gamezr2ez
Thanks for the info regarding the GB card.

I might just grab a copy of that BIOS from the TPU database and see if I can work out which bits can thus be stripped out from the Asus BIOS to remove all the UEFI crap. I suspect that with the UEFI headers and the other stuff removed, the BIOS will in fact be parseable by all the old tools that work on the previous generations' BIOSes. The only issue is trying to acquire a cheap sacrificial 680 for the research (I don't want to brick my shiny 4GB Gainward Phantom).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on June 30, 2013, 02:24:44 am
As I am aware there is no UEFI stuff in the ASUS bios by default. I believe they have released an unofficial-official hybrid bios. By default though that is all left out.

Side thought, why would you care about stripping out anything from the BIOS; it wont result in added performance.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: amigo on June 30, 2013, 02:39:09 am
As I am aware there is no UEFI stuff in the ASUS bios by default. I believe they have released an unofficial-official hybrid bios. By default though that is all left out.

Side thought, why would you care about stripping out anything from the BIOS; it wont result in added performance.

If I'm correct, current vbios editing tools do not support the new structures and so trying to edit those ROMs is not possible at the moment. Stripping the new wrappers exposes the old format which these editors can recognize and use.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 30, 2013, 11:05:15 pm
Has anybody found where the second set of device ID strap resistors is on the GTX690 yet? Or on the Titan?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on July 01, 2013, 12:02:43 am
Has anybody found where the second set of device ID strap resistors is on the GTX690 yet?

Pretty sure gnif lost his card finding those. Check the first post again.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 01, 2013, 06:27:06 am
I did, but that hasn't been updated in months and I joined the thread later on. If there's still a funding gap and the research into the 2nd set of straps is ongoing, I'm happy to contribute but I haven't seen a post from gnif in the last few pages of the thread.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on July 01, 2013, 06:50:29 am
As per everything in the first post:

GPU 0 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg202901/#msg202901)
GPU 1 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg209227/#msg209227)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: bdx on July 03, 2013, 06:00:15 am
Does anyone have experience modding to the Tesla grid k2, the nvs grid k2, the geforce k2 rather than the generic k2?
How about the k340 or k520?
 :-//
 What are the differences in these cards?

http://browse.feedreader.com/c/LaptopVideo2Go_News/358076787 (http://browse.feedreader.com/c/LaptopVideo2Go_News/358076787)

Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 03, 2013, 06:51:23 am
Where did you find references to these cards? I can't find them in the supported list for the latest driver:
http://us.download.nvidia.com/XFree86/Linux-x86/319.23/README/supportedchips.html (http://us.download.nvidia.com/XFree86/Linux-x86/319.23/README/supportedchips.html)
Which means they are unlikely to exist (yet, at least).
Title: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Soulnight on July 13, 2013, 03:25:48 pm
Hello everybody,

I'm new on this forum and I would like to thank everybody (and especially gnif) for the mod of geforce GTX 680 to Quadro K5000.

I'm a gamer. I don't want more performance but just one (quadro) functionnality more.

I play games in 3D with the help of nvidia 3D vision on my monitor (input signal 1080P 3D 120Hz).
I would like to do the same but with passive 3D dual projection. I need therefore the option of a quadro K5000 to activate the possibility of passive stereo with 2 projectors connected to the graphic card. Here is the link to the procedure to do passive stereo with a quadro.

http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

Could someone please confirm that the option is available with a modded GTX 680 to quadro K5000?

Thank you,
Soulnight  ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: myweb on July 17, 2013, 06:09:04 pm
Dear All,

What inexpensive card would you recommend to try the modifications? Is it correct, that the most inexpensive card is GT640?
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Jager on July 17, 2013, 09:41:24 pm
Hello everybody,

I'm new on this forum and I would like to thank everybody (and especially gnif) for the mod of geforce GTX 680 to Quadro K5000.

I'm a gamer. I don't want more performance but just one (quadro) functionnality more.

I play games in 3D with the help of nvidia 3D vision on my monitor (input signal 1080P 3D 120Hz).
I would like to do the same but with passive 3D dual projection. I need therefore the option of a quadro K5000 to activate the possibility of passive stereo with 2 projectors connected to the graphic card. Here is the link to the procedure to do passive stereo with a quadro.

http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

Could someone please confirm that the option is available with a modded GTX 680 to quadro K5000?

Thank you,
Soulnight  ;)

I'm on same boat. I'm just trying to figure best way to get Dual projection setup with omega filters to work. There is couple methods to get frame synced dual projection to work. One is using Tridef SBS with AMD eyefinity 3840x1080 and second method is using Quadro. I want to use 3D Vision and i'm also ready to try to mod my 670 to K5000 to get quadro features. I think 3D Vision dual projection will work with modded card. I'm bit unsure however if quadro gives framesynced dual output from one card...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 18, 2013, 06:15:33 pm
@myweb - what is the reason for your looking to modify a card? Depending on the level of performance and features you require will dictate which series card you are best off with (e.g. 4xx series for Quadro x000 or 6xx series for Quadro Kx000 / Grid).
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Soulnight on July 20, 2013, 10:03:06 am
Hello everybody,

I'm new on this forum and I would like to thank everybody (and especially gnif) for the mod of geforce GTX 680 to Quadro K5000.

I'm a gamer. I don't want more performance but just one (quadro) functionnality more.

I play games in 3D with the help of nvidia 3D vision on my monitor (input signal 1080P 3D 120Hz).
I would like to do the same but with passive 3D dual projection. I need therefore the option of a quadro K5000 to activate the possibility of passive stereo with 2 projectors connected to the graphic card. Here is the link to the procedure to do passive stereo with a quadro.

http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

Could someone please confirm that the option is available with a modded GTX 680 to quadro K5000?

Thank you,
Soulnight  ;)

I'm on same boat. I'm just trying to figure best way to get Dual projection setup with omega filters to work. There is couple methods to get frame synced dual projection to work. One is using Tridef SBS with AMD eyefinity 3840x1080 and second method is using Quadro. I want to use 3D Vision and i'm also ready to try to mod my 670 to K5000 to get quadro features. I think 3D Vision dual projection will work with modded card. I'm bit unsure however if quadro gives framesynced dual output from one card...

I am happy that I am not alone!  :clap:

I also want to use the omega filters for the dual projector setup. And I think I will buy two projectors ACER h9500 (ONLY 2D and costs just 850€ with lens shift and 1300 Lumens calibrated!). I'm just worried about the 1:1 Hdmi Mapping problem but that's another story...

I know the tridef solution but it's not ideal and doesn't work with all the games...and you MUST use tridef.
I would like to have a choice and to be able to play every games: therefore the quadro solution.
The real quadro K5000 is not good enough for 3d games (and is expensive) and I really think that a modded gtx 680 (or gtx 670) is the perfect solution to get the functionnality of the quadro AND the 3D games performances of the GTX 680!

I am pretty sure that a quadro card gives framesynced dual output from one card...
See the link: http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

The real question is: does it work with a modded gtx 680 as well?

Plus, I would like to go sli with 2 modded GTX 680 into quadro K5000. But I've read that the quadro just support sli for choosen "complete Workstation" from dell etc... However it may still be possible to do it since they won't be true K5000.

As someone succeded in activating SLI with 2 modded GTX 680 into quadro K5000?

@ Jager: how far are you from testing the dual projector setup with the modded gtx 670? When?  ::)

Thank you!
Soulnight  ;)



Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Jager on July 20, 2013, 12:40:52 pm

I am happy that I am not alone!  :clap:

I also want to use the omega filters for the dual projector setup. And I think I will buy two projectors ACER h9500 (ONLY 2D and costs just 850€ with lens shift and 1300 Lumens calibrated!). I'm just worried about the 1:1 Hdmi Mapping problem but that's another story...

I know the tridef solution but it's not ideal and doesn't work with all the games...and you MUST use tridef.
I would like to have a choice and to be able to play every games: therefore the quadro solution.
The real quadro K5000 is not good enough for 3d games (and is expensive) and I really think that a modded gtx 680 (or gtx 670) is the perfect solution to get the functionnality of the quadro AND the 3D games performances of the GTX 680!

I am pretty sure that a quadro card gives framesynced dual output from one card...
See the link: http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

The real question is: does it work with a modded gtx 680 as well?

Plus, I would like to go sli with 2 modded GTX 680 into quadro K5000. But I've read that the quadro just support sli for choosen "complete Workstation" from dell etc... However it may still be possible to do it since they won't be true K5000.

As someone succeded in activating SLI with 2 modded GTX 680 into quadro K5000?

@ Jager: how far are you from testing the dual projector setup with the modded gtx 670? When?  ::)

Thank you!
Soulnight  ;)

Ordered resistors from ebay, those are quite tiny(1mm*0,5mm). I have done some researching and i think up to 2 GPU SLI is no problem to get synced frames, above that K5000 needs Sync card and it should work with modded ones too. After all surround setups for desktops are synced. When i get those resistors(39K is closest to 40K i found, hope it works) i do this mod immediately.
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Soulnight on July 20, 2013, 06:04:55 pm
Ordered resistors from ebay, those are quite tiny(1mm*0,5mm). I have done some researching and i think up to 2 GPU SLI is no problem to get synced frames, above that K5000 needs Sync card and it should work with modded ones too. After all surround setups for desktops are synced. When i get those resistors(39K is closest to 40K i found, hope it works) i do this mod immediately.

I hope it will work with a 39K resistor... How do you know the size of the resistors you must take? What are the references?

The problem for SLI with quadro cards is that Nvidia doesn't enable the SLI function for quadro cards UNLESS they are used in specific Workstation that they have certified!

Here the link to nvidia sh**t:
http://www.nvidia.com/object/quadro_sli_compatible_systems.html (http://www.nvidia.com/object/quadro_sli_compatible_systems.html)

But I do hope that because they are "just" modded GTX 680 the false K5000 can still do sli WITHOUT working with a specific nvidia certified workstation...
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Jager on July 21, 2013, 06:28:10 am
Ordered resistors from ebay, those are quite tiny(1mm*0,5mm). I have done some researching and i think up to 2 GPU SLI is no problem to get synced frames, above that K5000 needs Sync card and it should work with modded ones too. After all surround setups for desktops are synced. When i get those resistors(39K is closest to 40K i found, hope it works) i do this mod immediately.

I hope it will work with a 39K resistor... How do you know the size of the resistors you must take? What are the references?

The problem for SLI with quadro cards is that Nvidia doesn't enable the SLI function for quadro cards UNLESS they are used in specific Workstation that they have certified!

Here the link to nvidia sh**t:
http://www.nvidia.com/object/quadro_sli_compatible_systems.html (http://www.nvidia.com/object/quadro_sli_compatible_systems.html)

But I do hope that because they are "just" modded GTX 680 the false K5000 can still do sli WITHOUT working with a specific nvidia certified workstation...

Damn missed that one! This is bad news indeed :(. I hope it is fixable with some softmodding/just work with modded one. 690 should be affected as well. As for size of resistor, if mean physical size, i just measured those and other info comes from this thread.

edit: There is HyperSLI for non sli motherboards, maybe this works if needed...

edit2:Seems that HyperSLI will NOT work with Quadros.
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Soulnight on July 21, 2013, 07:15:30 am
Damn missed that one! This is bad news indeed :(. I hope it is fixable with some softmodding/just work with modded one. 690 should be affected as well. As for size of resistor, if mean physical size, i just measured those and other info comes from this thread.

Yeah I mean the physical size of the resistors to use. Could someone post a link to "right" resistors on the internet? Thank you...
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Jager on July 21, 2013, 07:33:56 am
Damn missed that one! This is bad news indeed :(. I hope it is fixable with some softmodding/just work with modded one. 690 should be affected as well. As for size of resistor, if mean physical size, i just measured those and other info comes from this thread.

Yeah I mean the physical size of the resistors to use. Could someone post a link to "right" resistors on the internet? Thank you...

I ordered this set. Few extra ones i think :) >> http://www.ebay.com/itm/0402-SMD-SMT-Chip-Resistor-Assortment-Kit-170-value-x-20-pcs-component-pack-/200940135046?pt=LH_DefaultDomain_0&hash=item2ec8f72286 (http://www.ebay.com/itm/0402-SMD-SMT-Chip-Resistor-Assortment-Kit-170-value-x-20-pcs-component-pack-/200940135046?pt=LH_DefaultDomain_0&hash=item2ec8f72286)

edit:Wrong link
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: gordan on July 21, 2013, 10:42:30 am
The real quadro K5000 is not good enough for 3d games (and is expensive) and I really think that a modded gtx 680 (or gtx 670) is the perfect solution to get the functionnality of the quadro AND the 3D games performances of the GTX 680!

How exactly do you figure a K5000 isn't good enough when a GTX680 is? The spec between them is near identical.

I am pretty sure that a quadro card gives framesynced dual output from one card...

I'm pretty sure all Nvidia cards do, going back at least to 8xxx series (I am running an IBM T221 DG1 off an 8800GT with two DVI outputs, and that monitor supposedly requires genlocked inputs).
Vsync is a subtly different issue, and again, I'm pretty sure all Nvidia cards do run vsynced across separate outputs if they are told to run multiple screens as a same frame buffer. Again, on a T221 DG1 ATI cards (4850, cannot use 5xxx+ since they only comne with single DL-DVI outputs) produce tearing along the middle of the screen (genlocked but not vsynced), but Nvidia cards (tried with 8800GT, various 4xx, 580 and 680 cards, quadrified and vanilla, and a Quadro 2000) do not produce the tearing artifact - which implies they all run multiple screens vsynced. So provided you configure your setup correctly, it should work just fine.

Plus, I would like to go sli with 2 modded GTX 680 into quadro K5000. But I've read that the quadro just support sli for choosen "complete Workstation" from dell etc... However it may still be possible to do it since they won't be true K5000.

I didn't think Quadro cards came with SLI bridge ports. My Quadro 2000 certainly doesn't.

One thing is for sure, though, two separate cards won't be providing genlocked output, which means they won't be vsynced either.
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Soulnight on July 21, 2013, 11:21:12 am
The real quadro K5000 is not good enough for 3d games (and is expensive) and I really think that a modded gtx 680 (or gtx 670) is the perfect solution to get the functionnality of the quadro AND the 3D games performances of the GTX 680!

How exactly do you figure a K5000 isn't good enough when a GTX680 is? The spec between them is near identical.

How, pretty simple, with comparisons:

http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_8.html#sect0 (http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_8.html#sect0)

http://www.videocardbenchmark.net/gpu.php?gpu=Quadro+K5000 (http://www.videocardbenchmark.net/gpu.php?gpu=Quadro+K5000)

The GTX 680 is about 1,5 faster than the K5000 for games... ;)

And here are benchmark of a modded GTX 680 into a K5000... The performances don't change with the mod (what is good for me and bad for others...).
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155)
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Jager on July 21, 2013, 01:40:22 pm
The real quadro K5000 is not good enough for 3d games (and is expensive) and I really think that a modded gtx 680 (or gtx 670) is the perfect solution to get the functionnality of the quadro AND the 3D games performances of the GTX 680!

How exactly do you figure a K5000 isn't good enough when a GTX680 is? The spec between them is near identical.

I am pretty sure that a quadro card gives framesynced dual output from one card...

I'm pretty sure all Nvidia cards do, going back at least to 8xxx series (I am running an IBM T221 DG1 off an 8800GT with two DVI outputs, and that monitor supposedly requires genlocked inputs).
Vsync is a subtly different issue, and again, I'm pretty sure all Nvidia cards do run vsynced across separate outputs if they are told to run multiple screens as a same frame buffer. Again, on a T221 DG1 ATI cards (4850, cannot use 5xxx+ since they only comne with single DL-DVI outputs) produce tearing along the middle of the screen (genlocked but not vsynced), but Nvidia cards (tried with 8800GT, various 4xx, 580 and 680 cards, quadrified and vanilla, and a Quadro 2000) do not produce the tearing artifact - which implies they all run multiple screens vsynced. So provided you configure your setup correctly, it should work just fine.

Plus, I would like to go sli with 2 modded GTX 680 into quadro K5000. But I've read that the quadro just support sli for choosen "complete Workstation" from dell etc... However it may still be possible to do it since they won't be true K5000.

I didn't think Quadro cards came with SLI bridge ports. My Quadro 2000 certainly doesn't.

One thing is for sure, though, two separate cards won't be providing genlocked output, which means they won't be vsynced either.

Have you done some gaming with that monitor? It's sure that Dual projection Stereo 3D is out off sync with geforce line when using Tridef(up to one frame out of sync) and geforce do not even support dual output S3D via 3D Vision but Quadros support and it's synced. There is no support for 2 screen Surround for nvidia that provides synced signal so that Tridef could be used with SBS mode. Maybe GeForce drivers enables sync when IBM T221 DG1 is connected, like those drivers is going to do with those Sharp based 4K monitors(i think Asus one is allready supported).

K5000 is capable to support synced dual projection with up to 2-way SLI without need of Quadro Sync card, it can output synced Mosaic up to 8 displays. >> http://www.nvidia.com/object/quadro-scalable-visualization-solutions.html (http://www.nvidia.com/object/quadro-scalable-visualization-solutions.html)

AMD eyefinity puts out synced signal for expanded screens for fullscreen apps(3840x1080 for example).

Edit:correct link
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 21, 2013, 05:19:28 pm
How, pretty simple, with comparisons:

I wouldn't be so quick to disregard K5000's gaming performance. The only thing the 680 has on it's side is higher clock speeds, but they are not _that_ much higher. And the GPU core is the same.

Have you done some gaming with that monitor?

Yes, running Crysis in a VM on a Quadrified GTX480 (Quadro 6000) on my 2nd T221 and there is no tearing whatsoever. Nor was there any tearing on my other T221 with the 8800GT card, but there is massive tearing visible with the Radeon 4850.

It's sure that Dual projection Stereo 3D is out off sync with geforce line when using Tridef(up to one frame out of sync) and geforce do not even support dual output S3D via 3D Vision but Quadros support and it's synced. There is no support for 2 screen Surround for nvidia that provides synced signal so that Tridef could be used with SBS mode. Maybe GeForce drivers enables sync when IBM T221 DG1 is connected, like those drivers is going to do with those Sharp based 4K monitors(i think Asus one is allready supported).

I suspect this is a different use case. The difference is that in my setup I am using a single large frame buffer to produce one large desktop across two separate "screens" (which just happen to form a single TFT panel).
In the case of 3D stuff, the frame buffer is probably not the same. Can you configure it as one large "desktop" with one set of 3D images being displayed on columns 1-1920 and the other set on columns 1921-3840?

K5000 is capable to support synced dual projection with up to 2-way SLI without need of Quadro Sync card, it can output synced Mosaic up to 8 displays. >> http://www.nvidia.com/object/quadro-scalable-visualization-solutions.html (http://www.nvidia.com/object/quadro-scalable-visualization-solutions.html)

The only way I can see you getting synced and genlocked frames is by all outputs to screens coming off a single card, i.e. traditional SLI. That allows you to do processing on two cards but the monitor signal all comes out of a single frame buffer and a single vsync. Any more than that requires an external genlock device (QuadroSync mentioned on that page is a separate hardware device).

AMD eyefinity puts out synced signal for expanded screens for fullscreen apps(3840x1080 for example).

I wouldn't want to even remotely take a chance on an ATI card for the next decade - too much ongoing, persistent disappointment in pretty much every aspect of both drivers and hardware over the past 3 years. It's going to take an enormous improvement before I would deem their products fit for any non-trivial purpose (i.e. single card with a single screen).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 21, 2013, 05:30:37 pm
How, pretty simple, with comparisons:

I wouldn't be so quick to disregard K5000's gaming performance. The only thing the 680 has on it's side is higher clock speeds, but they are not _that_ much higher. And the GPU core is the same.


Higher clock speed and better power supply...and 350€ for the gtx 680 against 1500€ for the K5000.
For gaming purposes, when the modded GTX 680 does have the quadro functionnality, I do not see any advantages for the real K5000... ^-^
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 21, 2013, 06:06:12 pm
How, pretty simple, with comparisons:

I wouldn't be so quick to disregard K5000's gaming performance. The only thing the 680 has on it's side is higher clock speeds, but they are not _that_ much higher. And the GPU core is the same.


Higher clock speed and better power supply...and 350€ for the gtx 680 against 1500€ for the K5000.
For gaming purposes, when the modded GTX 680 does have the quadro functionnality, I do not see any advantages for the real K5000... ^-^

Depends on what you want to use it for. Evidence thus far shows that at least some of the GL functionality seems to be disabled on hardware level (certain GL primitives are missing, see a dump of glxinfo for Quadrified GTS450 vs. a real Quadro 2000 a few pages back).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 21, 2013, 06:26:33 pm
I suspect this is a different use case. The difference is that in my setup I am using a single large frame buffer to produce one large desktop across two separate "screens" (which just happen to form a single TFT panel).
In the case of 3D stuff, the frame buffer is probably not the same. Can you configure it as one large "desktop" with one set of 3D images being displayed on columns 1-1920 and the other set on columns 1921-3840?

There is no way to do single wide "desktop" for two monitors and using it for gaming. This is where nVidia surround is needed and it do not support 2 monitors. I can off course do wide desktop or clone one to another. Sharp 4K based monitors use same large frame trick(1920x2160+1920x2160) as your monitor to achieve 4k 60hz resolution so maybe there is driver enabled "mosaic/surround" for your setup too. Sharp 4k is not supported yet and therefor not work but ASUS(rebranded sharp) work with latest drivers, so driver look up if ASUS is connected and enables "mosaic/surround" support for it.

The only way I can see you getting synced and genlocked frames is by all outputs to screens coming off a single card, i.e. traditional SLI. That allows you to do processing on two cards but the monitor signal all comes out of a single frame buffer and a single vsync. Any more than that requires an external genlock device (QuadroSync mentioned on that page is a separate hardware device).

Link says otherwise, with K5000 you can do synced Mosaic up to 8 screen with SLI OR with Quadro Sync. You can use outputs(limited) from 2 cards when doing Surround with geforces(600 series and up) too and surround is always synced.
Title: Re: Passiv 3D with dual projection and Nvidia 3D vision
Post by: Soulnight on July 21, 2013, 06:31:01 pm
Depends on what you want to use it for. Evidence thus far shows that at least some of the GL functionality seems to be disabled on hardware level (certain GL primitives are missing, see a dump of glxinfo for Quadrified GTS450 vs. a real Quadro 2000 a few pages back).

As I already said, I need this quadro function:

Hello everybody,

I'm new on this forum and I would like to thank everybody (and especially gnif) for the mod of geforce GTX 680 to Quadro K5000.

I'm a gamer. I don't want more performance but just one (quadro) functionnality more.

I play games in 3D with the help of nvidia 3D vision on my monitor (input signal 1080P 3D 120Hz).
I would like to do the same but with passive 3D dual projection. I need therefore the option of a quadro K5000 to activate the possibility of passive stereo with 2 projectors connected to the graphic card. Here is the link to the procedure to do passive stereo with a quadro.

http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

Could someone please confirm that the option is available with a modded GTX 680 to quadro K5000?

Thank you,
Soulnight  ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 21, 2013, 06:39:55 pm
Looks like 670 pcb and K5000 are exactly same. Components are same etc. However 3D Vision pro connector is missing. Wonder if soldering this would give this option too...Other difference is that K5000 have soldered power cords and 670 have connectors soldered on board.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 21, 2013, 06:42:41 pm
Looks like 670 pcb and K5000 are exactly same. Components are same etc. However 3D Vision pro connector is missing. Wonder if soldering this would give this option too...Other difference is that K5000 have soldered power cords and 670 have connectors soldered on board.

Yes but what for? The 3D vision pro is to use with professional application and those do need the performance of a true K5000. ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 21, 2013, 06:53:59 pm
Looks like 670 pcb and K5000 are exactly same. Components are same etc. However 3D Vision pro connector is missing. Wonder if soldering this would give this option too...Other difference is that K5000 have soldered power cords and 670 have connectors soldered on board.

Yes but what for? The 3D vision pro is to use with professional application and those do need the performance of a true K5000. ;)

That's true, i don't need it but someone could like to use RF glasses. It should work with any 3D vision compatible device as well and can be used for gaming like normal 3D vision. IR was not good for my setup, flashes etc and needed looong usb cable but not using this anymore because W1070 is dlp-link and off course goal is passive 3D...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 21, 2013, 07:02:56 pm
Looks like 670 pcb and K5000 are exactly same. Components are same etc. However 3D Vision pro connector is missing. Wonder if soldering this would give this option too...Other difference is that K5000 have soldered power cords and 670 have connectors soldered on board.

Yes but what for? The 3D vision pro is to use with professional application and those do need the performance of a true K5000. ;)

That's true, i don't need it but someone could like to use RF glasses. It should work with any 3D vision compatible device as well and can be used for gaming like normal 3D vision. IR was not good for my setup, flashes etc and needed looong usb cable but not using this anymore because W1070 is dlp-link and off course goal is passive 3D...

I'm sorry to tell you that but the benq W1070 (great projector) is not so good for the omega filters. It' a DLP: great! But the throw ratio is not big enough (max 1,5:1 with full Zoom) and you will have color uniformity problems with it. Motormann advises a throw ratio of Minimum 1,5:1 and ideally 2:1.

Source: http://www.avsforum.com/t/1407101/official-omega-3d-passive-projection-system-thread/150#post_22927789 (http://www.avsforum.com/t/1407101/official-omega-3d-passive-projection-system-thread/150#post_22927789)

I think that if you cannot max out the zoom with yours W1070, you should buy 2 cheap H9500 (2D) which have vertical et horizontal Lenshift and are all together better than the W1070.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 21, 2013, 07:14:31 pm
Looks like 670 pcb and K5000 are exactly same. Components are same etc. However 3D Vision pro connector is missing. Wonder if soldering this would give this option too...Other difference is that K5000 have soldered power cords and 670 have connectors soldered on board.

Yes but what for? The 3D vision pro is to use with professional application and those do need the performance of a true K5000. ;)

That's true, i don't need it but someone could like to use RF glasses. It should work with any 3D vision compatible device as well and can be used for gaming like normal 3D vision. IR was not good for my setup, flashes etc and needed looong usb cable but not using this anymore because W1070 is dlp-link and off course goal is passive 3D...

I'm sorry to tell you that but the benq W1070 (great projector) is not so good for the omega filters. It' a DLP: great! But the throw ratio is not big enough (max 1,5:1 with full Zoom) and you will have color uniformity problems with it. Motormann advises a throw ratio of Minimum 1,5:1 and ideally 2:1.

Source: http://www.avsforum.com/t/1407101/official-omega-3d-passive-projection-system-thread/150#post_22927789 (http://www.avsforum.com/t/1407101/official-omega-3d-passive-projection-system-thread/150#post_22927789)

I think that if you cannot max out the zoom with yours W1070, you should buy 2 cheap H9500 (2D) which have vertical et horizontal Lenshift and are all together better than the W1070.

No problem to max out zoom, it's so short throw anyway. I will mod those filters inside too in the future so it's no issue. Lens shift is a bit off issue but it's just enough. Room temp is another :) but this is all for another thread...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 21, 2013, 08:48:04 pm
@ Jager: we should talk about filters and projectors on the appropriate forum on avs. See you there!
And I'm really eager to read your modding results!  :D
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 21, 2013, 09:39:38 pm
I suspect this is a different use case. The difference is that in my setup I am using a single large frame buffer to produce one large desktop across two separate "screens" (which just happen to form a single TFT panel).
In the case of 3D stuff, the frame buffer is probably not the same. Can you configure it as one large "desktop" with one set of 3D images being displayed on columns 1-1920 and the other set on columns 1921-3840?

There is no way to do single wide "desktop" for two monitors and using it for gaming. This is where nVidia surround is needed and it do not support 2 monitors. I can off course do wide desktop or clone one to another.

I can tell you right now that you are completely wrong. I am running XP x64 and have a T221 running which the GPU sees as two separate, independent 1920x2400 monitors. You go to the Nvidia control panel and tell it to stretch the desktop across both monitors (horizontal span). This gives me a single, seamless 3840x2400 desktop, and the 3840x2400 mode is available in games too (as I explained earlier, I am running Crysis on this, and have used it with a real Quadro 2000, GTS450, Quadrified (2000) GTS450, GTX470, Quadrified GTX470 (5000), GTX480, Quadrified GTX480 (6000), GTX580, Quadrified GTX580 (7000) and a GTX680 (not modified into a Quadro yet, will be modifying to Grid K2 in the next few days).

It works just fine, it always has. Which is much more than I can say for ATI cards.

I make no statement about the lesser versions of Windows and driver capability on them (Vista, 7 and 8) but this works perfectly (and with normal, unmodified GeForce cards) on XP/XP64.

Sharp 4K based monitors use same large frame trick(1920x2160+1920x2160) as your monitor to achieve 4k 60hz resolution so maybe there is driver enabled "mosaic/surround" for your setup too. Sharp 4k is not supported yet and therefor not work but ASUS(rebranded sharp) work with latest drivers, so driver look up if ASUS is connected and enables "mosaic/surround" support for it.

Don't know about the Sharp/Asus monitor, but T221 works without any special driver coordination. Two discrete monitors work the same - you can stretch the desktop across both and this mode is then available to games.

The only way I can see you getting synced and genlocked frames is by all outputs to screens coming off a single card, i.e. traditional SLI. That allows you to do processing on two cards but the monitor signal all comes out of a single frame buffer and a single vsync. Any more than that requires an external genlock device (QuadroSync mentioned on that page is a separate hardware device).

Link says otherwise, with K5000 you can do synced Mosaic up to 8 screen with SLI OR with Quadro Sync. You can use outputs(limited) from 2 cards when doing Surround with geforces(600 series and up) too and surround is always synced.

The key word being with QuadroSync this is not a piece of software, it is a separate, external genloc device costing more than a GTX680 card will cost you. Without QuadroSync, I am pretty sure that this works using the SLI trick and all the screens end up driven off the same card, the secondary card ends up being used only for processing, not for generating screen output. By all means tell me I'm wrong if you have actually tried this setup, but in the absence of any evidence to the contrary this is by far the most likely possibility.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 21, 2013, 11:00:29 pm
Gordan, you do not need Quadro Sync addon card with 2 GPU SLI and synced Mosaic up to 8 displays with K5000, if you have even more K5000's installed then Quadro Sync Card is needed. Other Quadros need Sync card when more then one installed. All this info you can find from nVidia site. You can also use outputs from second card just like SLI surround and SLI stereo3D surround with Geforces(600 series and up and only 3 monitor supported). Surround is always synced with geforces too. Surround is just Mosaic for desktop.

look table "Number of synchronized displays/projectors from a single system with NVIDIA® Mosaic technology"
here >>> http://www.nvidia.com/object/quadro-scalable-visualization-solutions.html (http://www.nvidia.com/object/quadro-scalable-visualization-solutions.html)

Well i think XP may have this expanded thing working. It is NOT working in windows 7. There is no way to game with 3840x1080p in Win7 with two screens WITH GeForce. You need nVidia surround for multimonitor gaming and even requested several times nVidia is not adding support for 2 monitor surround, they feel no one like to play bezel in middle...

EDIT: It was actually Fermi era that introduced 3D Vision Surround and that needed SLI for extra outputs so 3 monitors could be used. With Keplers you can do it with single card. Fermi based Quadro's seems to be able to do 4 monitor mosaic without need of sync card when SLI.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 21, 2013, 11:12:06 pm
Maybe Windows 7 is deficient in this way - I wouldn't know. If it is why would you want to use it?
All I can say is that XP64 and Linux both work wonderfully with this setup. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 21, 2013, 11:49:51 pm
Maybe Windows 7 is deficient in this way - I wouldn't know. If it is why would you want to use it?
All I can say is that XP64 and Linux both work wonderfully with this setup. :)

Windows 7 is good most of the stuff i do. It's more at nVidia site this time. I just hope that Quadro hack will fix things :). After all there is no point to buy "underclocked" Kepler for gaming that cannot even do SLI without certified system...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: hanyuefeng on July 22, 2013, 07:53:30 am
Hi everyone,

I`m new in this area and track this post for a time.

My situation is that I have IBM T221 and a GTX 590, however, it didn`t support mosaic mode so that cannot give me 3840x2400 decently, thus I had to buy another ATI card which has analogous feature.

I see there are methods to mod resistors or mod soft-straps to convert a geforece card to a quadro one, and know 450 and 600 series can been done in that way. But I don`t how to deal with my idle 590 as for my limited knowledge, could anyone provide some detail info on it?

Any help will be very appreciated.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 22, 2013, 03:20:00 pm
My situation is that I have IBM T221 and a GTX 590, however, it didn`t support mosaic mode so that cannot give me 3840x2400 decently, thus I had to buy another ATI card which has analogous feature.

Don't know what you're talking about, I've been running a T221 successfully at seamless single desktop resolution of 3840x2400 with Nvidia cards from 8800GT to various 4xx series cards, a GTX580 and a GTX680, before and after quadrifying the cards without any issues at all. No modification is required to get Nvidia cards working perfectly with T221 monitors, at least in XPx64 and Linux (the only two OS-es I use).

My experience with ATI cards and T221 has been utterly dire. The most recent hardware I've had moderate success with on T221 has been the Radeon 4xxx series cards, and windows drivers of that approximate generation (2011). This is because of the following:

1) No ATI cards I have ever found that are later than 4xxx series have more than a single DL-DVI output. If you are using DL-DVI->LFH60 adapters (google for Cirthix T221 and you'll find it) you need 2x DL-DVI ports.

2) If you are using 4x SL-DVI ports, you are even more out of luck because no ATI card comes with quad DVI ports. Nvidia cards don't either. You could potentially get away with running two cards on a DG5/DGP T221, but DG1 and DG3 require genlocked outputs (allegedly - never tested this myself with multiple cards on my DG3 - perhaps I should) which won't be the case with outputs from 2 cards.

3) If you are using 2xSL-DVI, and you want more than 25Hz, you won't be able to achieve it with ATI cards because any recent ATI driver will flat out refuse to do any mode except what the monitor reports via EDID. The driver will even ignore custom monitor .inf drivers. If you use an Nvidia card (or use the open source radeon Xorg driver on Linux which supports custom modelines) you can actually achieve about 33Hz with 2x SL-DVI outputs.

4) Nvidia cards happily reliably push 165MHz on each SL-DVI output (maximum standard supports). My Radeon 4850 produces strange blue artifacts when pushing 165MHz, I had to drop it down to 160MHz.

5) ATI cards produce pretty obvious tearing between the two halves of the screen. This is obvious in all applications (e.g. dragging an application window around the center of the screen, very obvious in full screen games at 3840x2400 or when playing back HD videos). Nvidia cards do not suffer from this - they seem to use a single large framebuffer so there are no sync issues.

It is all these issues with ATI cards that a T221makes particularly obvious that are the main reason why I consider ATI cards unfit for purpose.

The only reason I am using a 4850 at all is because I have a slightly broken motherboard PCIe slot that seems to have a failed PCIe lane #1. ATI cards seem to be clever enough to go into x8 mode and use the 2nd 8 lanes while all my other cards (GPU and otherwise) don't do that and thus don't detect in that slot. This is the only good thing I can say about the ATI cards.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: hanyuefeng on July 22, 2013, 07:21:41 pm
Thanks for your reply, gordan.

My mode is DG3 and I have 2 specified DL-DVI cables which brought from japanese seller and each one hava an EDID chip socket on it so you can easily control the refresh rate by installting different chip, however, I don`t want to two 1920x2400@60Hz to combine an 3840x2400@60Hz which is the only way my 590 providing me. So that is why I want ATI Eyefinity or Nvidia Mosaic which only bundled with quadro cards can meet my requirement.

By the way, gordan, have you successfully modded any 500 series geforce card into quadro ? any experience?

Thank you very much.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 22, 2013, 08:04:09 pm
OK, with a DG3 you cannot use the Cirthix adapter because the input circuitry is slightly different. As far as I can tell, on the DG5 you can do this because it accepts 1920x2400@48Hz in interlaced format, so one half of the DL carries odd lines, and the other even lines. On the DG3 this won't work.

The only thing you can really do on the DG3 is either use 2xSL-DVI for 32-33Hz or 4xSL-DVI for more. I haven't tried feeding 4xSL-DVI into my DG3, but if it is true that the signal needs to be genlocked you are pretty much out of luck - all you can really do is get an old Nvidia NVS card with 2xLFH60 ports and use that to drive the monitor. What you _might_ be able to do is drive it using 2xSL-DVI + HDMI (as another SL-DVI) + DP (with a passive SL-DVI adapter). That might actually give you genlocked 4xSL-DVI outputs. The only problem is that if you try this with an ATI card you will find that the vast majority of them will only let you use up to 3 outputs simultaneously, which shoots down the idea of using ATI cards unless you get one of the older eyefinity models.

Note: The most you will ever get out of a T221 with custom modes (so forget ATI since they won't do custom modes as I explained earlier) is 55Hz using 2xDL-DVI inputs (only possible on the DG5). If you are using 4xSL-DVI it will probably be less than 55Hz max because each input has to have separate blanking which will eat into the bandwidth. By default DG5 supports up to 48Hz, and I'm finding this is perfectly fine even for gaming, so I never bothered to "overclock it" to 55Hz. If you decide to try doing that you might want to consider using thermal epoxy to glue some heatsinks to the FPGA chips inside the T221.

I use my DG3 for general purpose desktop work and am driving it with 2xSL-DVI @ 32Hz (with an Nvidia card I can get 33Hz out of it - with ATI I have to knock the clock rate from 165MHz down to 160MHz which results in 1Hz less refresh).

I have never used Mosaic on these, I never needed it. In XP64 I just go into the Nvidia control panel, configure multiple displays, and configure it for horizontal span. It just works. It is possible that they decided to try to extort more money out of customers by removing this feature on Vista and Windows 7 - I never tried it on those.

And yes, a GTX580 can be modified into a Quadro 7000. I am currently selling mine if you are interested:
http://www.ebay.co.uk/itm/281138321842 (http://www.ebay.co.uk/itm/281138321842)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: hanyuefeng on July 24, 2013, 03:35:49 pm
I see your point gordan, however, I already have a 590 idle so I`m curious your work on 580 but not itself, could you share some details as an reference to my 590 modding.

Thanks. ;)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 25, 2013, 08:43:16 am
K6000 Quadro. http://nvidianews.nvidia.com/Releases/NVIDIA-Unveils-New-Flagship-GPU-for-Visual-Computing-9e3.aspx (http://nvidianews.nvidia.com/Releases/NVIDIA-Unveils-New-Flagship-GPU-for-Visual-Computing-9e3.aspx). 780/TITAN hack needed :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 25, 2013, 09:44:33 am
K6000 Quadro. http://nvidianews.nvidia.com/Releases/NVIDIA-Unveils-New-Flagship-GPU-for-Visual-Computing-9e3.aspx (http://nvidianews.nvidia.com/Releases/NVIDIA-Unveils-New-Flagship-GPU-for-Visual-Computing-9e3.aspx). 780/TITAN hack needed :)

YES! A hack of the GTX 780 would be needed indeed... A lot more of horse power for playing with 3D vision in 1080p! Someone?

How are you doing Jager? I'm waiting for you to mod your gtx 670 and to tell me that it work for 3d passiv dual projection with 3d vision you know :)
Have you bought your second BENQ W1070 yet?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 25, 2013, 12:07:52 pm
K6000 Quadro. http://nvidianews.nvidia.com/Releases/NVIDIA-Unveils-New-Flagship-GPU-for-Visual-Computing-9e3.aspx (http://nvidianews.nvidia.com/Releases/NVIDIA-Unveils-New-Flagship-GPU-for-Visual-Computing-9e3.aspx). 780/TITAN hack needed :)

YES! A hack of the GTX 780 would be needed indeed... A lot more of horse power for playing with 3D vision in 1080p! Someone?

How are you doing Jager? I'm waiting for you to mod your gtx 670 and to tell me that it work for 3d passiv dual projection with 3d vision you know :)
Have you bought your second BENQ W1070 yet?

Another W1070 arrived to local post office, will collect it today. I have been trying to find those resistors from old stuff i have but not found, so i need to wait those ebay resistors.
 You can get 780 for 550€ and overclock those to close TITAN performance or even better. There is also bios mods that disables boost feature and forces clocks to say 1200 or whatever. Maybe this will give boost to those pro programs that do not use correct power state(if there is any) of modded quadro's.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 25, 2013, 05:37:04 pm
K6000 looks pretty sweet, but the press release says 2880 cores. Titan only has 2688. Modding it might not work. It has been reported before that modifying a 144-shader GTS450 into a Quadro 2000 doesn't work, while I have successfully modified 192 shader versions into Quadro 2000s, which implies you have to have at least as many shaders and memory controllers for the modification to work.

Also the K series seems to not be supported for MultiOS VGA passthrough virtualization, and there is nothing listed in the press release about this being available on the K6000. Since one of the main benefits of modifying a GeForce into a Quadro is precisely for enabling VGA passthrough, the benefits from a Titan->K6000 mod seem much slimmer even if it does work.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 25, 2013, 07:16:50 pm
K6000 looks pretty sweet, but the press release says 2880 cores. Titan only has 2688. Modding it might not work. It has been reported before that modifying a 144-shader GTS450 into a Quadro 2000 doesn't work, while I have successfully modified 192 shader versions into Quadro 2000s, which implies you have to have at least as many shaders and memory controllers for the modification to work.

Also the K series seems to not be supported for MultiOS VGA passthrough virtualization, and there is nothing listed in the press release about this being available on the K6000. Since one of the main benefits of modifying a GeForce into a Quadro is precisely for enabling VGA passthrough, the benefits from a Titan->K6000 mod seem much slimmer even if it does work.

GTX 670 to "K5000" seems to work so maybe this is doable.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 25, 2013, 07:19:49 pm
K6000 looks pretty sweet, but the press release says 2880 cores. Titan only has 2688. Modding it might not work. It has been reported before that modifying a 144-shader GTS450 into a Quadro 2000 doesn't work, while I have successfully modified 192 shader versions into Quadro 2000s, which implies you have to have at least as many shaders and memory controllers for the modification to work.

Also the K series seems to not be supported for MultiOS VGA passthrough virtualization, and there is nothing listed in the press release about this being available on the K6000. Since one of the main benefits of modifying a GeForce into a Quadro is precisely for enabling VGA passthrough, the benefits from a Titan->K6000 mod seem much slimmer even if it does work.

GTX 670 to "K5000" seems to work so maybe this is doable.

What is exactly your GTX 670? Has someone already modded exactly your model or do you hope you will find which resistors you need to modify?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 25, 2013, 07:38:01 pm
K6000 looks pretty sweet, but the press release says 2880 cores. Titan only has 2688. Modding it might not work. It has been reported before that modifying a 144-shader GTS450 into a Quadro 2000 doesn't work, while I have successfully modified 192 shader versions into Quadro 2000s, which implies you have to have at least as many shaders and memory controllers for the modification to work.

Also the K series seems to not be supported for MultiOS VGA passthrough virtualization, and there is nothing listed in the press release about this being available on the K6000. Since one of the main benefits of modifying a GeForce into a Quadro is precisely for enabling VGA passthrough, the benefits from a Titan->K6000 mod seem much slimmer even if it does work.

GTX 670 to "K5000" seems to work so maybe this is doable.

What is exactly your GTX 670? Has someone already modded exactly your model or do you hope you will find which resistors you need to modify?

I have reference design 670. Same pcb as K5000 have. My resistors arrived too and will do some soldering tomorrow or day after.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 25, 2013, 07:51:23 pm
K6000 looks pretty sweet, but the press release says 2880 cores. Titan only has 2688. Modding it might not work. It has been reported before that modifying a 144-shader GTS450 into a Quadro 2000 doesn't work, while I have successfully modified 192 shader versions into Quadro 2000s, which implies you have to have at least as many shaders and memory controllers for the modification to work.

Also the K series seems to not be supported for MultiOS VGA passthrough virtualization, and there is nothing listed in the press release about this being available on the K6000. Since one of the main benefits of modifying a GeForce into a Quadro is precisely for enabling VGA passthrough, the benefits from a Titan->K6000 mod seem much slimmer even if it does work.

GTX 670 to "K5000" seems to work so maybe this is doable.

What is exactly your GTX 670? Has someone already modded exactly your model or do you hope you will find which resistors you need to modify?

I have reference design 670. Same pcb as K5000 have. My resistors arrived too and will do some soldering tomorrow or day after.

You mean today!!!  :clap: And then you buy a gtx 780, you mod it, and you tell us how to do it. And then I follow your steps :)  ::)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 25, 2013, 09:00:41 pm
You mean today!!!  :clap: And then you buy a gtx 780, you mod it, and you tell us how to do it. And then I follow your steps :)  ::)

I will try 670 to "k5000" without failing first. "K5000" SLI is main target at the moment but i think it will never work without certificated workstation. Maybe someone do HyperSLI for quadro some day but i think it's not going to happen. I wish i had skill's to find out if 780 to K6000 is even possible :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 25, 2013, 10:47:10 pm
You mean today!!!  :clap: And then you buy a gtx 780, you mod it, and you tell us how to do it. And then I follow your steps :)  ::)

I will try 670 to "k5000" without failing first. "K5000" SLI is main target at the moment but i think it will never work without certificated workstation. Maybe someone do HyperSLI for quadro some day but i think it's not going to happen. I wish i had skill's to find out if 780 to K6000 is even possible :)

And where are all the skilled people of this forum? All in vacations? Or did nvidia have them assassinate?  :wtf:
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on July 25, 2013, 11:22:21 pm
And where are all the skilled people of this forum? All in vacations? Or did nvidia have them assassinate?  :wtf:

This is an Electronics board and there hasn't been any real electronics talk in the past 10 pages or more. Probably why this got moved to general chat. And while some cards may be able to have the straps identified based on the similarity to another confirmed card, to my knowledge no one here has a 780 to find the correct resistors to begin with.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 26, 2013, 06:10:09 am
Well i managed to order capacitors instead of resistors :palm:  |O Need to find 40K somewhere, 15K i all ready have...

PS.Link i posted earlier was wrong, edited it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 26, 2013, 07:45:56 am
Well i managed to order capacitors instead of resistors :palm:  |O Need to find 40K somewhere, 15K i all ready have...

PS.Link i posted earlier was wrong, edited it.

Oh no!  :palm: You should go shopping in town today. It must not be so hard to find a small electronic store with such resistors.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 26, 2013, 07:48:53 am
I'm pretty sure 15K is all you actually need. Modify the 3rd nibble to change the ID from 0x1189 to 0x11A9. From there on you can use the 5 bits of the soft strap to switch between K5000 or GTX680M (which has the same spec as GTX670). It's what I'll be doing to my GTX680 this weekend. Make the hard-strap ID 0x11A0 (GTX680M) instead of 0x1180 (GTX680) by changing only the 3rd nibble resistor. Then from that I can soft-mod to GTX680MX (0x11A3, same spec as GTX680) for non-Quadro uses or a Grid K2 (0x11BF) for virtualization.

You may find it preferable to just strip out all the UEFI crap out while you're BIOS hacking. I keep meaning to write up a BIOS modding guide for hacking most things since the 4xx series onward, but I've not had the time to do it in the past month. :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 26, 2013, 08:01:35 am
I'm pretty sure 15K is all you actually need. Modify the 3rd nibble to change the ID from 0x1189 to 0x11A9. From there on you can use the 5 bits of the soft strap to switch between K5000 or GTX680M (which has the same spec as GTX670). It's what I'll be doing to my GTX680 this weekend. Make the hard-strap ID 0x11A0 (GTX680M) instead of 0x1180 (GTX680) by changing only the 3rd nibble resistor. Then from that I can soft-mod to GTX680MX (0x11A3, same spec as GTX680) for non-Quadro uses or a Grid K2 (0x11BF) for virtualization.

You may find it preferable to just strip out all the UEFI crap out while you're BIOS hacking. I keep meaning to write up a BIOS modding guide for hacking most things since the 4xx series onward, but I've not had the time to do it in the past month. :(

I was wrong... There is still an expert among us!  :-+

And would you be so nice to try for us (with for example 2 screens instead of a dual projector stack) if you can activate 3D vision with a quadro card when you already have activated the option: passive stereo?

In the help of nvidia, I understand it is possible but I can't be sure until someone has tried it out:
http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7 (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7)

You don't need an 3D vision emitter to activate 3D vision since there is an emulator for this:
http://3dvision-blog.com/forum/viewtopic.php?f=9&t=997 (http://3dvision-blog.com/forum/viewtopic.php?f=9&t=997)

Thank you a lot! You would be the first on earth to answer this "simple" question ! 8) :clap:
Title: GTX 670 into quadro K5000 mod: complicated?
Post by: Soulnight on July 26, 2013, 12:32:16 pm
I can confirm the mod done by blanka.
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)
But I pimped it a little bit.

670GTX to K5000 works!

R4 on the front side.
R1, R2, R3 on the bottom side.

K5000 works absolutely stable for me, but has no performance increase in SPECviewperf. I tested with few different Quadro drivers.

Summary
GPU Name         R1 / 0-7 4th byte        R2 / 8-f 4th byte   R3/ 3th (high)   R4 / 3th (low)
GTX 660Ti          20K                            None                       None             25k
GTX 670            None                           10K                        None              25k
tesla k10           none                            40K                         None            25k
Quadro k5000    none                            15k                          40K            none
grid k2              none                            40K                          40K            none

I flashed it (EVGA 670GTX 2GB 915MHz) with the K5000 bios from techpowerup.
"nvflash.exe -4 -5 -6 K5000.rom" had to be used because of different subsystem and board id.

It started with minor pixel errors but booted into win7.
After driver installation and reboot win7 didn't start anymore.
Flashing it back worked without problems.

It's me or the mod made by blanka seemed to be a lot more complicated? Do you need a cable like blanka did? Blanka also said you needed to put R3 manually since there was no place for it but shlomo.m didn't seem to have this problem.

Here the link to the picture of shlomo.m:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg217534/#msg217534 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg217534/#msg217534)

Here the link for blanka mod with pictures as well:
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)

What do you think?

ps: I would like to buy a gtx 670 instead of a gtx 680 because the performances are about the same even with 3D vision and the gtx 670 costs 100€ less! In germany, the GTX 670 is selling for 260€! What model should I take?
What was exactly the model of shlomo.m: EVGA 670GTX 2GB 915MHz  ???

Thank you!


Title: Re: GTX 670 into quadro K5000 mod: complicated?
Post by: Jager on July 26, 2013, 12:56:18 pm

It's me or the mod made by blanka seemed to be a lot more complicated? Do you need a cable like blanka did? Blanka also said you needed to put R3 manually since there was no place for it but shlomo.m didn't seem to have this problem.

Here the link to the picture of shlomo.m:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg217534/#msg217534 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg217534/#msg217534)

Here the link for blanka mod with pictures as well:
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)

What do you think?

ps: I would like to buy a gtx 670 instead of a gtx 680 because the performances are about the same even with 3D vision and the gtx 670 costs 100€ less! In germany, the GTX 670 is selling for 260€! What model should I take?
What was exactly the model of shlomo.m: EVGA 670GTX 2GB 915MHz  ???

Thank you!

I'm doing it like shlomo.m did. There is reference design PCB's, custom PCB's and those that use 680 PCB. So i think ref/680 PCB is safe bet.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on July 26, 2013, 01:10:07 pm
Is it going well?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 29, 2013, 07:56:37 am
OK, so I finally took a soldering iron to my GTX680 - and found that I changed the wrong resistor.  :palm:
Which made me re-read these posts:

https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg202901/#msg202901 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg202901/#msg202901)
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg209227/#msg209227 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg209227/#msg209227)
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)

It looks like there is an inconsistency in the findings, or at least an inconsistency in the way the ID numbers are set. Specifically, for the 4th nibble, the translation as per the first post works:

4th nibble, Resistor 2
5K   = 0
10K = 1
15K = 2
20K = 3
25K = 4
30K = 5
35K = 6
40K = 7

4th nibble, Resistor 3
5K   = 8
10K = 9
15K = A
20K = B
25K = C
30K = D
35K = E
40K = F

That's all well and good, but it seems like a waste of time since the bottom 5 bits (4th nibble plus the last bit of the 3rd nibble) can actually be changed by modifying the soft-strap. So the real juicy part is modifying the 3rd nibble since this is required to change the part of the ID that cannot be manipulated using only the soft strap. So you can go from GTX680 -> Tesla K10 by only changing the soft strap, but you cannot change to a K5000 or K2.

But - the 3rd nibble translation table does not appear to be the same (for resistors 1 and 2). Specifically, 3rd post linked above, from verybigbadboy, states:

Summary
GPU Name   Resistor 0 / 3rd byte   Resistor 1 / 3rd byte   Resistor 2 / 8-f 4th byte   Resistor 3 / 0-7 4th byte
GTX 660 ti   none   25k   none   20k
GTX 670   none   25k   10k   none
GTX 680   none   25k   none   5k
GTX 770   none   25k   none   25k
tesla k10   none   25k   40k   none
quadro k5000   40k   none   15k   none
grid k2   40k   none   40k   none

3rd symbol on K5000 and K2 is B; according to the original translation table, B should be:
Resistor 0: 20K resistor
Resistor 1: none

For the other cards listed the 3rd nibble is 8, which should be (5K, none).

Has anybody figured out what the full translation table here is?

I can sort of infer*:
25K=8
*30K=9
*35K=A
40K=B

but it is unclear why they are not set on the same resistor - and where exactly does the division fall between the two. I'm going to hazard a guess (and test when I get some 35K resistors) that it is resistor 1 that needs to be modified, but that is only a guess at the moment.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on July 31, 2013, 10:20:57 am
Ok, did some soldering. Goal is to mod GTX 670  to K5000. I have PNY ref desing GTX670.
Did it like  shlomo.m did here -->https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg217534/#msg217534 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg217534/#msg217534)

Used this table, but not able to find 40K so used 39K instead.

GPU Name         R1 / 0-7 4th byte        R2 / 8-f 4th byte   R3/ 3th (high)   R4 / 3th (low)
GTX 660Ti          20K                            None                       None             25k
GTX 670            None                           10K                        None              25k
tesla k10           none                            40K                         None            25k
Quadro k5000    none                            15k                          40K            none
grid k2              none                            40K                          40K            none

My GTX670 shows up as GRID K2, and removing R3/3th (high) it still show up as GRID K2. So 39K do not work after all? Will try 43K after i get those.

edit: none - none - none - none gives also GRID K2 ID...

edit:Got it working with potentiometer but there seem to be no benefits do this mod. No way to enable dual passive 3D after all. No mosaic either and it seems that this mod just allows to install Quadro drivers but to no benefit at all. Only quadro feature that worked was nView that you can "hack" without hard mod. Did try several drivers but no help. Mosaic utility reported no support...Maybe there is need for a BIOS mod to get things working....
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 31, 2013, 11:40:33 pm
Interesting, good work, Jager. I'm surprised that Mosaic doesn't work, it did on older cards. It looks like you only managed to achieve modifying it to Grid K2, though. The main advantage of modifying to a Grid card is VGA passthrough. It is quite plausible that Mosaic and 3D are not supported on the Grid series because they are specialist cards for virtualization. You might find it works when you change it to a K5000.

Note that if you have the card in Grid K2 mode (make sure it is reliably detected as such, I think you are supposed to have a 40K resistor rather than disconnected or things can become problematic), you can modify to K5000 using a BIOS only mod. Strip out the UEFI header (first 1024 bytes (everything up to 0x400, you'll find the AA55 header marking the beginning of the real BIOS. Then strip out the tail (UEFI crypto certs and a bunch of whitespace, trim it out, the end BIOS should be a little under 64KB). Then you can use most of the normal tools to edit it like before. Edit the device ID in the BIOS, re-calculate the checksum (using nibitor or write a program to do it for you), nvflash it to the card and then use nvflash to change the straps to match the device ID and you should be good to go.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on August 01, 2013, 06:15:03 am
Jager told me in MP that he succeeded in having the GTX 670 showing as K5000 but no success for mosaic...

@ Gordan: could you try to activate mosaic with a modded GTX 680?

Thank you a lot!  :-+
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on August 01, 2013, 06:55:27 am
@ Jager: here: http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

They do not talk about mosaic, do they?  ???
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on August 01, 2013, 07:04:26 am
It should be noted that this mod was originally performed not to get a high performance Quadro or Telsa card, it was done to unlock additional features such as Mosaic support which does indeed work.

It should work Jager...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 01, 2013, 08:44:58 am
Interesting, good work, Jager. I'm surprised that Mosaic doesn't work, it did on older cards. It looks like you only managed to achieve modifying it to Grid K2, though. The main advantage of modifying to a Grid card is VGA passthrough. It is quite plausible that Mosaic and 3D are not supported on the Grid series because they are specialist cards for virtualization. You might find it works when you change it to a K5000.

Note that if you have the card in Grid K2 mode (make sure it is reliably detected as such, I think you are supposed to have a 40K resistor rather than disconnected or things can become problematic), you can modify to K5000 using a BIOS only mod. Strip out the UEFI header (first 1024 bytes (everything up to 0x400, you'll find the AA55 header marking the beginning of the real BIOS. Then strip out the tail (UEFI crypto certs and a bunch of whitespace, trim it out, the end BIOS should be a little under 64KB). Then you can use most of the normal tools to edit it like before. Edit the device ID in the BIOS, re-calculate the checksum (using nibitor or write a program to do it for you), nvflash it to the card and then use nvflash to change the straps to match the device ID and you should be good to go.

Hi, i got it working as K5000 with using pot @40k.
Using mosaic utility did not allowed me to set 3840x1080. I did try it several drivers. There is no additional setup options in nVidia control panel so no "workstation" tree. I did try Mosaic utility but using "query lgpu" it shows supportmosaic=0 +some other information. Whenever i try to enable mosaic with "set rows=1 cols=2  out=0,0 out=0,1 res=3840,1080,60" it returns error flag not supported. Will do more testing later.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on August 01, 2013, 08:51:36 am
Interesting, good work, Jager. I'm surprised that Mosaic doesn't work, it did on older cards. It looks like you only managed to achieve modifying it to Grid K2, though. The main advantage of modifying to a Grid card is VGA passthrough. It is quite plausible that Mosaic and 3D are not supported on the Grid series because they are specialist cards for virtualization. You might find it works when you change it to a K5000.

Note that if you have the card in Grid K2 mode (make sure it is reliably detected as such, I think you are supposed to have a 40K resistor rather than disconnected or things can become problematic), you can modify to K5000 using a BIOS only mod. Strip out the UEFI header (first 1024 bytes (everything up to 0x400, you'll find the AA55 header marking the beginning of the real BIOS. Then strip out the tail (UEFI crypto certs and a bunch of whitespace, trim it out, the end BIOS should be a little under 64KB). Then you can use most of the normal tools to edit it like before. Edit the device ID in the BIOS, re-calculate the checksum (using nibitor or write a program to do it for you), nvflash it to the card and then use nvflash to change the straps to match the device ID and you should be good to go.

Hi, i got it working as K5000 with using pot @40k.
Using mosaic utility did not allowed me to set 3840x1080. I did try it several drivers. There is no additional setup options in nVidia control panel so no "workstation" tree. I did try Mosaic utility but using "query lgpu" it shows supportmosaic=0 +some other information. Whenever i try to enable mosaic with "set rows=1 cols=2  out=0,0 out=0,1 res=3840,1080,60" it returns error flag not supported. Will do more testing later.

I know those are questions for dummies (sorry) but:
1) have you erased any trace of the previous geforce drivers?
2) Do you have 2 displays connected at the time you try to activate mosaic?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 01, 2013, 08:58:15 am
@ Jager: here: http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7. (http://nvidia.custhelp.com/app/answers/detail/a_id/3012/~/how-to-configure-passive-or-dual-pipe-stereo-with-quadro-cards-in-windows-7.)

They do not talk about mosaic, do they?  ???

There is no way to follow that guide because there is no options needed. I have exact same options as geforce drivers. Drivers do some additional checks and do not enable needed options for stereo. Mosaic could have been "workaround" and it would make possible to use tridef3D at least.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 01, 2013, 09:01:08 am
I know those are questions for dummies (sorry) but:
1) have you erased any trace of the previous geforce drivers?
2) Do you have 2 displays connected at the time you try to activate mosaic?

1.Yes
2.Of course, two identical projectors with dvi-to-hdmi and that should be supported.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 01, 2013, 10:39:55 am
I'll try it as soon as my GTX680 is re-modified. I am still waiting for the correct resistors. My last attempt went a bit wrong, I ended up modifying the ID from 0x1180 to 0x1182 instead of 0x11A0, due to an epic brainfart.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 02, 2013, 07:15:02 am
Hmm... It would appear Nvidia don't list the Mosaic utility available for anything older than Windows 7 any more. :-/
I don't suppose anyone has a link to the XP64 version?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 05, 2013, 01:00:43 pm
Vacation is over and i had a change to look two Quadro machines at work. One is Win7 with quadro 600 and other is XP32bit with Quadro 2000. Both machines have Workstation tree and possible to chose different stereo modes at manage3d setings. Whole manage 3D settings is different as you can chose 3D profiles for professional programs. WinXP machine do not have Mosaic setup at Workstation tree, only "view system topology". It seems that changing those resistors do not affect what features will be enabled. It only allows to install quadro drivers but those drivers look features from vbios? and enables only features that is supported in vbios not by product name/ID. I did some bios Hex editing and changed subsystem id to correspond K5000 but still no help. So there will be need for some serious vbios hacking and this is area that i have no experience. Maybe K5000 bios could be modded to support these hard modded cards?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 05, 2013, 06:01:53 pm
I don't know about the other cards, but I have tried flashing a Q2000 BIOS onto a GTS450. You have to doctor the device ID straps to override the hardware straps accordingly, but it works well enough to boot up. I never tested more thoroughly than that since I didn't see the point. If I planned to keep it I would have doctored all the clock speeds and memory timings to match the original BIOS. There was no effect on performance, over and above what was caused by the drop in clock speeds to Quadro levels.  I didn't notice any extra features, but I wasn't looking (was testing on XP).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 06, 2013, 09:59:03 am
Did some more testing. Flashed my GTX670 with K5000 BIOS. GTX670 shader count, memory size and board ID is different so it was quite clear that this will not work. Interesting thing was that when i flashed back to GTX670 BIOS something left behind from K5000 BIOS. Size is now 129kb instead 96kb that GTX670 normally have, K5000 bios is 221kb. When i first opened GPU-Z it recognized GPU as GK104GT and bios as "modified" but after some time without touching bios it showed up correctly. Funny thing is that now i have <workstation> options in nvidia control panel but only "change ECC state" and after looking bios with hex editor it clearly show that those extra 33kb included EEC option(this code is after 670 normal bios code). So it is now quite clear that BIOS for modded one is needed to get this thing actually behaving like K5000, this soldering is just for name change without some hardcore BIOS editing. 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on August 06, 2013, 08:47:40 pm
Did some more testing. Flashed my GTX670 with K5000 BIOS. GTX670 shader count, memory size and board ID is different so it was quite clear that this will not work. Interesting thing was that when i flashed back to GTX670 BIOS something left behind from K5000 BIOS. Size is now 129kb instead 96kb that GTX670 normally have, K5000 bios is 221kb. When i first opened GPU-Z it recognized GPU as GK104GT and bios as "modified" but after some time without touching bios it showed up correctly. Funny thing is that now i have <workstation> options in nvidia control panel but only "change ECC state" and after looking bios with hex editor it clearly show that those extra 33kb included EEC option(this code is after 670 normal bios code). So it is now quite clear that BIOS for modded one is needed to get this thing actually behaving like K5000, this soldering is just for name change without some hardcore BIOS editing.

And could you try to edit the bios witn right shader counts, etc? And flash it again?
Thx :) Your work is appreciated!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 07, 2013, 05:12:00 pm
That is indeed interesting - does the ECC toggle actually work? Does the memory amount shrink by 1/9? If so, any chance you could PM me a link where I could download the before+after BIOS for analysis?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 08, 2013, 08:04:15 am
That is indeed interesting - does the ECC toggle actually work? Does the memory amount shrink by 1/9? If so, any chance you could PM me a link where I could download the before+after BIOS for analysis?

Otion do not work. I can enable it but after restart there is still small star next to checked checkbox that says it will be enabled after restart. It definetely tries to enable on boot because screen blanks way that it wont normally do.

I did some testing with tridef and it seems that outputs on dualprojection is synced after all, this is also card without mods. So i think it is nowadays navite behavior    also with Geforce up to 2xSLI. Now i just need to find another way to enable Dual passive stereo and buying K6000 is not an option :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on August 08, 2013, 08:20:40 am
TRidef doesn't support Nvidia SLI... You would instead need a beast: GTX 780 :) Is it nice to play with tridef games in passive 3d 1080p 60hz?  :P How do you know it is synchronized for both projectors?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 08, 2013, 10:51:40 am
TRidef doesn't support Nvidia SLI... You would instead need a beast: GTX 780 :) Is it nice to play with tridef games in passive 3d 1080p 60hz?  :P How do you know it is synchronized for both projectors?

To be honest 1080p 60hz is not that great because framerate. Tridef also support dual projection only for DX9. Many of my favorite games do not work as well with 3D vision+helix mod. It is quite easy to tell when 3D is out of sync, maybe i do side by side video to confirm this...

Too bad 670 to K5000 was "fail", but i will keep looking. Maybe nvidia inspector's stereo settings could help and there is 3d vision hacks etc...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on August 08, 2013, 11:34:16 am
TRidef doesn't support Nvidia SLI... You would instead need a beast: GTX 780 :) Is it nice to play with tridef games in passive 3d 1080p 60hz?  :P How do you know it is synchronized for both projectors?

To be honest 1080p 60hz is not that great because framerate. Tridef also support dual projection only for DX9. Many of my favorite games do not work as well with 3D vision+helix mod. It is quite easy to tell when 3D is out of sync, maybe i do side by side video to confirm this...

Too bad 670 to K5000 was "fail", but i will keep looking. Maybe nvidia inspector's stereo settings could help and there is 3d vision hacks etc...

The best and only solution for 3d vision dual projector passive 3D is still this demultiplexer for 3000$ which is 3D vision ready for 120hz 1080p 3D gaming and where you can use any nvidia cards:
http://www.mviewtech.com/listen.asp?ProdId=111025104433 (http://www.mviewtech.com/listen.asp?ProdId=111025104433)
http://www.dhgate.com/product/ma2p202-dvi-single-channel-active-to-passive/144319832.html (http://www.dhgate.com/product/ma2p202-dvi-single-channel-active-to-passive/144319832.html)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 09, 2013, 02:13:24 pm
That is indeed interesting - does the ECC toggle actually work? Does the memory amount shrink by 1/9? If so, any chance you could PM me a link where I could download the before+after BIOS for analysis?

Otion do not work. I can enable it but after restart there is still small star next to checked checkbox that says it will be enabled after restart. It definetely tries to enable on boot because screen blanks way that it wont normally do.

A before+after BIOS check would still be handy if it is different.
The other possibility, if you used a 3rd party VBIOS flash package, is that it also brought with it a FPGA blob with it and it somehow flashed that onto the card via some less documented means, and when you downgraded the BIOS that wasn't reverted.

If all your video outputs work fine, I see no reason to not use a Quadro BIOS - but you will still need to modify the straps in the BIOS to match the hard-straps you need to override (if any) and you may also want to change the clock speeds and timings to the GeForce spec.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 13, 2013, 06:11:48 am
That is indeed interesting - does the ECC toggle actually work? Does the memory amount shrink by 1/9? If so, any chance you could PM me a link where I could download the before+after BIOS for analysis?

Otion do not work. I can enable it but after restart there is still small star next to checked checkbox that says it will be enabled after restart. It definetely tries to enable on boot because screen blanks way that it wont normally do.

A before+after BIOS check would still be handy if it is different.
The other possibility, if you used a 3rd party VBIOS flash package, is that it also brought with it a FPGA blob with it and it somehow flashed that onto the card via some less documented means, and when you downgraded the BIOS that wasn't reverted.

If all your video outputs work fine, I see no reason to not use a Quadro BIOS - but you will still need to modify the straps in the BIOS to match the hard-straps you need to override (if any) and you may also want to change the clock speeds and timings to the GeForce spec.

gordan, send PM with before after bios. I use latest nvflash(dos) to flash bios.

I also have 8800GT lying around so i flashed it to "FX 3700", same thing. With modded 8800GT bios no Quadro features are actually enabled, just name change also with this. Is there any Quadro mod ever made that actually enables quadro features? How nvidia actually look these features. When doing 3D it is possible to change 3D modes that are not listed in cp when alt-tab and edit registry key. Is there possible to do injector that enables features? ECC feature that i have now is somehow left behind in bios and maybe nvidia is looking just some flags in bios and enables feature even it is not actually possible to do with card. Many quadro features are possible with Geforce as in Linux u can do Mosaic etc with geforce too.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: JohanH on August 13, 2013, 11:20:08 am
I also have 8800GT lying around so i flashed it to "FX 3700", same thing. With modded 8800GT bios no Quadro features are actually enabled, just name change also with this. Is there any Quadro mod ever made that actually enables quadro features? How nvidia actually look these features. When doing 3D it is possible to change 3D modes that are not listed in cp when alt-tab and edit registry key. Is there possible to do injector that enables features? ECC feature that i have now is somehow left behind in bios and maybe nvidia is looking just some flags in bios and enables feature even it is not actually possible to do with card. Many quadro features are possible with Geforce as in Linux u can do Mosaic etc with geforce too.

Are you claiming that there is no gain of changing the ID from Geforce to Quadro? I thought that it at least would improve restricted driver features in Linux, i.e. namely mosaic with more than two displays, and 3dvision, which both currently is only possible with Quadro cards. That's why the author started this thread in the first place.

Edit: I see there is now support for base mosaic in latest linux drivers (not sure which versions). And to the comment about 3dvision (note to myself): it is a DirectX thing only. Basically there is 3D support in linux with OpenGL, but not using the nvidia driver. The Quadro 3D support seems to be something different. So actually you are right. There is no point in converting to Quadro for these features alone.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 15, 2013, 08:59:29 pm
Got your PM. Will look at disecting the files soon. I will reserve judgement until after I've had a look through that. My suspicion is currently leaning toward just checking the device ID in the BIOS (as opposed to only the straps). On a K series the cards have UEFI crypto stuff in the BIOS, so it is more difficult to change the BIOS other than the straps (unless you just completely rip out the UEFI headers and the trailing certs and other garbage). Since most of the hacks focus on the device ID (as opposed to what the BIOS things the device ID is), it is possible this is overlooked.

Nevertheless, a Quadro BIOS should be very easily modifiable to suit using the existing tools (or just manual hacking) - mainly just a case of tweaking clock speeds and timings. In some cases it will work out of the box: e.g. my GTS450 cards work just fine with a Quadro 2000 BIOS. Unfortunately, this does not restore the missing GL functionality. There are three possibilities here:

1) That functionality is laser-cut out of the GPU - no hope of restoring that.
2) Pin shorting on the GPU to disable the feature (e.g. caps across pins - plausible, but I've not been able to establish a pattern here, all GTS450 cards I have had were mutually different in that regard, and different from the Quadro 2000 as well.
3) Secondary firmware somewhere that initializes an FPGA somewhere to do the normally crippled GL stuff properly.

My suspicion is that 1) is the case since the Quadro and GeForce GPUs have different part numbers stamped on them, and this likely happens before they are fitted to the PCBs.

I don't think there is a Mosaic utility for Linux, but I could be wrong - you can set up multiple displays using xorg.conf anyway (e.g. when you're using an IBM T221). I don't remember seeing any driver options for adding spacing between monitors, but I haven't looked. I certainly haven't noticed any difference in features between a real Quadro 2000 and a fake one (other than the fact that one works for VGA passthrough in Xen and the other does not). And while we're on the subject, on a GTS450, modding to a Q2000 does improve performance of some SPEC tests (Maya goes up by about 40%, although it is still well short of a real Q2000 score on it). On a GTX580/Q7000, there is no difference in SPEC performance whatsoever before/after the mod (in both cases the mod consisted of strap and BIOS device ID changes, nothing else). In the GTS450 case a real Q2000 BIOS made no further improvement - in fact it made the scores worse due to the lower clock speeds being set.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on August 16, 2013, 07:41:23 am
gordan, at least latest beta geforce drivers for linux contains support for mosaic. Here is line from driver notes --> "Added support for configuring SLI Mosaic and Base Mosaic in the "X Server Display Configuration" page of nvidia-settings".

I think many of the quadro features are supported hardware level on geforces too. Mosaic utility for example reports sync=1 for GTX670 vanilla but not for real Q2000 on XP.

Maybe some skilled coder could do injection/hook hacks to enable those missing features...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 16, 2013, 01:55:30 pm
If the feature is indeed dependant on something in the BIOS, I think you're better off working on a BIOS mod based on the Quadro BIOS, and hope it's not crippled in hardware in some obscure way (more obscure than the strap resistors).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: arghalhuas on August 26, 2013, 07:46:02 pm
Really thanks for the efforts of gnif and verybigbadboy
However, since I have a EVGA GTX670 with the same PCB layout like GTX660Ti
So I need to find the modification by myself and here is the result.
For the 4th digit, as everyone already knows, it is right on the position of resistor 1 and 2.
Depend on which card you have and you can remove resistor 1 and change it to tesla(40K), grid k2(40K) or Quadro(15K) on resistor 2.
For the 3rd digit, it is the tricky part.
As the low byte on the top side of the PCB with resistor 4.
You don't need to do anything for Tesla K10.
However, if you need to change it to a Quadro K5000 or Grid K2
You need to remove resistor 4 and install resistor 3 "MANUALLY" since no place for resistor 3 any more in the PCB of GTX670 and GTX660Ti
As you can see in my attached  bottom side photo for the "rework".
You need to connect to EEPROM pin 6 with a 20K Ohm and pull up to VCC.
My rework is quite ugly but it works fine!
Please be careful and take your own risk for modifying your card!!

Summary
GPU Name         Resistor 1 / 0-7 4th byte                  Resistor 2 / 8-f 4th byte                 Resistor 3/ 3th byte (high)       Resistor 4 / 3th byte(low)           
GTX 660Ti          20K                                                  None                                               None                                         25k                                                                             
GTX 670            None                                                10K                                                  None                                         25k                                                                             
tesla k10           none                                                40K                                                  None                                         25k                                                                             
quadro k5000    none                                                15k                                                  20K                                            none                                                                             
grid k2              none                                                40K                                                  20K                                           none                                                                           

Should this work with a GTX 670MX? Can this one be turned into a K5000M?

I bought a laptop with a 120 Hz screen, which is compatible with 3D Vision Pro. The problem is that, with Linux, 3D Vision Pro only works with Quadro cards but not with GeForce ones. That is why I might be interested in trying to make a Quadro out of my GeForce...
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: mvrk on August 27, 2013, 01:42:44 pm

Yes, running Crysis in a VM on a Quadrified GTX480 (Quadro 6000) on my 2nd T221 and there is no tearing whatsoever. Nor was there any tearing on my other T221 with the 8800GT card, but there is massive tearing visible with the Radeon 4850.


Hi, i've got a Nvidia Geforce GTX 480 and i would like to transform it into a Quadro 5000 so i can use it with VMware Horizon View vSGA.... can you post the howto to modify the the GTX480 into a Quadro 6000 please? Or is already on this forum and i missed it?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 01, 2013, 02:13:15 pm
yeah second the svga driver for esxi - can the driver be hacked? Also how come the earlier FX3800,4800,5800 (noted to have multi-os support) are not workable with esxi vsvga api-intercept protocol.

I'm guessing the grid K1/K2 can do real SR-IOV in the future but it seems that the nvidia driver is doing api-intercept with some sort of virtualization driver similar to how they can combine multiple gpu's with internal gpu.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: opoeta on September 03, 2013, 05:29:37 pm
Good afternoon, I'm thinking of turning my GTX770 in K5000. But the suppliers here in Brazil, I can not find the resistors. For example the 40K resistor here only has 40K2, can I use this resistor will give or difference?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: opoeta on September 04, 2013, 11:33:07 am
Good morning, I tested successfully mod my GTX770 in K5000. How was not finding the resistors, used Trimmers 50k ohms, like these,(http://www.huinfinito.com.br/383-494-large/trimpot-multivoltas-vertical-100k-carenagem-curta.jpg)
And I configured one for 15K and one for 40K, the board used was a Zotac GTX770 AMP!

Follows the model of plate tests and referrals. Subsequently do more stability testing. If anyone needs the bios I upload.

http://www.zotacusa.com/geforce-gtx-770-zt-70303-10p.html (http://www.zotacusa.com/geforce-gtx-770-zt-70303-10p.html)
(http://www.zotacusa.com/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/z/t/zt-70303-10p_image2.jpg)
(http://i.imgur.com/3X8pbpO.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on September 07, 2013, 04:13:23 pm
Nice mod on the GTX 770! Did it was exacty like on the gtx 680?

And more importantly: what did you gain from making the mod? Do you have any new functionnalities?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 07, 2013, 08:32:34 pm
Small update guys.

I finally got around to playing a little more with my GTX680. Soldering 0402 components manually is an absolute bitch even with solder paste, a decent magnifying lamp, good eyes and steady hands.

Findings:

1) Removing both resistors (so all 0-4 resistor locations are empty) results in device ID of 0x11BF, i.e. Grid K2 - which is what I was aiming for anyway. From there on I can soft-mod to K5000 or GTX680MX if required (or anything else with IDs between 0x11A0 and 0x11BF).

2) In K2 mode, the card works for VGA passthrough on Xen. Sort of. Almost. It works find at up to 1280x800. If I select any res higher than that, it fails. As far as I can tell, the monitor is told to go into sleep mode. Tested with 320.49 and 320.78 drivers. Has anyone else found this? I haven't done any BIOS modding yet, but did anyone else see a similar issue? Is this something Nvidia did in recent drivers to cripple modified cards when running in a VM? I tested the K2-ified card in another bare metal machine with the same monitors, and in all cases there it works fine. But on my VM host, when passed through to a VM, it works great up to and including at 1280x800, and the screen just remains blank at higher resolutions. Talk about bizzare.

This is an interesting finding - my soft-Quadrified GTS450 (Q2000), GTX470 (Q5000), and GTX480 (Q6000) cards work just fine under the exact same conditions. I wonder if this is some kind of an obscure compatibility issue between Grid and Qx000 cards in the same machine since they have different size memory apertures - something could be getting confused.

Until I can get this resolved, modifying of my GTX690 is on hold.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on September 08, 2013, 04:13:00 am
1) Removing both resistors (so all 0-4 resistor locations are empty) results in device ID of 0x11BF, i.e. Grid K2 - which is what I was aiming for anyway. From there on I can soft-mod to K5000 or GTX680MX if required (or anything else with IDs between 0x11A0 and 0x11BF).

Did you add two 40k resistors in the correct locations? If you did not, this could be the cause.

verybigbadboy notes he has some stability problems when they are not on.
I do not have these stability problems (but I did add them on for good measure a month back).
You may be having problems because of this that neither one of us experienced. Try adding the resistors.

In K2 mode, the card works for VGA passthrough on Xen. Sort of. Almost. It works find at up to 1280x800. If I select any res higher than that, it fails. As far as I can tell, the monitor is told to go into sleep mode. Tested with 320.49 and 320.78 drivers.

I am running Xen 4.2.2 with no patches (save a SLIC table I added in to active Windows to). The unofficial nVidia patches do not have to be used, but the did work for me if you wanted to do GPU passthrough without the cirrus card. My current graphics driver is 320.00 (http://www.nvidia.com/object/quadro-tesla-grid-win8-win7-winvista-64bit-320.00-whql-driver.html). Both the Geforce and Quadro/Grid drivers give me the same performance. I have not upgraded to test the new ones. Try that revision and see if it helps.

Soldering 0402 components manually is an absolute bitch even with solder paste, a decent magnifying lamp, good eyes and steady hands.

Toaster oven is the way to go. Heat gun if you are in a hurry. I use the iron to touch up and desolder. Occasionally I will use it to do one 0402. Any more than that it gets throw in to the toaster over nowadays.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: karakarga on September 08, 2013, 06:52:54 am
Hi to all, I have just become a member, and wish to ask!

Chip Computer Magazine September issue of Turkey, quoted a "GTX670 to Quadro K5000" mod from German Chip Magazine crew, with a pdf link at http://chip.tk/13W2MpS (http://chip.tk/13W2MpS) adress!

They have used a Zotac 2GB GTX670 Amp Edition. But, for the resistor 0, they have used, 20k instead of 40k! :o

Which one is the best?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 08, 2013, 10:39:38 am
1) Removing both resistors (so all 0-4 resistor locations are empty) results in device ID of 0x11BF, i.e. Grid K2 - which is what I was aiming for anyway. From there on I can soft-mod to K5000 or GTX680MX if required (or anything else with IDs between 0x11A0 and 0x11BF).

Did you add two 40k resistors in the correct locations? If you did not, this could be the cause.

verybigbadboy notes he has some stability problems when they are not on.
I do not have these stability problems (but I did add them on for good measure a month back).
You may be having problems because of this that neither one of us experienced. Try adding the resistors.

I'm not convinced. The stability issues I have seen mentioned is related to the PCI device ID changing randomly. I am not seeing that. It is always 0x11BF. I am only seeing the 1280x800 limitation on my VM host. On bare metal in another machine it works fine.

In K2 mode, the card works for VGA passthrough on Xen. Sort of. Almost. It works find at up to 1280x800. If I select any res higher than that, it fails. As far as I can tell, the monitor is told to go into sleep mode. Tested with 320.49 and 320.78 drivers.

I am running Xen 4.2.2 with no patches (save a SLIC table I added in to active Windows to). The unofficial nVidia patches do not have to be used, but the did work for me if you wanted to do GPU passthrough without the cirrus card. My current graphics driver is 320.00 (http://www.nvidia.com/object/quadro-tesla-grid-win8-win7-winvista-64bit-320.00-whql-driver.html). Both the Geforce and Quadro/Grid drivers give me the same performance. I have not upgraded to test the new ones. Try that revision and see if it helps.

I am using Xen 4.3.0 and the same setup works fine with faux-Quadro 2000, 5000 and 6000 cards. I am using XP64. This is probably the big difference between my setup and everyone else's, but I habe tried it on bare metal on XP64 and it works fine there.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on September 08, 2013, 06:50:13 pm
Your "monitor is told to go into sleep mode" sounds like the card is locking up. I don't know what your setup is, what info can you get from the hypervisor when that happens? When my card would lockup just like you are describing, the ID would still read 0x11BF. It wasn't until I popped on a 100k resistor to R2 that it no longer locked up just like you are describing. You should try it instead of dismissing it.

As for using XP64, I haven't tested this card in that environment. A previous card that I had working with that a few years back required I use the `stdvga=1` option to get rid of the CIRRUS card before it would work. I would have screwy results otherwise. It would either not work at all, or would crash when I changed resolution or launched a full screen game. Try a Win7 VM.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 08, 2013, 07:47:39 pm
The card doesn't crash/lock up - if I don't click the button to keep the new mode, it reverts back to the previos mode after 15 seconds, at which point it works again. And it works fine on a different machine (bare metal XP64, different motherboard).

I'll put some 40K resistors on it instead of leaving them off and see if it helps - stranger things have happened, so I'm not prepared to dismiss anything at this point.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: opoeta on September 09, 2013, 11:51:14 am
Small update guys.

I finally got around to playing a little more with my GTX680. Soldering 0402 components manually is an absolute bitch even with solder paste, a decent magnifying lamp, good eyes and steady hands.

Findings:

1) Removing both resistors (so all 0-4 resistor locations are empty) results in device ID of 0x11BF, i.e. Grid K2 - which is what I was aiming for anyway. From there on I can soft-mod to K5000 or GTX680MX if required (or anything else with IDs between 0x11A0 and 0x11BF).

2) In K2 mode, the card works for VGA passthrough on Xen. Sort of. Almost. It works find at up to 1280x800. If I select any res higher than that, it fails. As far as I can tell, the monitor is told to go into sleep mode. Tested with 320.49 and 320.78 drivers. Has anyone else found this? I haven't done any BIOS modding yet, but did anyone else see a similar issue? Is this something Nvidia did in recent drivers to cripple modified cards when running in a VM? I tested the K2-ified card in another bare metal machine with the same monitors, and in all cases there it works fine. But on my VM host, when passed through to a VM, it works great up to and including at 1280x800, and the screen just remains blank at higher resolutions. Talk about bizzare.

This is an interesting finding - my soft-Quadrified GTS450 (Q2000), GTX470 (Q5000), and GTX480 (Q6000) cards work just fine under the exact same conditions. I wonder if this is some kind of an obscure compatibility issue between Grid and Qx000 cards in the same machine since they have different size memory apertures - something could be getting confused.

Until I can get this resolved, modifying of my GTX690 is on hold.

Gordon, could explain here how you transformed your GTX4xx in Quadro? I also saw that you turned your GTX580 in Quadro 7000, could give us the way?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 10, 2013, 03:23:21 pm
opoeta, I'm writing up the process at the moment. I need to do a bit more testing and re-testing - I modified my cards a few months ago and I need to get them out of my production machine before I can re-test them to make sure that the writeup is correct - I wouldn't want to cause any inadvertent bricking. Once I've re-tested and written it up, I'll post a link here. Unfortunately, I have to get the GTX680 working first - that can then replace one of my 4xx series cards that I can then use to re-test the procedure.

I've been meaning to do this for the past month, but something more important always comes up just when I think I have a few hours put aside for GPU hacking. Apologies for the delay. :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 10, 2013, 07:09:56 pm
It looks like the K6000 drivers and device ID are now available:
http://us.download.nvidia.com/XFree86/Linux-x86/319.49/README/supportedchips.html (http://us.download.nvidia.com/XFree86/Linux-x86/319.49/README/supportedchips.html)

Only a matter of time before somebody finds the correct resistors on a Titan to modify. gnif and verybigbadboy, I'm looking at you ;)
Anyone Interested in doing this if there is a donation round to cover the cost of a sacrificial Titan?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Soulnight on September 10, 2013, 07:19:15 pm
YEAH...but what for? If there are no aditionnal functionnalities available! NO Support of nvidia MOSAIC for example. Or did I miss something?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 10, 2013, 08:22:52 pm
Virtualization. It may or may not work - but it's worth a shot. For me, only the cards that are listed as MultiOS have worked (Quadro [256]000) and Grid K2, but not Tesla K10 or Quadro 7000. Other people have reported that K5000 works for them for virtualization (I have just confirmed this myself), so there is a reasonable chance that K6000 will work too. You know - for when half of a K2 just isn't quite enough. :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: opoeta on September 11, 2013, 04:14:55 pm
Waiting for the tutorial of Q6000
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 11, 2013, 08:30:54 pm
For the record - putting the 40K resistors in positions 0 and 2 did NOT solve my problem of the card seemingly no longer being able to handle modes above 1280x800 when virtualizing. It still works absolutely fine on a different bare metal machine in all resolutions and in 3D applications. When I try to set the res to anything above 1280x800, the monitor goes to sleep as if the input signal disappears. And since I don't click the button to keep the new mode, the OS reverts back to the previous resolution, and the screen output comes back. Very strange.

Edit: And it gets weirder. If I plug in my old 17" VGA monitor that can do 1280x1024 - the card happily putputs 1280x1024 to that over VGA. Which makes me wonder if something bizzare is happening with the second DVI link in VM mode. I can test for that - my backup T221 is running on SL-DVI connections. Lo and behold, I that comes up at 3840x2400@13Hz. So for some reason when running virtualized, my faux Grid K2 refuses to run in DL-DVI mode on both of it's ports. But when running on a bare metal machine, it works fine. W-T-F. This makes me wonder whether this is a Grid K2 "feature". Has anyone got DL-DVI working in a VM with a gridified GTX680?

Edit 2: I just soft-modded the card to a K5000. No change - for some reason whenever the second DVI channel gets enabled, it all goes wrong.

Has anybody seen this issue before?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on September 12, 2013, 01:40:39 am
The card doesn't crash/lock up - if I don't click the button to keep the new mode, it reverts back to the previos mode after 15 seconds, at which point it works again. And it works fine on a different machine (bare metal XP64, different motherboard).

Then the issue is most likely with XP64, Xen and gpu passthrough. XP as a whole was never meant for virtualization and support for it is just hacked together. Try Windows 7 instead of the operating system that is older than Xen itself.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 12, 2013, 08:58:22 am
I'll try Windows 7 for the sake of completeness, but unfortunately, using it is not an option for me, due to a complete lack of desktop spanning functionality (T221s show up as 2 or 4 discrete monitors). In XP this works fine, in Vista and later the functionality has been removed. Windows 8 allegedly adds it back, but suffering Metro on top of spending more on two Windows 8 licences than I spent on my GTX680 is something I am not prepared to do.

Another thing I might try is XP64 on bare metal on my VM machine - just to eliminate the possibility of some utterly bizzare motherboard-influenced issue.

My current workaround is to swap my primary and secondary T221s around, so my gaming VM is running 2xSL-DVI. That works around the DL-DVI not working, albeit by limiting the refresh to 25Hz (33Hz with a custom mode).

For my other VM connected to a standard 30" monitor, I might just have to jump ship back to ATI. :(

One of these days a monitor manufacturer will make something that actually beats a T221 on pixel count (>= 3840x2400, i.e. more than the current 4K screens) in comparable size (<= 24"). But for now, the 12 year old technology is still unbeaten.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 12, 2013, 02:33:11 pm
i've got a dual DL-DVI quadro 6000 bios ;)

it seems the original discussion on strapping the 4xx series to quadro is all based on the post that shows how to strap the bits 0,1,2,3,4 but not actually flashing the quadro bios.

Anyone actually use this stuff with esxi 5.5? Supposively they support intel/AMD GPU in the new version.

seems like the problems are:

SR-IOV support (some have it?) VT-D
FLR (Function Level Reset) - without it your vm's will crash the card upon reset (happens alot in windows vista/7/8)

is VGX just simply SR-IOV/MR-IOV with FLR?

API-intercept seems cool but to actually pull off a FLR SR-IOV on nvidia would be the real trick!

It seems the XEN guys are light years ahead of everyone else as far as getting things to work - and AMD GPU seems to have far superior support.

But if esxi 5.5 can handle intel HD and AMD GPU, perhaps we need to just take a look at the new version ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 12, 2013, 03:45:51 pm
NONE of the modifications are based on flashing a Quadro BIOS onto the card. I did limited testing on this (Q2000 BIOS on a GTS450), and all that achieves is lower the clock speeds on the GTS450 down to what they are on Q2000. There is still some stuff in my TODO queue to investigate things like ECC support, though.

To do it properly, you should really change at least a few more things in a addition to the straps, e.g. the record in the BIOS containing the PCI ID (at around position 0x18E on 4xx cards), as well as the board/card identification strings.

FLR is nowhere nearly as required as people indicate. If you pass the whole device (i.e. VGA + HDMI audio) it works fine, and with Quadro (real one or a modified GeForce) rebooting VMs works just fine, if your motherboard BIOS and PCIe bridges aren't buggy (some careful research there is needed if you're looking to buy a suitable motherboard, otherwise you will spend weeks troubleshooting and writing hypervisor patches, and you're pretty much screwed if you use a closed-source hypervisor).

For the record - I have Quadro 2000, 5000, and 6000 cards (real and faux 2000, modified GeForce 5000 and 6000) and rebooting VMs works fine (most of the time - I have problems due to various hardware/firmware bugs that plague the EVGA SR-2). It is ATI cards that suffer from the rebooting crashes and performance degradation after reboots. No GPUs available today have FLR, including real Quadros or real FirePros. It is not needed if the BIOS and drivers are doing their job.

VGX and the new Xen project that implements something similar exposes a guest VM driver API that offloads the GPU tasks onto a real GPU, shared between multiple VMS. Nothing to do with FLR whatsoever. It is essentially a virtualized GPU driver API designed to allow you to share GPU processing between multiple guests.

FWIW, I have had much better luck with Quadrified Nvidia cards for Xen virtualization than with ATI cards. ATI cards have far too many limitations (only a single DL-DVI port from HD5xxx series onward), don't work properly with multi-monitor spanning in my experience (at least not on IBM T221s), and suffer from the VM reboot bugs in the BIOS and drivers (e.g. if the VM dosn't crash on a reboot, the performance is degraded). Then again, I seem to have just hit a XP Quadro driver bug that breaks DL-DVI from working in a VM (but not on bare metal). So neither are perfect, but Nvidia just seems to suck a lot less than ATI (even though I may just have to resort to using an ATI card for one of my VMs if I can't work around the DL-DVI problem on the GTX680 based K5000/K2).

On a separate note, device reset can actually be implemented in multiple different ways, not only if it has FLR support. For example, Xen also supports a method of using the PCIe power management; putting the card into the powered-down state and bringing it back results in the device being reset (if it implements the PCIe power saving functionality properly).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 12, 2013, 09:24:35 pm
http://gfxspeak.com/wp-content/uploads/2013/09/VGX-GPU-virtualization-Nvidia.png (http://gfxspeak.com/wp-content/uploads/2013/09/VGX-GPU-virtualization-Nvidia.png)

better example: http://on-demand.gputechconf.com/gtc/2013/presentations/S3501-NVIDIA-GRID-Virtualization.pdf (http://on-demand.gputechconf.com/gtc/2013/presentations/S3501-NVIDIA-GRID-Virtualization.pdf)

more:
http://www.nvidia.com/object/cloud-gaming-gpu-boards.html (http://www.nvidia.com/object/cloud-gaming-gpu-boards.html)



I thought what they are saying here is not API intercept?

API intercept doesn't give you cuda,opencl,directx right?

I'm still trying to figure out how they can manage fair share loading of a video card since a vm could potentially tear ass on a video card with true hardware virtualization.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 12, 2013, 10:54:43 pm
I was under the impression that the VMware way involves passing a GPU to a VM. Grid K2 is a GTX690 i.e. two GTX680s. So you can "share" a card between two VMs, but in reality you are not sharing GPUs between VMs. Grid K1 is the same sort of thing, only it comes with 4 lower-spec GPUs (for passing to up to 4 VMs) rather than two high spec ones. In other words, you cannot split a Grid K2 more than 2 ways, and you cannot split a Grid K1 more than 4 ways.

The new Xen way is quite radically different (and far more ambitious), from what I gather, but I haven't really looked into it in great depth since it was only made public yesterday.

My original plan was to run a mod both halves of a GTX690 into Grid K2 as per the hard-mod on this thread (you only have to hard-mod the first byte's resistor, the 2nd byte you can soft-mod), and pass one to each of my VMs (for me and my wife). Unfortunately, the DL-DVI issue with the GTX680 has put that plan on hold - I don't want to waste my time modifying a GTX690 if it's going to prove to be equally unusable (I need at least one DL-DVI working for my wife's 2560x1600 monitor). My plan B is to split the 690 into a GPU for the host and a GPU for my VM (I can live with a T221 running off 2xSL-DVI at 3840x2400@32Hz for gaming), and get something like an ATI 7970 for her VM (most (but not all) of the problems I've had with ATI cards are T221 related, and even though they do suffer issues with VM reboots, we hardly ever need to reboot our VMs - XP64 is extremely stable).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 13, 2013, 12:12:50 am
right now you have API intercept - and coming soon will be virtualization.

Do you remember how the video card virtu alization worked? Laptop was on INTEL (or virtual gpu) then it would switch to AMD/NVIDIA but video out from the intel hd port! it is all based around SLI and i'm guessing if you really think about it you could SLI a software GPU and then add hardware assist (or a real gpu DVGA) or api intercept (sVGA) but you are still rocking the software driver (think of that as the ROUTE of video stream).

So software nvidia driver switches to 1% load, and 99% to hardware GPU (if available) - this way you can vmotion to another server without graphics card and still continue gaming (just 30fps to 1fps! lol).

Right now everyone does this method. Then hyper-v/XEN use hardware transcoding to offload (like intel has quick-sync) but it happens at the same time. I think this is kepler technology.

The last step which I have not seen in production anywhere would be true SR-IOV+FLReset + QOS to seperate the tasks (if you think api intercept to consumer video card is safe! not! Easy to glitch and crash or access system ram/other VRAM).

That's why I wish for true SR-IOV/FLR or MR-IOV(bladesystem) - security. Stability as well since if you crash a virtual function of gpu you don't take out all of the other vm's video function or crash the host.

Pretty much if my vmware host crashes or loses power, it is completely rebuilt. Period. Full reinstall and format of all components.  I seriously doubt that vmware esxi using X mosaic and API intercept is going to provide stability. Otherwise what is the point of using Intel VT technology? We could do API-intercept (Binary translation) from the first days of virtualization or "double-dos" lol. Definitely not fast nor secure.


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 13, 2013, 12:29:54 am
Well see there is one thing we haven't explored: Tesla cards can send to mellanox connectx-3 in 40gbe or 56FDR IB mode direct so it does not touch the CPU (gpudirect). It had many flaws though since mapping direct memory with virtualization is difficult (bypassing the CPU virtualization violates memory!)

The GPU direct could then output the video stream without compression to 10gbe (40gbe/56IB) and you don't have all that lag. Given that you can get 24 port 10gbe switch for $1200-1500 now and cheap 10gbe dual port nic for 75$ to me this would be the best way!  I don't care about "WAN/PCOIP".

I am tempted to see if you could bridge a virtual USB gpu over 10gbe that would be awesome! I think everyone is so focused on limited bandwidth WAN and gigabit they ignore the most direct path which is use a ton of raw bandwidth and run the GPU remote with a pci-e tunnel effect. It has to be possible!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 13, 2013, 12:34:03 am
I can easily believe that you can do this over infiniband. Infiniband works using DMA, and in fact does RDMA. So it is ideally suited for doing precisely what you are describing, in the sense that you can map the GPU BARs via infiniband and use remote GPU number-crunching as if the GPU was local. And if you are already running infiniband for this, why bother with ethernet at all? If you can live with the 15 meter cable length limit, it's the way forward. And it's dirt cheap compared to 10Gb ethernet (not to mention 2-4x faster).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: baconsteak on September 13, 2013, 02:24:35 am
Has anyone ever heard of this working on a g92 9800gt? I want to use opengl flip 3d.

I have tried changing the straps in bios to 061A with nvflash --straps 0x7FFE23C3 0X1000A804 0X7FFEFFFF 0X00010000
It's recognised as a FX3700 now and the drivers install but the 3d options aren't there so I don't think its working properly.

Is this because the hardstraps are different? How can I check the hardstraps? Nvflash only shows the softstraps. Or is it something unrelated to the straps?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 13, 2013, 09:24:44 am
Are you sure this works on a genuine FX3700? I have a laptop with a genuine FX3700M in it, but I don't recall seeing any extra options in the settings compared to a GeForce 260M it replaced. If you tell me what exact options you expect to see, I can look for them and report back.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 13, 2013, 01:17:54 pm
Anyone care to make a javascript calculator for straps?

Perhaps you can upload the file, it will check the values, give you options (only valid ones) and then tell you which nvflash --straps to use.

What's going to happen is endian typos killing cards, but if you can make a webpage to help folks, it would reduce the # of fail.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 13, 2013, 07:01:47 pm
Not an unreasonable idea. Pitty NiBiTor authors disappeared (or were disappeared, depending on how conspiracy-theoretic you want to be) - shame it wasn't an open source project, or it could have easily been extended to cover more recent developments.

Having said that - there is an argument that anyone attempting thos really should know what they are doing and know their way around a soldering iron, calculator and an editor. Darwininan force is a good thing.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 13, 2013, 07:58:26 pm
Do you know what's up with those mac folks selling "quadro" fakeys on ebay? It seems they turn anything geforce into a quadro somehow?

I wonder if they are doing some other trick to fool the server? almost every card they are selling is identified as Quadro 4000.

Maybe they know how to reload the vbios from ram or something?

I'm not trying to get into the business at all - if I wanted to make money i'd just hack intel nic's for MAC (thunderbolt case, or mac pro) since you could buy $99 intel 10gbe nic and modify smalltree/atto drives to accept the intel standard nic. That would make one rich since the mac people love paying $999 for a $99 pre-tested nic lolololol.
----------

Does anyone have TRUE VGX working at all? Hardware not API-intercept? I would be glad to donate to the cause for one video card with decent amount of ram that would actually do GRID K1 duties.

But it would have to be SR-IOV+FLRESET and work with XEN.

I suspect if someone can do true VGX - I would buy 2 or 4 ! Seriously. Can't afford K1 grid they cost $1400 and K2 costs $1800 !! way too rich for my blood

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 13, 2013, 08:42:08 pm
I'm surprised they are modding GeForce cards into Quadro 4000 cards - since there is no direct GeForce equivalent. Modding a GTS450 into a Quadro 2000, GeForce 470 into a Quadro 5000 and GeForce 480 into a Quadro 6000 is pretty trivial, on the other hand.

I suspect the Mac requirements, however, include having a UEFI BIOS, which is trickier since as soon as you modify the BIOS, the crypto signatures in the UEFI BIOS no longer match and the Mac will probably reject the hardware. Depending on how the crypto stuff is implemented, I'm sure it is defeatable, though. Worst case, you can get a genuine Quadro UEFI BIOS (from a Mac Quadro), find a GeForce card on which the important bits of the strap match (EEPROM type, clock generator type), and hard-mod it with resistor changes, and voila, you have a Mac Quadro for the price of a GeForce, a couple of 0402 resistors, and a few minutes or extreme precision work with soldering gear (easy with years of experience and decent equipment (solder removal braid, pro grade soldering kit with hot air, difficult otherwise). I would imagine somebody experienced in it could knock out a whole bunch of modified cards per hour (removing and refitting heatsinks would likely be the most time consuming part).

Personally, I'm working in the other direction - stripping UEFI crap from the 6xx BIOS so I can soft-mod it more easily, plus some other advantages such as having a BIOS smaller than 64KB, which makes it loadable for primary VGA passthrough in Xen for bootstrapping the GPU inside the VM (so you get boot console output on the external monitor, rather than in a VNC console).

$1800 for a Grid K2 sounds downright cheap - only 3x the price of a GTX690. Until recently the difference has been 5-8x. Seems we are having a sobering impact on their pricing strategy.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 13, 2013, 09:31:03 pm
I was curious about that. you mentioned you did up a card with a real bios.

The Kepler 2000,4000,5000,6000 seem to be the cards to do.

Do you think its possible to find a 2000 or 4000 compatible kepler geforce and actually splice the bios?

Nvidia website mentions GRID but also says Kepler can do some of the functions as well.

However it is opposite of how ESXi works (GRID or non-kepler).

And remember the old FX 3800,4800,5800 are multi-os.

I think it would be interesting to compare the features of the multi-os cards and their geforce partner!


2xx/3xx are software

4xx are software plus straps

5xx are hardware resistor plus straps

6xx are hardware resistor plus straps.

It seems the 4xx are easiest to do and cheap to source for those of us who can't solder.

6xx would then be the next choice since kepler has something that fermi does not.

Do you have suggestion on cheaper 6xx series to give a shot to mod?


btw, I was looking at pricing. The low end quadro piqued my interest. What about cross flashing? Notice something in common in this list???

Quadro 410    GK107    28    PCIe 3.0 x16    512          1800    192:16:8          14.4    DDR3[54]    64          11.0    4.4    38    <-- $50
Quadro K600    GK107    28    PCIe 2.0 x16    1024    876    876    891(1782)    192:16:16    14.0    14.0    28.5    DDR3    128    336.38       11.0    4.4    41    6.3" Card <-- $70
Quadro K2000    GK107    28    PCIe 2.0 x16    2048    954    954    1000(4000)    384:32:16    15.2    30.5    64    GDDR5    128    732.67       11.0    4.4    51    7.97" Card <--- $210
Quadro K2000D    GK107    28    PCIe 2.0 x16    2048    954    954    1000(4000)    384:32:16    15.2    30.5    64    GDDR5    128    732.67       11.0    4.4    51    7.97" Card <--- $250
Quadro K4000    GK106    28    PCIe 2.0 x16    3072    810.5    810.5    1404(5616)    768:64:24    19.4    51.9    134.8    GDDR5    192    1244.93       11.0    4.4    80    9.5" Card <--- $350
Quadro K5000    GK104    28    PCIe 2.0 x16    4096    705.5    705.5    1350(5400)    1536:128:32    22.592    90.368    172.8    GDDR5    256    2168.832    90    11.0    4.4    122    10.5" Card <-- $800

Quadro K500M    GK107    28    PCIe 3.0 x16    1024    850    850    1600    192:16:8    6.8    13.6    12.8    DDR3    64    326.4    11.0    4.4    Yes    35    
Quadro K1000M    GK107    28    PCIe 3.0 x16    2048    850    850    1800    192:16:16    13.6    13.6    28.8    DDR3    128    326.4    11.0    4.4    Yes    45
Quadro K2000M    GK107    28    PCIe 3.0 x16    2048    745    745    1800    384:32:16    11.92    23.84    28.8    DDR3    128    572.16    11.0    4.4    Yes    55

NVS 510    GK107    28    PCI-Express ×16    2048          1800    384:32:16          28.5    GDDR3    128       11.0    4.4    35    4× miniDisplayPort <--  $150
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 14, 2013, 12:54:55 am
Quadro x000 / GeForce 4xx/5xx series cards are Fermi, not Kepler based. Quadro/Grid K series and GeForce 6xx and 7xx cards are Kepler based.

GeForce 8xxx/2xx/3xx/4xx/5xx are all fully modifiable using soft-straps to change the ID (to equivalent Quadro/Tesla cards).
6xx is, too, but the scope for change is limited. For example, you can soft-mod a GTX680 into a Tesla K10 without touching any resistors.
Nvidia obviously got smart to it and didn't add extra ID bits to the soft strap and made the bits above the 5th hard-strap-only - hence why we have to hard-mod the byte 3. Note that you can still adjust the least significant bit of the 3rd byte using a soft-mod as per the previous generation cards.

I have yet to see evidence of cross-flashing he whole BIOS achieving anything useful, but my research into that is not yet complete.
I wouldn't bother with the Quadro xxx (3 digits) and NVS cards, they aren't suitable for VGA passthrough which is the main point of modding at the moment.
People have reported success in modding a GTX670 into a K5000 and if you look through the GPU tables on wikipedia you should be able to find a suitable lower end GeForce card that you might be able to modify into a Grid K1. Check the driver release appendix A for device IDs supported by the drivers - this will also tell you what the device IDs of the various cards is, from which you can work out what is soft-moddable and what you'll need to mod the hard-straps for. Interestingly, you can soft-mode a GTX680M/GTX680MX into a K5000/K2 without the need for hard-modding.

But yes, 4xx series cards are probably the best target for experimentation. Performance is pretty good even by today's standards, they are cheap on ebay, and can be soft-modded easily. And modding them enables the second DMA channel, so you actually get some quite tangible performance improvements in I/O heavy loads. They easily win in terms of cost/ease/benefit.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 14, 2013, 02:29:36 am
Yeah so my theory was to locate the cheap quadro cards and mod them. Then maybe while you are there do up the geforce as well.

So I was actually thinking the  NVS510 could be modded into a K2000!

Besides it is fun!

The quadro 6000 was expensive, and I somewhat regret not getting a K6000/K5000 since they will support VGX (grid). But I think I can probably use the quadro 6000 for a few more months and sell it for the same price I paid.

Or trade it to someone else. Or keep it :)

How bout trying to crossflash a titan to a tesla or K6000! I mean we want the VGX at the end of the day, might as well go big!

Plus if you can pull it off, folks would probably kick in  $$ to get it done.

I'd donate my quadro 6000 to someone that can pull off a grid K1 that works[grid vgx mode]. So far it seems only the GK110 has grid/VGX but clearly there are the other grid (K340/520) gaming gpu's and grid k1/k2 so i'm guessing the K340 or 520 are variants of the grid g p u .

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: eddy02350 on September 14, 2013, 09:43:47 am
Hi all
 
After modding  my gtx670 to k5000 by hard strapping, i tried to change some  ID bits  in the  straps area too .
But lspci  show k5000 gpu  while the driver find a quadro k3000m gpu.
Strange , perhaps soft modding is possible  only  for the driver ?
(ex.. i don't speek english).




 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Mikhail80 on September 14, 2013, 11:09:24 am
Good morning, I tested successfully mod my GTX770 in K5000. How was not finding the resistors, used Trimmers 50k ohms, like these,(http://www.huinfinito.com.br/383-494-large/trimpot-multivoltas-vertical-100k-carenagem-curta.jpg)
And I configured one for 15K and one for 40K, the board used was a Zotac GTX770 AMP!

Follows the model of plate tests and referrals. Subsequently do more stability testing. If anyone needs the bios I upload.

(http://i.imgur.com/3X8pbpO.jpg)
My congratulations!
But... dear colleagues, what's about SPECviewperf test?
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg210155/#msg210155)
If your "GeForce" and "Quadro" test speeds are the same, then there is a big question for unlocking efficiency.

Could you post your SPECviewperf test results to submit your success?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 14, 2013, 12:38:32 pm
are you allowed to modify the straps code (bios/driver)? I assume the bios is x86 partially and then a FPGA (opencl/cuda?) blob?

just curious how the bios -> pc , and whatever -> gpu works!

Perhaps straps are like how cpu's have microcode patches to neuter bugs post-production? IDA pro anyone?

Or is the bios/driver all encrypted?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 15, 2013, 04:12:08 pm
@eddy02350:
When hard-modding, you have to check in the BIOS and make sure that the UEFI header strap doesn't override anything (i.e. the AND strap ID bits should all be 1, and OR strap ID bits should all be 0). It is possible that your hard-strap works fine, but your soft-strap is locked so modding the hard-strap won't touch (some of) the low 5 bits. Same goes for the straps in the BIOS part (as opposed to UEFI header part).

@mrkrad:
The driver has been scrambled ever since somebody modified them to make SLI work on non-Nvidia motherboards. Nvidia's reponse was to encrypt the drivers. Intel's response was to not give Nvidia a QPI licence so they couldn't make motherboard chipsets for Core i and later CPUs. Just deserts and good riddance - doubly so since Nvidia motherboard chipsets were eyewateringly buggy and unreliable. But the scrambled drivers, unfortunately, stuck.

@opoeta:
Kudos for putting adjustable resistors on there. :)

@Mikhail80:
Nobody has yet been able to restore the missing GL primitives on GeForce cards. Cross-flashing the BIOS, in the one case where it actually works (Q2000 BIOS onto a GTS450), doesn't seem to achieve anything obviously useful in this regard; then again, Q2000 and GTS450 are very, very similar, much more so than other GeForces are to their equivalent Quadros, with maybe the exception of a K5000/GTX680 4GB variants - in that they have the same amount of VRAM. I haven't tried flashing a full strap-adjusted K5000 BIOS onto my GTX680 yet - it is on my ever-growing TODO list. :(

In case of the GF106 GPUs (GTS450/Q2000) I suspect the missing functionality is cut out of the GPUs before packaging, and if that is the case, the chances of restoring this are non-existant.

Note, however, that modifying a GTS450 into a Quadro 2000 does produce some performance benefits - Maya scores, although still far behind a real Quadro 2000, go up by around 40% after modifying the card. In case of the GTX470/Q5000 and GTX480/Q6000 mods, there are also other performance improvements, to be gained, such as enabling the second DMA channel (DMA transfers become bidirectional rather than unidirectional), which can significantly boost DMA transfers to/from the GPU, depending on the workload you are throwing at it.

Unfortunately, the same improvements do not hold in case of GTX580/Q7000 mod - all results remain exactly the same on that. Other people have reported similarly unchanged results on later GPUs. There also appear to be no bidirectional DMA capabilities on the newer GPUs.

General update:

I have just spent a few hours messing about with a GTX470/Q5000 BIOS modding, and one thing that seems quite certain at the moment is that a GTX470 will not work with a strap-modded Q5000 BIOS. The machine boots, but graphical output is corrupted when not in text mode (at least in Windows), and as far as I can make out GPU-Z isn't showing the card's capabilities properly (e.g. 0MB of RAM). I suspect a major part of this is down to the fact that a Q5000 has 2x the RAM of a GTX470, but I have not been able to establish where the memory size is stored in the BIOS by looking at things like very similar GTX580 cards that have the same BIOS version number but different RAM size (e.g. MSI produced GTX580s with 1.5 and 3GB of RAM which have the same BIOS version numbers). I narrowed the BIOS differences down to 5 possible locations (I think) by excluding things like the board, boot string, and checksum related differences, but it is not at all obvious whether the memory size is even encoded in the BIOS, let alone how.

If anyone cares or is interested in investigating further, the full hex diff between the 1.5 and 3 GB card variants is here:

Code: [Select]
$ diff <(xxd MSI.GTX580.1536.110715.rom) <(xxd MSI.GTX580.3072.110504.rom)
4c4
< 0000030: 0100 0000 c000 8d4e 3037 2f31 352f 3131  .......N07/15/11
---
> 0000030: 0100 0000 c000 8d4e 3035 2f30 342f 3131  .......N05/04/11
6c6
< 0000050: e986 2a00 6214 6025 ffff ffff 0000 0000  ..*.b.`%........
---
> 0000050: e986 2a00 6214 6225 ffff ffff 0000 0000  ..*.b.b%........
12c12
< 00000b0: 3136 3100 0000 0000 0000 0000 0000 0000  161.............
---
> 00000b0: 3133 3000 0000 0000 0000 0000 0000 0000  130.............
1189c1189
< 0004a40: 0000 1f01 0000 0023 6220 0300 3313 2003  .......#b ..3. .
---
> 0004a40: 0000 1f01 0000 0023 6230 0300 3313 2003  .......#b0..3. .
1191,1192c1191,1192
< 0004a60: 7f07 0000 008f 0000 0000 9f01 0000 00af  ................
< 0004a70: 0200 0000 bf03 0000 00cf 0400 0000 df05  ................
---
> 0004a60: 7f07 0000 008f 0000 0000 9f01 0000 00a3  ................
> 0004a70: 6230 0300 bf03 0000 00cf 0400 0000 df05  b0..............
1622,1623c1622,1623
< 0006550: 0c19 0000 0c06 0e26 003e 001b 000c 0c0a  .......&.>......
< 0006560: 0a0a 0100 0000 0200 160a 0500 0405 0407  ................
---
> 0006550: 0c19 0000 1006 0e30 0078 0020 0010 100e  .......0.x. ....
> 0006560: 070b 0100 0000 0200 170b 0500 0405 0407  ................
1646,1647c1646,1647
< 00066d0: 0000 0000 0014 730f 0064 3610 0020 8169  ......s..d6.. .i
< 00066e0: 0050 2200 00ac 53ff ff14 730f 0064 3610  .P"...S...s..d6.
---
> 00066d0: 0000 0000 0014 730f 0038 6710 0020 8169  ......s..8g.. .i
> 00066e0: 0050 2200 00ac 53ff ff14 730f 0038 6710  .P"...S...s..8g.
1660c1660
< 00067b0: 1001 0111 750d 714c 0000 c409 0010 0000  ....u.qL........
---
> 00067b0: 1001 0111 840d 824c 0000 c409 0010 0000  .......L........
2008c2008
< 0007d70: 0090 4402 0090 4401 0090 4402 0090 4402  ..D...D...D...D.
---
> 0007d70: 0090 4402 0090 4401 0090 5502 0090 4402  ..D...D...U...D.
3648c3648
< 000e3f0: ffff ffff ffff ffff ffff ffff ffff ff35  ...............5
---
> 000e3f0: ffff ffff ffff ffff ffff ffff ffff ff10  ................

I'm reasonably confident that the 1st, 3rd and last blocks of the diff are not relevant (last is the checksum, the the 1st and 3rd are board IDs).

Since differences between the GTX480/Q6000 and GTX470/Q5000 are negligible, I rather doubt that a Q6000 BIOS will work on a GTX480. I will double-check that when my faux-Q6000 is available for experimentation again.

Regarding the Quadrified/Gridifed GTX680's bizzare problem of refusing to work with DL-DVI outputs (at least in XP64, not tried on Windows 7 yet), I ordered an active DP->DL-DVI adapter. DP works quite differently to DVI, so there is a reasonable chance that this will handle the DL output signal. If it turns out to work, although not a proper solution, at least it will be a very good workaround.

Update: As a random factoid, Fermi Bios Editor doesn't actually understand how to parse a genuine Quadro 5000 BIOS (but parses a standard or modified GTX470/480 BIOS just fine).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 17, 2013, 11:32:09 am
quadro 6000 has 448 rops and 6gb of memory with 384 bit memory layout, gtx 470 matches that. the gtx 480 does not match any quadro.

also remember they replaced some boards with GF110 equivalent so there are variant (quadro 4,5,6000) out there as well which are definitely not going to work..

the quadro 5000 is 320 bit memory but but only 352 cores, the 6000 is 384-bit and 448 cores. Geforce cards need to match both cores and bit-wise ram. I think that is the problem you match on cores but not ram, that's definitely not going to fly.

Too many variants it seems..
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 17, 2013, 12:15:46 pm
Q5000 has 320-bit memory bus like the GTX470.
Q6000 has 384-bit memory bus like the GTX480.

The key problem is matching the memory bus with and the amount of RAM. For example, this morning I successfully flashed the complete K5000 BIOS onto my 4GB GTX680. It works absolutely fine. When flashing the Q5000 BIOS onto a GTX470, it works fine in text mode, but there is massive corruption in graphical modes - I suspect because the BIOS expects there to be double the RAM, and things go wrong when it's not there.

On the subject of a 4GB 680 with a K5000 BIOS - there is no obvious performance boost in SPEC (I didn't wait for it to finish, I just watched through the first few seconds of the catia benchmark and it was as dire as usual, but maybe it's worth comparing the whole lot to see if anything changes). The ECC memory feature, however, appears in the Windows driver, and it seems to stick after a reboot. So it _appears_ to be working, but I am not convinced that it is actually doing anything - the amount of VRAM is still 4GB; I would expect it to reduce. In Linux, nvidia-smi just reports that ECC is not available when you try to set it.

So in conclusion - in cases where you can flash a whole Quadro BIOS onto a GeForce card it does very little other than slow it down, through Quadros having slower clock speeds pre-programmed.
ECC sort of almost looks enablable, but doesn't appear to do anything. I have no cosmic ray generator handy so I cannot easily test whether it actually works, I am purely going on the fact the RAM amount doesn't reduce, but maybe the shown value of RAM is the raw RAM, not post-ECC RAM. nvidia-smi in Linux claiming that ECC is not available on the card is more of an indication that it doesn't actually work. The toggle setting survives reboots and moving the card to another machine.

I have not tried Mosaic since it doesn't work on XP, nor have I tried any 3D stuff since I have no way of testing it at the moment.

So in conclusion - yes, you can get a Quadro BIOS onto a GeForce and make it work, provided you have the same amount of RAM on the GeForce (e.g. 4GB GTX680 with a K5000 BIOS). But it doesn't actually gain you anything. You can even go and edit the BIOS using the Kepler BIOS Tweaker and put the clocks back where they were on the GeForce BIOS - that gets you the performance back. But there is nothing there that you couldn't have achieved with just modifying the original BIOS.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on September 17, 2013, 08:18:24 pm
Gordan, can you check if Manage 3D settings is different with K5000 bios? It should look like this with quadro --> http://www.planar.com/media/245367/3d-ready-config-3.jpg (http://www.planar.com/media/245367/3d-ready-config-3.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 18, 2013, 03:37:45 am
my mongoloid 1/2 of the quadro plex 7000 (GF100 quadro 6000) when flashed to 06d8 does ECC. This is evident with the reduction of ram from 6gb to 5.3gb and the benchmarks slow likewise since you have the overhead of the extra bit of data from gpu to ram to bus (end to end ECC). You should see a reduction in overall performance.
 
So i'm guessing that the ECC is not working if you do not see a linear reduction of performance along with reduction in ram..

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: baconsteak on September 18, 2013, 06:44:48 am
Are you sure this works on a genuine FX3700? I have a laptop with a genuine FX3700M in it, but I don't recall seeing any extra options in the settings compared to a GeForce 260M it replaced. If you tell me what exact options you expect to see, I can look for them and report back.

Under manage 3d setting there should be a Stereo-enable option.

I'm fairly certain it should be there. Your FX3700M might not have it unless it has a stereo connector or you have a 3d vision unit with approprate drivers.

There is definately something else being checked by the driver. I found an old driver patch that enables the options and page flip stereo works but at the same time the mod destroys open gl performance and playback is jerky.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: jmecherul on September 18, 2013, 02:00:47 pm
Hi all

It has been fun reading this whole post and some other information.

I have a K20 card that my company bought along with a Quadro K600 in my main machine.  I use the K20 to do electrical simulations with a 3D full wave simulator, so we are all good there.

I have an older version of the 3D simulator that will not recognize my K20 card, and I would still like to use it to do some simulations as I think the latest version is somewhat flawed, but it will take forever to use just the processors in my workstation.  That software works with with the C20xx/M20xx versions of the Fermi silicon.

I am thinking about getting a GTX580 or GTX590 card on the cheap and modding it into a C20xx/M20xx card.  I know it will not be as fast as the professional cards have more memory, but I would like to try and see what kind of acceleration I get.

Now, I have searched here and elsewhere on the internet, and I could not find any instructions how to hard-mod or soft-mod the straps from the gtx5xx cards to the c20xx counterparts.   I see some people here has done it, so any help that you can shoot my way would be greatly appreciated.  I am good with soldering (have IPC training) and would be  more comfortable with replacing resistors so pictures would be helpful.  I can do the soft-mod too, but I am a little more handicapped at working with a hex editor and flashing firmwares and the likes.

Thank you very much in advance.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 18, 2013, 08:40:02 pm
@Jager, baconsteak:
I'm going to have to disappoint you - the stereo options don't appear in the control panel. It does appear on my genuine Q2000. It is possible one of the unknown strap bits have an effect, but it will be a while before I can test this.

The ECC is togglable (to no effect) on bare metal, but not from a VM. There must be some NVRAM somewhere on the card that saves the setting, but virtualization layer doesn't let it through (in the same way that BIOS access to the card crashes the host).

@jmecherul:
I am the one that soft-modded a GTX580 into a Q7000. This should be just as easily modifiable into a Tesla M2090 if that is what you prefer. I never bothered looking for the hard-strap resistors since a BIOS mod was sufficient. A GTX590 looks like it should be modifiable into a pair of Tesla M2090s.

I don't have my GTX580 any more (sold it, didn't have a use for it since it didn't work in a VM), but I do have the modified BIOS. If you get a 3GB Gainward Phantom I can send you a hex diff between the original and my modded BIOS (can also change it for you to ID the card as a M2090 if you like).

I will write a crash course on modding, but finding time to put all the info together and then test it by following my own instructions has been somewhat difficult recently.

If your kernels work well on Fermi chips, and you are not particularly limited by the amount of RAM on the card you may find that a modified GTX480 (C2050) works better for you - unlike later cards, that has a bidirectional async DMA engine. I guess it depends on whether you are more limited by the amount of RAM on the card (1.5GB on GTX480 vs. potentially 3GB on some GTX580s) or by cudamemcpy() I/O. In terms of raw number crunching power, GTX480 and 580 are similar enough for it not too matter too much (480 vs 512 shaders isn't that big a deal).

On an earlier note, regarding the weird issue that only makes SL-DVI modes work when in a VM in XP64 - I tried using the DB with an active adapter. The monitor gets recognized, but no modes work via DP - always just a blank screen. It is really most bizzare that this happens only in a VM and not on bare metal. I haven't done any modifications to my GTX690 yet so I don't know yet whether that will suffer from the same issue. On one hand I'm surprised it hasn't come up in anyone else's use-cases, but this is the sort of thing that likely only manifests in cases where:
1) A Xen VM is used with VGA passthrough
and
2) XP is used
and
3) DL-DVI monitor is used (1920x1200@60Hz does not require DL and relatively few people use higher res screens)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: jmecherul on September 19, 2013, 02:26:12 pm
Hi Gordan

Thanks for the reply

I tried searching for Gainward card to buy, but I cannot seem to find any.  Thanks a bunch for offering to even modify the BIOS for me.  That would be great.

The soft I am using does work OK with Fermi chips, but I am indeed limited by the amount of memory.  My K20 has 5GB right now, and I find myself maxing it quite often (run a lot of mesh cells  in my simulation software), so I would rather get a card with as much memory as possible.  I would go for a GTX590 (to get two M2090s), but they are a little expensive for my experiment.  I can find GTX 580 with 3GB ram for around $200 on ebay right now, which seems decent to get one M2090 our of it. 

The hard part is how to get this done.  Do all GTX580s follow the reference design, or are some brands better than others at modding?  Your help in getting me started is much appreciated.  By the way, I do not need the display to work with this card as I have separate Quadro card for that.

Thanks once again.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 19, 2013, 08:14:14 pm
It sounds like a 3GB GTX580 would be your best bet.

Following the reference design is irrelevant for soft-mods. All you need to do is modify a few bits in the straps (16 bytes + strap checksum starting at offset 0x58 in the BIOS dump) the device ID in the BIOS at offset around 0x18E, and the BIOS checksum (last byte in the BIOS). Modifying the boot string and the board ID string is optional but I'm pretty sure these are just human readable fields that don't actually do anything of consequence.

Checking my various notes, there are at least 32 bits in the strap (a whopping half! I never counted them before! 0,7-9,16-21,29-30,32-35,37-47,56-62) for which I didn't establish what they do, but toggling some of them caused my sacrificial GTS450 to become unbootable (not detected at all). If I'm reading my notes right (and I really hope I am), the bits that bricked the card include 16,17 and 31.


Perhaps I should re-test the bits that didn't brick the card for other potential functionality such as enabling stereo 3D functionality or ECC. The only snag is, Q2000 (what my sacrificial GTS450 is equivalent to) doesn't support ECC, so this wouldn't show up, and I'm not sure I can be bothered right now to solder a switch across the EEPROM pins (for de-bricking purposes) on my GTX470/Q5000 card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: jmecherul on September 19, 2013, 08:44:10 pm
yeah, a 3gb GTX580 would be my best bet

that sounds utterly complicated for my hardware brain.  I would rather solder resistors.

what tools would i need to get this accomplished?  which bits do i need to change and to what values?  how is the checksum exactly calculated in there?  a lot of questions.

thanks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: jmecherul on September 19, 2013, 08:49:08 pm
probably consumer video cards so not have ECC type memory in there.  I would not really need 3D functionality or anything fancy.  This is strictly numbers crunching. 

if you have time to create a detailed how to guide to turn that GTX580 into a M2090 would be greatly appreciated.  Or, a guide for multiple cards.

or as you suggested, i would dump the bios (if you tell me which tool to use), pm it to you and you can change it to whatever to make the card a M2090.

thanks once again
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 20, 2013, 01:15:07 am
ecc works differently with the gpu. Yes the gpu has ecc end to end but the ram is just soft-ecc, it takes a bit so the quadro 6000 goes down to 5.3gb and the bandwidth and performance likewise goes down.

Remember the old core 2 xeon's did not have FSB parity - the memory controller did the parity. However the odd bird is my mac pro which uses the x58 chipset can run with or without parity even though the cpu (xeon) is parity only. not sure how that works.

So you might have a GPU with parity (cache/address/data lines) but the nvidia cards do not have ECC ram at all. It is just taking 1 bit out of regular ram. Which makes sense since parity ram in regular motherboards is just another chip.

I suspect geforce cards just have it disabled.

The rom if you think about it (bios) tells the system about the card, and does basic functions (during boot) but also functions to configure the GPU. It is likely that very little of the bios is for the computer, and the rest is used to program/patch the GPU.

Now if the functions are disabled on the gpu itself (VGX on GK104/GK107/GK110) then you are going to have little luck trying to enable them, but I'd guess if you could find "beta" cards they may have the functionality still left in.

I was trying to think of where you might find such beta cards, or if they are all destroyed? That would be the key.

Some idiot sold me a raid controller with pre-release firmware (didn't bother to flash it) and it did not behave like the production board, it was running too hot and was even faster than the production model. odd.

Anyone have any ideas where to score some pre-release quadro/geforce cards?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: baconsteak on September 20, 2013, 11:30:42 am
how is the checksum exactly calculated in there?

You can use the nvflash tool to modify the straps and it calculates the checksums for you. I'm completely noob and I managed to do it but it took me hours to wrap my head around it. I followed this (https://devtalk.nvidia.com/default/topic/489965/cuda-programming-and-performance/gtx480-to-c2050-hack-or-unlocking-tcc-mode-on-geforce/post/3511598/#3511598) guide. I'm sure one of us can help you out if you're stuck.

Thanks for the help gordan.
That sucks that nothing in the bios seems to control whether the 3d stereo function exists. I guess I will have to look for a second hand quadro with a power connector so I can overclock and still game.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on September 20, 2013, 08:29:03 pm
I think the odds are about even at the moment on whether the extra quadro functionality is disabled in silicon (e.g by laser cutting) or whether it is disabled by some of the unidentified strap bits. Or it could be done by a FPGA that is programmed differently on the GeForce without exposed pins for programming it in the field. There are many possibilities. There are also a LOT of unidentified strap bit (32) and it could be any one of those or a combination thereof that affects any of the functionality in question. That's potentially 2^32 combinations to try. That's several thousand times the life expectancy of the EEPROM chip, so you better stock up on them if you want to undertake this. In fairness, though, it is likely that if the bit does control come functionality (as opposed to being merely unused), single bit flipping is likely to reveal some indication of what it does.

Also bear in mind that strap bits might do a different thing on Kepler than they do on Fermi. The ones I've been playing with that I identified on Fermi seem to do the same thing on Kepler, but some that might not have done anything on Fermi might do something on Kepler (wouldn't it be nice if one of those bits handles the next bit of the device ID strap so we can avoid soldering resistors to change the ID...).

Either way, it's an adventure for someone with waaaaaaay more time on their hands than I am ever likely to have.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 20, 2013, 09:05:08 pm
It seems the new GK208 2GB GDDR5 64bit GT 640 would be a good candidate to cross-flash! But the straps are hard!

The better one would be the K2000 quadro since it sits right over the GRID so a small bit 0/1 AND mask could push it down plus it has the GK107 that seems to be so popular.

If there was only some sort of program that could run diagnostics on cards, we could collect information and locate the chips that have features enabled (mistake/or nobody cared!). Something folks could run that would use advanced nvidia technology to get information from the cards. :( Someone like the GPU-Z folks could distribute the technology and collect information.

Given that there are so many variants these days, I am going to guess that going Quadro to Quadro might be  better option! Worst case you have a quadro - cheap
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on September 25, 2013, 10:57:03 am
I was thinking about getting a new card, anyone have suggestions? K5000 could be doable but K6000 or Grid K1 not (unless someone can find a workstation that sells with one!)

Could also get a K4000/K2000 but the idea would be to find a similar match that has the feature set we are looking for.

It seems that some kepler may have VGX (or ability) but nobody really knows.

Also the K340/K520 grid (not much known about this) is a variant.

Anyone know which chipsets the GRID use? Could get a Kepler based on the same chipset to see if its got any of the features en parity?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: aktivb on October 02, 2013, 05:14:32 pm
I have a Asus GTX 650Ti on the shelf, GK106-220-A1 as by
http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units#GeForce_600_Series (http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units#GeForce_600_Series)

Would this be modifiable to a K4000, GK106 as by
http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units#Quadro_Kxxx_Series (http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units#Quadro_Kxxx_Series)

I am guessing the answer is 'Maybe', since I have not seen anyone
attempt this in the thread so far. I saw verybigbadbody modified a 650 (GK107-450-A2) into K1 here:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg235610/#msg235610 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg235610/#msg235610)

The thing is, I have no idea how to start in locating straps, but if someone like
gnif, verybigbadboy or gordan would like to have a go at it, I would gladly ship
it over. (provided I get it back if the mod succeeds).

Would anyone like to have a go at mapping out a new card?

I can also provide high-res pictures of the card upon requests.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dongsterlicious on October 04, 2013, 04:18:23 am
Hi, I've got an evga 670 2gb card that i'm interesting in modding to a k5000.

It seems that everyone is modding their cards to be used in virtual machines, but i'm wondering if modding it opens up the hardware opengl or if it will give me any performance gain for that matter.

I'm mainly using maya, mari, adobe and etc, so i'm wondering if this mod will uncripple the geforce cards for these applications.

Thanks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 06, 2013, 05:18:17 pm
Hi, I've got an evga 670 2gb card that i'm interesting in modding to a k5000.

It seems that everyone is modding their cards to be used in virtual machines, but i'm wondering if modding it opens up the hardware opengl or if it will give me any performance gain for that matter.

Read the whole thread. Yes, I know there's 39 pages. No, that doesn't excuse you being lazy. :p
Uncrippling the missing GL functionality has not been achieved (at least not yet). Neither has ECC support or stereo 3D support.

On a separate note, I've been working on my GTX690. Inexplicably, it behaves very differently compared to the GTX680 under soft-modding. I removed resistor controlling the 3rd byte, and tried to soft-mod from there and it looks like the UEFI part of the BIOS is the only way to control this. Modifying the straps in the old places doesn't seem to do it. Removing the UEFI headers renders the card unbootable (not bricked, just no BIOS init). Removing the UEFI footer seems to not quite be doable - nvflash complains about a size mismatch. nvflash versions old enough to have the --eraseeprom don't recognize the card. Padding the BIOS out to 64KB like on the Gigabyte GTX680 that has a non-UEFI BIOS allows flashing onto the card, but the VBIOS fails to initialize. This is distinctly different from the GTX680 on which the soft-modding worked just fine.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: cubansite on October 07, 2013, 02:31:24 am
How is this accomplish with an EVGA 670 FTW ?

Its pcb is the same as 680 so would this mean the same resistor change ?

anyone ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 07, 2013, 08:21:11 pm
Read the rest of the thread. I'm sure I remember people posting about having successfully modded the GTX670.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: wukoje on October 13, 2013, 06:14:23 pm
Hi guys this is my first post, but I have been reading this thread for quite some time, would you mind tell me what would the benefits be in modding the gtx 580 to a tesla?
-Did anyone actually test it, does it make any difference in double precision (since this is supposed use case)?
-Until now did anyone manage to run multiple VM instances on the same quadrified/gridfied GPU? if not what's the best option, going for a real k5000,k6000 or just doing it the "as supposed to be way" with a grid card?
-Gordan would you mind sharing what 4gb gtx 680 did you manage to quadrfie to k5000?
-Did anyway manage to get any card (including ATIs consumer cards) to work with multiple instances?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 14, 2013, 11:35:22 am
Hi guys this is my first post, but I have been reading this thread for quite some time, would you mind tell me what would the benefits be in modding the gtx 580 to a tesla?
-Did anyone actually test it, does it make any difference in double precision (since this is supposed use case)?
-Until now did anyone manage to run multiple VM instances on the same quadrified/gridfied GPU? if not what's the best option, going for a real k5000,k6000 or just doing it the "as supposed to be way" with a grid card?
-Gordan would you mind sharing what 4gb gtx 680 did you manage to quadrfie to k5000?
-Did anyway manage to get any card (including ATIs consumer cards) to work with multiple instances?

1) The only benefit of modifying the GTX580 Into a Tesla is that you can put the card into TCC mode and avoid the windows WDM driver overhead. If you do your number-crunching on Linux it won't gain you anything.

2) None of the modification discussed in this thread make any difference to DP performance. The only performance improvement from modding is on GTX470/GTX480 where you get the 2nd DMA channel enabled when you modify to Quadro 5000/6000. GTX580 only has one DMA channel.

3) The only system that supports GPU sharing in the way you describe is recent VMware ESX and that only supprots Grid GPUs. You should be able to use a GTX680/690 modified to Grid K2, but most of us here use Xen, and that only supports GPU virtualization by passing the whole GPU to a VM. If you want to try VMware with GPU sharing, go for it, but this is sufficiently obscure that you're bound to run into issues if you run on anything but their supported reference hardware. Also note that you will need a VMware specific client on the workstation where you are outputting the video stream of the 3D rendering. You cannot just plug monitors into different outputs and have each be a separate VM sharing a GPU. Grid GPUs have no video outputs at all. I suggest you go and read through all the VMware and Xen documentation on the subject before you ask questions like this here.

4) The GTX680 I used is a Gainward Phantom 4GB model, but I would expect any 4GB GTX680 to work fine when flashed with a K5000 BIOS (you will of course also need to hard-mod the resistors).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: wukoje on October 14, 2013, 12:53:52 pm
Quote from: gordan
You cannot just plug monitors into different outputs and have each be a separate VM sharing a GPU. Grid GPUs have no video outputs at all. I suggest you go and read through all the VMware and Xen documentation on the subject before you ask questions like this here.
I don't see where you understood that, since all the time I was talking about instances (maybe that has a different meaning for us) in any case shared gpu (particularly Nvidia Grid) is supported on all 3 major player in the virtualization field , MS with RemoteFX, Citrix and WMware.
The nice thing about using nvidia GPUs is the hardware support for H.264 Encoding in Kepler GPUs witch allows to encode the rendered streams fast and CPU free. Did anyone manage to use this hardware acceleration feature for virtualization? Anyway I wonder why do you insist so much on nvidia cards for Dedicated GPU (GPU passthrough) virtualization even by quadrifieing them, while amd consumer cards support it by default?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gamezr2ez on October 16, 2013, 03:08:59 pm
Anyway I wonder why do you insist so much on nvidia cards for Dedicated GPU (GPU passthrough) virtualization even by quadrifieing them, while amd consumer cards support it by default?

AMD cards passthrough, sure. But they are buggy and you cannot reboot the VM. Lots of stability issues.

Modding my GTX680 allows me to reboot the VM as many times as I would like without any stability issues. I have shutdown the vm, passed the GPU back to my host, then passed it back to a different VM all without any reboots or performances issues.

That being said, I am not sure I would buy Nvidia again since I have completely converted to using virtualization for everything. The hardware mod is nice, but future generations will probably make this method obsolete. AMD contributed some of the initial GPU passthrough patches, I doubt they are going to block it like Nvidia does.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on October 16, 2013, 06:36:51 pm
The nice thing about using nvidia GPUs is the hardware support for H.264 Encoding in Kepler GPUs witch allows to encode the rendered streams fast and CPU free. Did anyone manage to use this hardware acceleration feature for virtualization?

Hi I tried to use NVENC sdk but seems it is not posible to use hardware encoder on GRIDfied 680 card for me. I have error about not valid licence key. But It should works fine on any non geforce card. May be I did something wrong.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: rboxeur on October 16, 2013, 09:55:50 pm
To verybigbadboy

wowza.com is a project which supports NVIDIA NVENC. This project is supported on Linux.

If you have a look at http://www.wowza.com/forums/content.php?512 (http://www.wowza.com/forums/content.php?512) explaining how to install NVIDIA NVENC on Ubuntu 12.04 then it is clearly written

Note: Accelerated encoding isn't available when running on a virtual hardware environment such as VMware or Xen.

If I am not mistaken then it should work on bare metal with a quadrified card. I didn't test it.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 17, 2013, 04:31:47 pm
Quote from: gordan
You cannot just plug monitors into different outputs and have each be a separate VM sharing a GPU. Grid GPUs have no video outputs at all. I suggest you go and read through all the VMware and Xen documentation on the subject before you ask questions like this here.
I don't see where you understood that, since all the time I was talking about instances (maybe that has a different meaning for us) in any case shared gpu (particularly Nvidia Grid) is supported on all 3 major player in the virtualization field , MS with RemoteFX, Citrix and WMware.
The nice thing about using nvidia GPUs is the hardware support for H.264 Encoding in Kepler GPUs witch allows to encode the rendered streams fast and CPU free. Did anyone manage to use this hardware acceleration feature for virtualization?

The real question here is what is the use-case? You still have to have enough GPU on the hardware to do high-res H264 decoding in realtime to make this worthwhile. It's only useful for dedicated terminal hardware that comes with hardware video decoding yet is cheap. The only problem is that such hardware doesn't really exist because the client software is Windows-only AFAIK (and certainly x86 only). So the cost benefit is somewhat questionable, although it makes it a little easier to throw away workstations without the hassle of reintalling and data copying.

Anyway I wonder why do you insist so much on nvidia cards for Dedicated GPU (GPU passthrough) virtualization even by quadrifieing them, while amd consumer cards support it by default?

Because ATI cards utterly suck. Have you actually tried using an ATI card with VGA passthrough? The drivers are unusably crap, especially if you try to use multiple monitors, and doubly so on XP. They randomly blue-screen, and on a reboot they tend to either slow down to a crawl, blue-screen the guest, or even crash the host. Having battled an ATI card for days, I invested in a Quadro 2000 (lowest spec Quadro supported for GPU passthrough), and the experience was quite eyeopening.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: CDeLorme on October 18, 2013, 02:40:24 am
I just finished reading all the contents of this thread, totally awesome.  gnif I donated to your cause, I hope you reach your goal soon and can show off an amazing video of the GTX 690 modification.  I just ordered a GTX 670 to try this mod with, and will probably get around to it this weekend.

I am also a Xen user and have spent months tinkering with AMD, and can affirm that gordan speaks the truth.

At most I would say amd cards make it "possible", to say they "support" it feels like a misnomer.  It is far from ideal, and not streamlined in the least.  Success still varies on model/make and surrounding hardware.  For my card it took days of nonstop experimenting just to figure out what exactly caused BSoD's, and then driver corruption which would lead to live degradation.

Even after all that work, manual ejection is required unless you want to reboot the physical machine, and my Windows 7/8 installs tend to have a maximum lifespan of about 6 months, after which point they become corrupt and the degradation happens within a day of runtime (not a reboot), and it isn't "fixable" except by a reinstall (or restoring from a pre-driver image).

Honestly, if I had the money and time I would have been experimenting with alternatives sooner.  I look forward to posting back whether I have success with the GTX 670 grid k2 mod.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on October 19, 2013, 09:10:11 pm
someone just sold a grid k2 on ebay for $1525

with prices like that, maybe not a bad idea to just deal hunt these :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 20, 2013, 01:51:16 pm
Indeed, that sounds like a deal good enough to not bother with modding - only there is a distinct discrepancy between what a Grid K2 is for and what most of us here want to use it for. A real Grid K2 has no video outputs. From that point of view, the use-case here is more along the lines of a Quadro than a Grid (passing a whole dedicated card to the VM).

On a separate note, I've been doing a bit more digging on soft-modding a the 6xx series cards. From what I can tell, the reason why things weren't working as expected on my first GTX690 was because it was not working properly (finally gave up the ghost the other day, most annoyingly). I got another one, I can soft-mod it to a Tesla K10. Except get this - modding the ID the old way in the main BIOS body has no effect. The old straps that used to start at 0x58 (0x458 on the UEFI BIOS) no longer have any effect when the UEFI wrappers are in place - even when running on a non-UEFI motherboard. Instead the strap at 0x0C is what controls the device ID. The bit layout, at least for the device ID control bits, is the same.

So for those of you that only want to mod to a Tesla K10, you can soft-mod, no need to take a soldering iron to he card. It also means that you can soft mod the 4th nibble, and only hard-mod the resistor pair for the 3rd nibble.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 22, 2013, 10:11:16 am
First of all, a big thanks to anyone who contributed: gnif, verybigbadboy, and all the others I forgot to mention ^-^

I'm trying to convert a GTX780 to a Tesla K20 which have the following device IDs:
GTX7800x1004
K200x1022

According to the resistor values that were discovered so far, this would suggest that I would have to find a 5K and a 25K resistor and change them both to 15K since they are both digits are in the 0-7 range. I found the EEPROM and measured the values of the resistors around it. You can find the results below:
(http://vps1931.directvps.nl/GTX780-1.jpg)

As you can see, I found a 5K resistor which I removed and replaced it with a multi-turn 50K pot which I set to 15K. Unfortunately, this did nothing as the device ID still remains 0x1004 whereas I expected it to be 0x1024. There are two 4.7K resistors at the back of the board and other than that there are no 5K resistors on the board. Either NVIDIA changed the way the device ID is determined, or they changed the values, or there is a simple resistor divider action going on.

Before I go and change the 25K resistor, I want to make sure that I can change the 3rd digit from 0 to 2. I did try to flash a K20 ROM onto the EEPROM, but it is still recognized as a GTX780. Strangely enough, with the K20 ROM, the nvidia-smi tool reports that the board supposedly has 6GB of RAM instead of the actual 3GB. Any ideas or suggestions?

EDIT: I will be updating the image when I discover any new values/paths.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on October 22, 2013, 12:23:25 pm
First of all, a big thanks to anyone who contributed: gnif, verybigbadboy, and all the others I forgot to mention ^-^

I'm trying to convert a GTX780 to a Tesla K20 which have the following device IDs:
GTX7800x1004
K200x1022

According to the resistor values that were discovered so far, this would suggest that I would have to find a 5K and a 25K resistor and change them both to 15K since they are both digits are in the 0-7 range. I found the EEPROM and measured the values of the resistors around it. You can find the results below and in the attached photo:

As you can see, I found a 5K resistor which I removed and replaced it with a multi-turn 50K pot which I set to 15K. Unfortunately, this did nothing as the device ID still remains 0x1004 whereas I expected it to be 0x1024. There are two 4.7K resistors at the back of the board and other than that there are no 5K resistors on the board. Either NVIDIA changed the way the device ID is determined, or they changed the values, or there is a simple resistor divider action going on.

Before I go and change the 25K resistor, I want to make sure that I can change the 3rd digit from 0 to 2. I did try to flash a K20 ROM onto the EEPROM, but it is still recognized as a GTX780. Strangely enough, with the K20 ROM, the nvidia-smi tool reports that the board supposedly has 6GB of RAM instead of the actual 3GB. Any ideas or suggestions?

Hello oguz286,

Bios contain information about memory and memory type. It is absolutely normal that nvidia smi shows 6gb of ram with K20 bios.

Also I looked at gtx 780 bios, and have a question. What gtx780 model do you use? I think you need to do bios modification like a for GT 640 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332)

Thank you.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 22, 2013, 12:35:37 pm
Hello verybigbadboy (thanks for the many mods :D).

I have a Palit GTX780, which I believe is the standard NVIDIA reference design (http://www.palit.biz/palit/vgapro.php?id=2132 (http://www.palit.biz/palit/vgapro.php?id=2132)).

Ok so what I understand from your post that you linked is that I need to modify the GTX780 BIOS on the card to unlock it.
My BIOS has the following values:
00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF 3F FC 7F
00000020: 00 50 00 80 0E 10 10 82 FF FF FF 73 00 00 00 8C

So that means my BIOS is locked and I need to change the FF 3F FC 7F to FF FF FF 7F. Is that correct?

I'm going to try it right now :D

EDIT: NiBiTor cannot read the ROM file correctly. I saved the modified BIOS using NiBiTor 6.06 but I do not know if the checksum is now correct. I guess I'll find out soon enough.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on October 22, 2013, 12:41:53 pm
Hello verybigbadboy (thanks for the many mods :D).

I have a Palit GTX780, which I believe is the standard NVIDIA reference design (http://www.palit.biz/palit/vgapro.php?id=2132 (http://www.palit.biz/palit/vgapro.php?id=2132)).

Ok so what I understand from your post that you linked is that I need to modify the GTX780 BIOS on the card to unlock it.
My BIOS has the following values:
00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF 3F FC 7F
00000020: 00 50 00 80 0E 10 10 82 FF FF FF 73 00 00 00 8C

So that means my BIOS is locked and I need to change the FF 3F FC 7F to FF FF FF 7F. Is that correct?

I'm going to try it right now :D

yes, and next line too
00000020: 00 50 00 80 to 00 00 00 80

also please update  checksum. without it card won't start at all :)
Quote
4. Change values to be equal values from 4.
5. Update checksum. I do it by nibitor tool. just open bios rom and save it. It produces lot of warnings, but it is ok.
6. Upload bios back to card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 22, 2013, 01:02:51 pm
Hello verybigbadboy (thanks for the many mods :D).

I have a Palit GTX780, which I believe is the standard NVIDIA reference design (http://www.palit.biz/palit/vgapro.php?id=2132 (http://www.palit.biz/palit/vgapro.php?id=2132)).

Ok so what I understand from your post that you linked is that I need to modify the GTX780 BIOS on the card to unlock it.
My BIOS has the following values:
00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF 3F FC 7F
00000020: 00 50 00 80 0E 10 10 82 FF FF FF 73 00 00 00 8C

So that means my BIOS is locked and I need to change the FF 3F FC 7F to FF FF FF 7F. Is that correct?

I'm going to try it right now :D

yes, and next line too
00000020: 00 50 00 80 to 00 00 00 80

also please update  checksum. without it card won't start at all :)
Quote
4. Change values to be equal values from 4.
5. Update checksum. I do it by nibitor tool. just open bios rom and save it. It produces lot of warnings, but it is ok.
6. Upload bios back to card.

Aha, I forgot the second line |O Anyway, I changed both lines and saved it to a file (FILE_A). I opened that file in NiBiTor (which complained), and saved it to a different file (FILE_B). Then I flashed the card with FILE_B and rebooted.

With the pot set at 5K (which is the original value), nvidia-smi now reports that it cannot determine the device handle and gives an unknown error :( Did I miss something?

EDIT: I do see that FILE_A and FILE_B are different:
one byte is different at 0x8DFF
one byte is different at 0x391FF

So I guess the checksum has been updated correctly.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on October 22, 2013, 01:09:32 pm
With the pot set at 5K (which is the original value), nvidia-smi now reports that it cannot determine the device handle and gives an unknown error :( Did I miss something?

EDIT: I do see that FILE_A and FILE_B are different: one byte is different at 0x8DFF so I guess the checksum has been updated correctly.

yes checksum looks like corrected correctly.
can you check lspci for videocard id?

or
boot via dos flash drive and
nvflash --list ?

are you trying to flash it with gtx780 or k20 bios? please make changes with original bios first.

EDIT:
Also I suggest to change resistor near flash first. I am not sure that it is correct one are you trying to change now.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 22, 2013, 01:23:20 pm
With the pot set at 5K (which is the original value), nvidia-smi now reports that it cannot determine the device handle and gives an unknown error :( Did I miss something?

EDIT: I do see that FILE_A and FILE_B are different: one byte is different at 0x8DFF so I guess the checksum has been updated correctly.

yes checksum looks like corrected correctly.
can you check lspci for videocard id?

or
boot via dos flash drive and
nvflash --list ?

are you trying to flash it with gtx780 or k20 bios? please make changes with original bios first.

I used the original BIOS which I first saved to a file and then modified and saved it with the correct checksum. With the modified BIOS:

5K pot:

nvflash --list gives GK11x (10DE,1004,10DE,104B)
lscpi gives device ID 0x1004

15K pot:

nvflash --list gives GK11x (10DE,1004,10DE,104B)
lspci gives device ID 0x1004

So there are no changes :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 22, 2013, 02:09:56 pm
A few points:

1) The values for the resistors for the 4th nibble are the ones that were documented. Resistor values for the 3rd nibble are NOT the same. For example, on my GTX690, the 3rd nibble resistor is 25K (24.8K) and the value is 8.

2) You cannot measure the value of the resistor while it is attached to the board. What you will end up measuring is the resistance of the resistor in parallel with the resistance of the rest of the circuit (if it is connected - which in most cases it will be).

3) The 3rd nibble isn't fully adjustable. On 6xx series cards it tops out at 0xB. It doesn't matter what you set it to past 40K, I suspect you'll find it will not go past that value. This may be different on 7xx series cards.

4) Be careful when blanking out the strap values at 0x0C - the card could plausibly be partially soft-strapped, which means that editing the strap value can brick the card - hard. Normally, unbricking is reliant on the card being fully hard-strapped. You can then ground the EEPROM power pin, and the card will boot EEPROM-less and and show up again for nvflash (I have a GTS450 modified this way for easy unbricking when BIOS-modding). If the card relies on partial soft-strapping and you break the soft-strap, the only way of unbricking it may well be to find how the important other bits are hard-strapped and modify them for the correct hard-strap - much harder considering that nobody has yet reverse engineered anything other than the device ID resistor locations.

5) Cross-flashing a ROM from a similar card with a different amount of RAM will not work. At best you will end up with garbled/corrupted screen output, even if text mode boot-up works (and/or the card shows up as a secondary card). The only way you will get a Quadro/Tesla/Grid ROM working on a GeForce card is if you use a card with the same GPU with the same amount of VRAM. The only cross-flashes I have managed to get working are Q2000 1GB -> GTS450 1GB works, and QK5000 4GB -> GTX680 4GB works. And if you are doing that, you will also want to edit the BIOS to adjust the clocks and fan speeds back to where they were on the GeForce card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 22, 2013, 03:30:31 pm
A few points:

1) The values for the resistors for the 4th nibble are the ones that were documented. Resistor values for the 3rd nibble are NOT the same. For example, on my GTX690, the 3rd nibble resistor is 25K (24.8K) and the value is 8.
Ok, that was my misunderstanding then. I need to go through the topic then and see if there is any logic to be found concerning the 3rd nibble resistor.

Quote
2) You cannot measure the value of the resistor while it is attached to the board. What you will end up measuring is the resistance of the resistor in parallel with the resistance of the rest of the circuit (if it is connected - which in most cases it will be).
You are right. I just got lucky in that the 5K resistor I desoldered is in fact a 5K resistor. Unfortunately I cannot 'randomly' desolder parts as they are very fragile, so I want to be as sure as possible that I got the right resistor.

Quote
3) The 3rd nibble isn't fully adjustable. On 6xx series cards it tops out at 0xB. It doesn't matter what you set it to past 40K, I suspect you'll find it will not go past that value. This may be different on 7xx series cards.
Good to know. I soldered 50K multi-turn pots, so I can test with different values and see if it makes any difference. For the third nibble, I need to go from 0 to 2 so I hope that it is possible.

Quote
4) Be careful when blanking out the strap values at 0x0C - the card could plausibly be partially soft-strapped, which means that editing the strap value can brick the card - hard. Normally, unbricking is reliant on the card being fully hard-strapped. You can then ground the EEPROM power pin, and the card will boot EEPROM-less and and show up again for nvflash (I have a GTS450 modified this way for easy unbricking when BIOS-modding). If the card relies on partial soft-strapping and you break the soft-strap, the only way of unbricking it may well be to find how the important other bits are hard-strapped and modify them for the correct hard-strap - much harder considering that nobody has yet reverse engineered anything other than the device ID resistor locations.
I see. I thought that if I adjust the value of the 5K resistor to its original value and potentially mess with the power pin of the EEPROM, that I can simply reflash it with the original BIOS. I'll take that into consideration next time I try to adjust values in the BIOS.

Quote
5) Cross-flashing a ROM from a similar card with a different amount of RAM will not work. At best you will end up with garbled/corrupted screen output, even if text mode boot-up works (and/or the card shows up as a secondary card). The only way you will get a Quadro/Tesla/Grid ROM working on a GeForce card is if you use a card with the same GPU with the same amount of VRAM. The only cross-flashes I have managed to get working are Q2000 1GB -> GTS450 1GB works, and QK5000 4GB -> GTX680 4GB works. And if you are doing that, you will also want to edit the BIOS to adjust the clocks and fan speeds back to where they were on the GeForce card.
Yes, apparently the size of the RAM is also stored in the BIOS, so the chances of cross flashing to work are very slim if the hardware differs.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 22, 2013, 10:19:35 pm
I found something interesting. After I changed the original BIOS like verybigbadboy mentioned, I opened it in NiBiTor and saved it to a different file as NiBiTor recalculates the checksum. I opened this supposedly correct file in the Kepler Bios Tweaker 1.25 tool and found that the checksum of this new file is incorrect and that the original BIOS and the BIOS file which I edited (but not opened/saved with NiBiTor) both have correct checksums.

So I flashed the modified BIOS onto my card and now the nvidia-smi tool does detect the card properly as a GTX780. It seems that NiBiTor breaks the checksum of the BIOS file. Unfortunately, with the pot at 15K, there is no change in the device ID.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amyk on October 23, 2013, 06:26:22 am
4) Be careful when blanking out the strap values at 0x0C - the card could plausibly be partially soft-strapped, which means that editing the strap value can brick the card - hard. Normally, unbricking is reliant on the card being fully hard-strapped. You can then ground the EEPROM power pin, and the card will boot EEPROM-less and and show up again for nvflash (I have a GTS450 modified this way for easy unbricking when BIOS-modding). If the card relies on partial soft-strapping and you break the soft-strap, the only way of unbricking it may well be to find how the important other bits are hard-strapped and modify them for the correct hard-strap - much harder considering that nobody has yet reverse engineered anything other than the device ID resistor locations.
Is everything stored in the EEPROM or is there some configuration stored in nonvolatile memory in the GPU itself? Otherwise it seems that a failsafe way to unbrick would be to rewrite the EEPROM out-of-system using something like a buspirate.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 23, 2013, 11:37:06 am
I've always used Kepler BIOS Tweaker to sort out the checksums for me NiBiTor doesn't really understand recent BIOS-es properly, especially the UEFI wrapped ones.

The memory configuration is stored in the EEPROM. I guess you could make some kind of a piggy-back adapter to re-write the EEPROM out of band. I also did some basic comparisons between BIOS images with same BIOS version but for cards with different amounts of RAM, if you look a few pages back on the thread. I'm sure it should be possible to work out where the memory size is stored.

Please, do report back when you find the 3rd nibble resistor pair on the GTX780. I'm most interested in the prospect of turning a Titan into a K6000.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 23, 2013, 11:52:09 am
User athanor posted photos of his TITAN a while back (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg212115/?topicseen#msg212115 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg212115/?topicseen#msg212115)).
I sent him a personal message to ask if he could measure some resistor values so that we can cross-reference some values. He hasn't responded though :(

If anyone has a TITAN or a K20 or K20X and could measure some resistors, then it would help tremendously.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 24, 2013, 09:43:11 pm
Just completed modifying my new GTX690 and I can confirm what I suggested previously - the only hard-mod required is removing the resistor controlling the 3rd nibble..

This makes the 3rd nibble unstable but it only flaps between A and B. That's not a problem since that is only an instability in the least significant bit of the 3rd nibble, or bit 5 of the device ID.
Since that means only the bottom 5 bits need to change/stabilize, this can be achieved using using a soft mod.

On my card, the default soft-strap in the UEFI header starting at 0xC is effectively null (fully hard-strapped card), i.e.
FF FF FF 7F 00 00 00 80
We want all 5 accessible bits of the device ID to go high, so we need to change the OR section to:
00 3C 00 90.

And voila. GTX690 is now stably a Grid K2 with only two resistors removed, none replaced - which makes the mod at least 4x less complex. The improvement in difficulty is probably greater than 4x since manually re-soldering a 0402 component is considerably more difficult than removing it unless you truly are a ninja with a soldering iron.

Also note that the UEFI headers don't appear to be a part of the checksum - Kepler BIOS Tweaker doesn't detect a checksum mismatch after the above change to the strap. Nvflash also doesn't complain about anything other than the fact that the BIOS ID you end up flashing doesn't match the device ID of the board you are flashing to do you have to do it with --overridetype - no big deal. It also appears there is no strap checksum in the UEFI headers, unlike in the main BIOS payload. All of this makes the process even simpler.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 24, 2013, 10:00:26 pm
Can I ask you where how you figured out where the UEFI header is? The guy who did the GTX480 to Tesla mod is a colleague of mine, but I did not know that the soft-strap locations for Kepler cards were known. Any link to where I can find such information?
Maybe this is also possible on the 700-series.

BTW, I was very busy so I couldn't make any progress with the GTX780, but I will have some more time tomorrow :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 24, 2013, 11:25:13 pm
UEFI header is the first 1024 (0x400) bytes. If you look at the BIOS closely you'll find that once you strip off the first 0x400 bytes and all the padding and crypto certs off the end (more or less everything past 64KB), you are left with what is a pretty familiar Nvidia BIOS that hasn't changed much since the Fermi (4xx series) days.

The soft-straps for Kepler are similar to Fermi. At least the ID bits are the same, but I suspect most if not all bits will be the same. It is possible (even likely) some of the previously unknown/unused bits now do something new/different, of course.

I'd be surprised if this worked fundamentally differently on the 7xx series cards.

Update on my GTX690/Grid K2 mod - the card works fine on bare metal, but I cannot for the life of me get it to work with VGA passthrough. Tried both GPUs, and all I get is error 10 (device cannot start). My GTX680 works fine, both as a K5000 and a K2. I suspect the doubled-up PLX PCIe bridge on the 690 is causing a problem - NF200 bridges on my SR-2 are already problematic, and further bridging on top of them isn't going to be helping. The PCIe arrangement is thus Intel PCIe bridge -> NF200 (known to have VT-d affecting bugs) -> PLX bridge -> PLX bridge -> GPU. :(

Which means I need to start seriously considering either taking a chance on a Titan in hope we can figure out how to mod it into a K6000 as well as hope that the driver "just works" in that arrangement, or I get an ATI card for the VM this was intended for. Tough choice... I guess it depends on whether I can get a Titan for a similar price as an R9 R290X...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 25, 2013, 10:54:46 am
I tried to softmod the 4th nibble (0x1004 to 0x1022, so from 4 to 2). My BIOS contains the following:

00000000: 4E 56 47 49 0C 01 10 80 B8 04 00 00 DE 10 4B 10
00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF 3F FC 7F
00000020: 00 50 00 80 0E 10 10 82 FF FF FF 73 00 00 00 8C
00000030: 00 50 00 80 0E 10 10 82 FF FF FF 73 00 00 00 8C
00000040: 36 10 10 02 FF FF FF FF 00 00 00 00 02 87 08 02

So in my case I guess that means that:
HEXBinary
AND07FFC3FFF0111 1111 1111 1100 0011 1111 1111 1111
OR0800050001000 0000 0000 0000 0101 0000 0000 0000
AND173FFFFFF0111 0011 1111 1111 1111 1111 1111 1111
OR18C0000001000 1100 0000 0000 0000 0000 0000 0000

If the bit positions for the device ID are still the same, then to go from 0x1004 to 0x1002 I would change AND0 to 7FFC3BFF and OR0 to 80005200 so that I don't take the resistor value for the 4th nibble, and force it to 2 via OR0.
I tried this and also changed the device ID strings from 0x1004 to 0x1002 in the BIOS, updated the checksum, flashed it to the card... it still displays 0x1004 :(

I hope I did something wrong, but if not, then NVIDIA probably changed some things. The reason why I started with nibble 3 is that I hoped I could change the 4th nibble without hardmodding.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 25, 2013, 11:32:50 am
I just spotted an error in what I said - I'm not sure where 0xC came from. Looking at the BIOS dumps I think I meant 0x1C. Annoyingly, I don't have my GTX690 dumps handy, and they are the most minimally modified ones I have.

Ignore the second strap mask - there is nothing of interest there. The important bit is AND0/OR0.

The 32-bit mask can be represented this way:

-xx4 xxxx       xxxx xxxx       xx32 10xx       xxxx xxxx

You want to flip bit 2 low (AND0 to 0, OR0 to 0) and bit 1 high (OR0 to 1).

OLD AND0   7FFC3FFF   0111 1111 1111 1100 0011 1111 1111 1111
NEW AND0   7FFC2FFF   0111 1111 1111 1100 0010 1111 1111 1111
OLD OR0   80005000   1000 0000 0000 0000 0101 0000 0000 0000
NEW OR0   80004800   1000 0000 0000 0000 0100 1000 0000 0000

Which makes the new mask:
AND0 7FFC2FFF
OR0 80004800

And of course remember the byte order is little-endian when editing in the BIOS. :)

Disclaimer - I may be completely wrong in the above calculation - I haven't had enough coffee yet today.

On the off-chance I'm right, however, the relevant hex pseudo-patch would be:

< 00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF 3F FC 7F
> 00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF 2F FC 7F
< 00000020: 00 50 00 80 0E 10 10 82 FF FF FF 73 00 00 00 8C
> 00000020: 00 48 00 80 0E 10 10 82 FF FF FF 73 00 00 00 8C

If you could let me know in the next few hours if that works for you, I'd very much appreciate it - I need to make a decision on whether to get a Titan by tonight, and a confirmation that soft-modding works on the GTX780 would go a long way toward persuading me that is the way forward.

Unfortunately, GTX780 and Titan only different in the 4th nibble, so while we should have no trouble figuring out which resistor controls the 4th nibble based on the difference, finding the 3rd nibble will be more difficult.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 25, 2013, 12:42:13 pm
Yeah I haven't had coffee as well. I cannot recall the reasoning behind my modifications, but yes they are wrong.
Your modification look right, and I will try them when I get back home. Hopefully it will work :)

EDIT: Well gordan, you were right! nvflash now displays device ID 0x1002! Now we just have to figure out how to modify the 3rd nibble (which is going to be harder).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Cubexed on October 25, 2013, 05:54:17 pm
Hello, I have a GTX 770 with PCI id 0x1184, I am wondering if changing the soft straps I can turn it to 0x118F (Tesla K10), as both have the same chip, I want mainly for VGA Passtrough, as http://wiki.xen.org/wiki/XenVGAPassthroughTestedAdapters (http://wiki.xen.org/wiki/XenVGAPassthroughTestedAdapters) indicates that might work, but I want experts opinion before attempting anything
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 25, 2013, 08:13:42 pm
GTX770 is a relabeled GTX680.
Yes, you can change the soft-straps as described above to turn it into a Tesla K10.
Tesla cards do not work for VGA passthrough.

The only cards that will work for VGA passthrough are:

Fermi (soft-moddable)
Quadro 2000 (or modified GTS450)
Quadro 4000 (no directly equivalent GeForce)
Quadro 5000 (or modified GTX470)
Quadro 6000 (or modified GTX480)

Kepler: (some hard-modding required)
Quadro K5000/Grid K2 (or modified GTX680/GTX770, some got a modified GTX690 to work, but mine refuses to, almost certainly due to the extra PCIe bridging on the card on top of NF200 PCIe bridges on the motherboard - happy to sell you my modified one if you're interested).

IIRC GTX650 -> Grid K1 has also been done.

Also, as you can see above, some effort is going into figuring out how to modify a GTX780/Titan into a K6000, but we're not there yet.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: axero on October 27, 2013, 03:55:21 pm
Earlier in this thread there was a discussion about the FLR feature which surprisingly, in spite of its sheer simplicity is rarely implemented in PCI hardware for some reason. So another way to to trig a reset in selected hardware is to use the ACPI API and alter the power states of that hardware. In ACPI the power state D0 means fully on and the power state D3 means off. In power state D3, the Vcc of the PCIe slot is turned off, and in state D0 it is turned back on. Therefore this reset method is called D3-D0.

Now to my question; does this really work on PCIe cards that also take power from an auxilliary power source, i.e. directly from the PSU like most graphics adapters do these days? Setting the slot to D0 will not cut the power to the card, only to the slot where the card is sitting in. Has anyone managed to reset a GPU with the D3D0 method above in spite of the auxiliary power connection? I would really like to know more about that.


Also, I read a lot of questions regarding the vGPU feature offered by the Grid K2 GPU. A few years ago I wrote a post regarding a similar feature in the Intel Communty (and some other forums which I cannot remember):

https://communities.intel.com/thread/25945 (https://communities.intel.com/thread/25945)

In my posts there I was suggesting the development of Intel VT-x/AMD-v like extensions that allows the GPU(s) be shared seamlessly among VMs (and the host) just like the CPU cores can be shared among the (physical and virtual) machines with hypervisors such as VirtualBox, Parallels Desktop, Xen, KVM, Hyper-V, VMWare and so on. A lot has happened since then so I suspect that the vGPU feature is exactly that; a set of hardware assisted GPU extensions. The rendered image (of the computer desktop, a DirectX game or video playback) is then shared over a network connection most likely by using a remote desktop protocol such as RDP, VNC, Spice, etc, (Also The AMD FirePro R5000 et al have the capability of outputting the video signal over an ethernet connection, it even has its own NIC sitting on the card).

If this is the case then perhaps those extensions get disabled on non-K2 GPUs by zener zapping a certain set of fusebits. That would probably lead to the GPU ignoring such instructions as it receives them. Perhaps some instruction sets execution bits have a connection to one of those fusebits through an AND-gate (or NAND-gate depending on how you look at it). These instructions may then get blocked even before they reach the cores.

Edit: Regarding Nvidia's penchant for artificially disabling things, they appear to have done than on their Linux binary blob. This article mentions this about their Mosaic feature:

http://www.phoronix.com/scan.php?page=news_item&px=MTQ3NDE (http://www.phoronix.com/scan.php?page=news_item&px=MTQ3NDE)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 27, 2013, 11:47:35 pm
IIRC the power management trick is something Xen already implements, provided the GPU actually reports as supporting D3 and D0 power management states.

It doesn't always work, though. Due to various issues, one of my gaming VMs is running a HD7970 cards, and for some bizzare, inexplicable reason GPU-Z locks up the VM and and the GPU hard. Issuing the reset (presumably implemented using the above trick, since the card doesn't support FLR) does nothing to shake it loose. The particularly weird thing is that if I use a HD4850 card for dom0, the whole machine locks up solid as soon as the ATI driver is loaded in domU. This doesn't happen, however, if the domU card is HD7450. Really strange. Because of this I had to switch back to my 8800GT card for dom0.

The trick might, however, just work well enough to resolve the issue of performance degradation after domU reboots (instead of rebooting, power it off, issue the reset, then start up the domU).

While this is still nowhere nearly the "just works" 100% reliable and robust experience achieved using something like the soft-modded Fermi (GTS450/GTX470/GTX480) cards into corresponding Quadros (Quadro (2/5/6)000 respectively), it is a vast improvement on ATI usability since a few months ago. So much so, in fact, that given my experience of assorted oddness with my Kepler cards (GTX680 won't do dual-link DVI modes but only when virtualized (works fine on bare metal), GTX690 modified to Grid K2 that flat out refuses to initialize in domU), I'm actually switching back to using ATI cards for some VMs where I need more performance than a GTX480/Q6000.

Anyway, back on the issue of power management reset trick, (most?) Nvidia cards don't seem to support the required levels of power management to do that trick (or at least they don't seem to advertise it), yet they work just fine across domU reboots.

Finally, I don't think any of the extensions for virtualization are disabled - I seem to recall that somebody posted somewhere that they got vSGA/ESXi working with a GeForce GK104 based card after modifying it. If you think about it, no special hardware support is required. All vSGA does is implement a virtual GPU driver that offloads DirectX and suchlike via a paravirtualized interface to the host's GPU. I may be wrong, but IIRC older models like Quadro 6000 are also supported.

I guess the next logical step from there might be to use remote GPU rendering using a trick along the lines of DMA mapping the BARs using RDMA over infiniband.

Also, you don't actually need Mosaic on Linux - you can achieve the exact same thing using standard Xorg configuration and extensions like Xinerama. I've been using it for years - it's the only way to get stretched full screen desktop working on monitors like the IBM T221 that require two dual-link DVI channels to achieve enough bandwidth for their full resolution and frame rate, and thus appear as either 2x1920x2400 screens or 4x960x2400 screens that need to be "glued" together in Xorg.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: axero on October 28, 2013, 01:10:31 am
Perhaps a failure to reset e.g. the earlier generations of the ATi/AMD card might be due to the auxiliary power keeping the card "alive" even when the power to the PCIe slot is cut. If that is the case then maybe a switch or relay that turns off the auxiliary input (upon detection of a Vcc cut) might help (such relays ought to be able to take quite a few amps though 240W@12V => 20A).

After reading a Whitepaper on sSGA/sDGA deployment in ESXi I found at the end of that document that the Quadro 6000 uses "Bridge reset" as a reset method (a search for '"bridge reset" virtualization' in google made me discover that also Quadro 4000 and Grid K1 use this method, this can be found in ESXi through the command "esxcli hardware pci list -c 0x300 -m 0xffc"). Bridge reset is what I believe to be also known as "bus reset" which presumably means that the entire PCI bus is reset. The different reset methods are discussed very briefly in the VM DirectPath documentation although I don't know any more about it. How bridge or bus reset works is as to this date a mystery to me...

The special thing about the vGPU feature is that it can be shared among up to 8 virtual guests as one GPU, i.e. it is not dedicated to one VM as VGA passthrough (or sDGA in ESXi). That requires a more sophisticated solution than when it is dedicated which made me suspect that the drivers are not only paravirtualized but also hardware assisted through certain extensions (mind you that the AMD-v/Intel VT-x extensions do not require special paravirtualized drivers on the guest side). The downside with this technology is that it currently only gives up to 512MB of video RAM to each VM and that only DirectX up to version 9.0c is supported, at least in ESXi. Other conditions may apply in Hyper-v and other hypervisors that support the vGPU technology. So, maybe there are no hardware extensions involved with the vGPU technology after all.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 28, 2013, 01:32:32 am
Well, here's an update. In trying to find the resistor(s) that control the third nibble, ijsf (the guy who did the original GTX480 to Tesla hack) and I screwed around with the BIOS, and sure enough, the card was not recognized anymore.

I disconnected the power to the eeprom but that didn't help either. In the end I ended up with hooking up the eeprom to my Raspberry Pi, writing a python script that can read from and write to the eeprom and finally managed to write the original BIOS back. Luckily the card works again, and now I can always reflash the card because I have a breakout-board that I can hook up to my RPi :D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 28, 2013, 07:57:45 am
Perhaps a failure to reset e.g. the earlier generations of the ATi/AMD card might be due to the auxiliary power keeping the card "alive" even when the power to the PCIe slot is cut. If that is the case then maybe a switch or relay that turns off the auxiliary input (upon detection of a Vcc cut) might help (such relays ought to be able to take quite a few amps though 240W@12V => 20A).

You know, you might be on to something here - I thought I found that resetting the HD7450 card works, but - that only draws power from the slot, no auxiliary ATX power goes into it. So perhaps you are right. Putting the card into D3 state, and cycling ATX aux power might just do the trick. You'd need a multi-throw (3 lines per power connector) switch to make this work, but it does sound like something worth testing. Do post some designs if you come up with an internal USB+hub widget that can do this. :)

The special thing about the vGPU feature is that it can be shared among up to 8 virtual guests as one GPU, i.e. it is not dedicated to one VM as VGA passthrough (or sDGA in ESXi). That requires a more sophisticated solution than when it is dedicated which made me suspect that the drivers are not only paravirtualized but also hardware assisted through certain extensions (mind you that the AMD-v/Intel VT-x extensions do not require special paravirtualized drivers on the guest side). The downside with this technology is that it currently only gives up to 512MB of video RAM to each VM and that only DirectX up to version 9.0c is supported, at least in ESXi. Other conditions may apply in Hyper-v and other hypervisors that support the vGPU technology. So, maybe there are no hardware extensions involved with the vGPU technology after all.

It's not that magical/complicated. VMware has had accelerated emulated drivers in desktop hypervisors for years. They offloaded guest's 3D rendering onto the host's OpenGL subsystem. vSGA is conceptually similar - it is a hardware accelerated emulated graphics device that offloads the rendering work to the real GPU.

Well, here's an update. In trying to find the resistor(s) that control the third nibble, ijsf (the guy who did the original GTX480 to Tesla hack) and I screwed around with the BIOS, and sure enough, the card was not recognized anymore.

I disconnected the power to the eeprom but that didn't help either. In the end I ended up with hooking up the eeprom to my Raspberry Pi, writing a python script that can read from and write to the eeprom and finally managed to write the original BIOS back. Luckily the card works again, and now I can always reflash the card because I have a breakout-board that I can hook up to my RPi :D

Awesome stuff. :)
Any chance you could use this opportunity of having an unbrickable card to investigate whether the meaning of any of the bits in the first 32-bit strap have changed, and whether one of the previously unknown bits might have been used to set the 6th device ID bit? It'd be really handy if the soldering solution could be fully deprecated.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: axero on October 28, 2013, 05:03:32 pm
Maybe it's not that much "magic" in sharing a GPU between VMs but it is quite tricky to do that without overhead and yet be rather as feature rich as if it were on bare metal. Before AMD-v and Intel VT-x the CPU sharing took a rather substantial penalty from the virtualization. Now this penalty is rather small thanks to the hardware assisted virtualization technology offered through VT-x and AMD-v. From the papers on vGPU there seems to be a rather small penalty to sharing the GPU, either they have really managed to bring up smart drivers or there is something hardware assisted to back it up. Maybe there is a rather substantial overhead that is "offset" by the capabilities of the GPU.

I have started a thread for resetting PCI devices with auxiliary power input here:

https://www.eevblog.com/forum/projects/acpi-power-saving-circuitry-for-150-w-pci-devices-%28ie-gpus%29/ (https://www.eevblog.com/forum/projects/acpi-power-saving-circuitry-for-150-w-pci-devices-%28ie-gpus%29/)

I guess a further discussion about it should be taken there.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 28, 2013, 05:23:45 pm
Maybe it's not that much "magic" in sharing a GPU between VMs but it is quite tricky to do that without overhead and yet be rather as feature rich as if it were on bare metal.

It's not without overhead - the overhead is likely quite substantial, not including the inevitable overhead of actually encoding it into an MPEG stream in realtime and sending it over the network. While it is a cool feature, its use-case is rather narrow.

Before AMD-v and Intel VT-x the CPU sharing took a rather substantial penalty from the virtualization.

Even with those virtualization performance penalty is substantial:
Virtualized Performance - or Lack Thereof (https://altechnative.net/virtual-performance-or-lack-thereof/)

There were also other solutions before VT-x that provided only marginally worse performance (e.g. kqemu)

Now this penalty is rather small thanks to the hardware assisted virtualization technology offered through VT-x and AMD-v. From the papers on vGPU there seems to be a rather small penalty to sharing the GPU, either they have really managed to bring up smart drivers or there is something hardware assisted to back it up. Maybe there is a rather substantial overhead that is "offset" by the capabilities of the GPU.

That's pretty much it - the GPU has enough processing power to to produce reasonable results within the given constraints. That doesn't mean it's particularly efficient. I would be surprised if the performance is much more than 50% of what you might expect on bare metal, especially after you account for the MPEG encoding. I have a virtualized gaming rig that is pretty finely tuned, and the frame rates on bare metal are at least 10-20% higher - and that's just with VGA passthrough, which is a lot less overheady than something like vSGA.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 29, 2013, 07:32:59 am
Well, here's an update. In trying to find the resistor(s) that control the third nibble, ijsf (the guy who did the original GTX480 to Tesla hack) and I screwed around with the BIOS, and sure enough, the card was not recognized anymore.

I disconnected the power to the eeprom but that didn't help either. In the end I ended up with hooking up the eeprom to my Raspberry Pi, writing a python script that can read from and write to the eeprom and finally managed to write the original BIOS back. Luckily the card works again, and now I can always reflash the card because I have a breakout-board that I can hook up to my RPi :D

Any chance you could post a detailed explanation of what you did to make an unbricking rig? I have a suspicion that the root cause of the death of my first GTX690 might have been a misflash that corrupted the PLX chip (PCIe bridge) EEPROM. It'd be nice to have a go at resurrecting it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: axero on October 29, 2013, 11:32:26 am
Before AMD-v and Intel VT-x the CPU sharing took a rather substantial penalty from the virtualization.

Even with those virtualization performance penalty is substantial:
http://www.altechnative.net/2012/08/04/virtual-performance-part-1-vmware/ (http://www.altechnative.net/2012/08/04/virtual-performance-part-1-vmware/)

There were also other solutions before VT-x that provided only marginally worse performance (e.g. kqemu)
I guess it depends on what type of load you expose the virtual CPU to. I have seen tests from Phonoix.com website where the difference between VMs and bare-metal performance is considerably less. Look for example at this article:

http://www.phoronix.com/scan.php?page=article&item=ubuntu_1110_xenkvm&num=2 (http://www.phoronix.com/scan.php?page=article&item=ubuntu_1110_xenkvm&num=2)

Regarding VirtualBox4 that has shown a notoriously bad result  in the test you refer to (perhaps an old version? VB4.3 is out now), if you intend to run VB and find VB4 to be sluggish, you could also try the earlier VirtualBox 3.2.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 29, 2013, 09:26:29 pm
My advice on the subject of benchmarks is to only believe your own. The reason I carried out mine was because I didn't believe all the ones that showed a negligible performance penalty. The performance hit from core-to-core migration alone is very significant (bigger than the "industry claims" of performance hit of virtualization).

Some years ago when I was folding I found that just pinning process threads to cores boosted performance by nearly 25% on a Core2 Quad. Now, granted, on a C2Q you get doubly hit when the process migrates between cores that aren't on the same die (C2Q is a 2x2 design) since the other die won't have it's caches primed for that process, but even staying on the same die there is a slow-down.

Now take this a further level of abstraction up where the guest generally has no idea what the physical CPU estate layout might be, and you are making the problem massively worse because the guest process scheduler is running completely blind, while the hypervisor is additionally context switching different VMs vCPUs all over the place to run on overbooked physical hardware. It doesn't take much imagination to see how the performance cannot be anything but poor.

Anyway, this is getting off-topic.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on October 30, 2013, 12:43:38 pm
I'm disposing of some of my modified GeForce cards. If anyone who reads this wants a VGA passthrough capable Nvidia card on the cheap but lacks the confidence to attack it with a soldering iron and/or hex editor, you may be interested in this.

I have:
2x GTS450 -> Q2000
1x GTX470 -> Q5000
1x GTX690 -> Grid K2

PM me if you are interested in any of these and are in the EU (outside the EU the import duty and shipping would make this uneconomical).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on October 30, 2013, 06:05:15 pm
Well, here's an update. In trying to find the resistor(s) that control the third nibble, ijsf (the guy who did the original GTX480 to Tesla hack) and I screwed around with the BIOS, and sure enough, the card was not recognized anymore.

I disconnected the power to the eeprom but that didn't help either. In the end I ended up with hooking up the eeprom to my Raspberry Pi, writing a python script that can read from and write to the eeprom and finally managed to write the original BIOS back. Luckily the card works again, and now I can always reflash the card because I have a breakout-board that I can hook up to my RPi :D

Any chance you could post a detailed explanation of what you did to make an unbricking rig? I have a suspicion that the root cause of the death of my first GTX690 might have been a misflash that corrupted the PLX chip (PCIe bridge) EEPROM. It'd be nice to have a go at resurrecting it.

It's really not that complicated. I have a Gigadevice GD25Q10B SPI-EEPROM on my card and I used the datasheet to figure out what the layout of the pins were. The SPI protocol is really simple as you have six pins that you have to connect: Vcc, Vss, CE# (= chip select), SCLK (=serial clock), MISO (=Master In, Slave Out) and MOSI (=Master Out, Slave In). The WE# and HOLD# pins are connected to Vcc so, you just solder wires onto the EEPROM and connect them to the Raspberry Pi. Then you just use the spidev user space module to sent commands to the EEPROM which are listen in the datasheet. To get it running quickly I used py-spidev so that I could whip up a simple python script that dumps the EEPROM (to check if I can communicate with the chip correctly), and one script that writes the correct ROM to the chip.

One potential problem though: I have a different card that has the Pm25LV512 chip which I couldn't program. It's because it reads/writes data at the falling edge of the clock, whereas the spidev module reads/writes on the rising edge of the clock. This is stated in the datasheet of that chip, and the datasheet of the GD25Q10B that is on the GTX780 states that it reads/writes on the rising edge of the clock. If you have a chip that acts on the falling of the clock you need to use a different linux kernel module that supports this mode (spidev does not) which involves recompiling the Raspbian kernel.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: foxdie on October 31, 2013, 09:12:49 pm
Hi all, just want to chime in here.

Firstly, it's great to see such passionate hacking of Nvidias offerings. There's been a few geekgasms perusing this thread  :-+

Secondly, this thread has grown to become white a whopper and extracting information is becoming quite a challenge. What would be nice is a summary post once in a while like gordans post here (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg316739/#msg316739). That helps people of all experience get a broad overview of progress and those with deeper understanding can delve deeper.

Whats not clear to me at this point is what will and won't work for those of us who want to make daily use of the end result. I personally would like to give guests in ESXi a decent 3D performance bump but I'm not sure how to approach that (what card is seen as the best starting point, what work needs doing to it etc). I realise this thread isn't about making card X work with technology Y but most of us are here for the virtualisation benefits.

I'm not scared to crack out a soldering iron and a multimeter (although I doubt my hands are steady enough to resolder SMD resistors hehe), I'd just like some recommendations on what direction to take :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 01, 2013, 12:48:36 am
Whats not clear to me at this point is what will and won't work for those of us who want to make daily use of the end result. I personally would like to give guests in ESXi a decent 3D performance bump but I'm not sure how to approach that (what card is seen as the best starting point, what work needs doing to it etc). I realise this thread isn't about making card X work with technology Y but most of us are here for the virtualisation benefits.

It comes down to 2 things:
1) Budget
2) Hand steadyness / suitable soldering equipment availability (tiny soldering iron, at least a good magnifying lamp, preferably an electronics microscope

If you are on a tiny budget (<= £50) and only need reasonable performance with direct VGA passthrough up to 1080 resolution, get a GTS450 GDDR5 card and turn it into a Quadro 2000.

As your budget and performance requirements go up, a GTX470 or GTX480 may be more suitable (they make good Quadro 5000 and Quadro 6000 cards respectively). These work not only with direct VGA passthrough, but should also work with ESXi vSGA. There have been reports of people successfully running ESXi vSGA with 6 clients using a single Quadro 6000 card to achieve mostly playable Borderlands at 800x600. A modified GTX480 should be somewhat faster at this than a real Quadro 6000. A modified GTX470 should be about 50% faster than a real Quadro 5000. I use Xen rather than ESXi, but I wouldn't expect anything to notice any difference between one of these modified cards and the real thing as far as GPU acceleration offload is concerned.

If your budget and performance requirements are even higher, you have little choice but to modify a GTX680/GTX690/GTX770 into Quadro K5000 or Grid K2. Either mod works fine, and I have not observed any obvious difference in functionality or stability between modifying to K5000 or K2, both work just fine. For this, however, you will need to at least remove the resistor controlling the 3rd device ID nibble. Replacing an 0402 resistor is harder than removing it, but leaving the resistor off can cause device ID instability. You can compensate for this by soft-modding the available strap bits.

It is perhaps worth noting that my experience with modified Fermi cards has been 100% problem-free (Q2000, Q5000 and Q6000 mods have all always worked flawlessly).

Kepler modding has been somewhat unpredictable for me. I had a GTX690 card that wouldn't cooperate for some reason, and another that works fine, only I cannot use it due to a motherboard bug (avoid anything with NF200 PCIe bridges if you want to virtualize). I have a GTX680 card that is quite thoroughly modified into a K5000, but it is also not trouble free (read back on the thread about the bizzare dual-link DVI issue - single link DVI modes work fine, dual link modes don't, and neither does DP - but all this is only a problem with running virtualized; on bare metal the card works absolutely fine on all ports and in all modes). Nobody else reported similar issues (and in fact, many people reported a resounding success with modified Keplers), so this is probably just my talent for finding bugs in everything showing up.

So if you can live with the performance, and you want to put in the least possible amount of effort on a relatively tight budget, GTX470 or GTX480 is probably the best price/performance/ease compromise.

Does that answer your question?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: foxdie on November 01, 2013, 12:30:57 pm
Hi gordan, you're a legend for getting back to me so quick.

Budget isn't an issue (within reason), I'm looking to set up a virtualised gaming rig much like yourself. There'll be a Windows 7 (64-bit ent) VM that'll need as much 3D gaming grunt as possible and a couple of other VMs that need some acceleration to be responsive and usable (possibly 3D too). Naturally I want to go for as much power as possible, I plan to use the machine for current and next gen gaming.

My system will be a SuperMicro X9SRA (http://www.supermicro.co.uk/products/motherboard/Xeon/C600/X9SRA.cfm) motherboard with a Xeon E5-2620 v2 (http://ark.intel.com/products/75789/) and 32GB Reg ECC RAM.

I thought about converting a GTX 480 into a Q6000 as they're fairly cheap to pick up used on ebay, however I'm not sure which brand would follow reference design to make the modification less of a headache.

What wasn't made clear earlier was that a Q6000 clone (GTX 470 / 480) can be used as vSGA with 6 guests, that's a great piece of information for those looking to accelerate 3D on multiple VMs on a budget  :-+

What would also be handy to know, and again I assume this is probably beyond scope of this thread, would be if multiple Q6000 clones can be added to a system, one passthrough'd to one VM directly for as much acceleration as possible, and a second Q6000 clone distributing as vSGA between remaining VMs? GTX 480s can be picked up second hand for around £100 each on eBay so they'd make a great price vs benefit starting point.

The GTX 680 I was secretly hoping you would have found a solution by now, but as with all things of this nature, it wouldn't be too easy or everyone would be doing this to their cards :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 01, 2013, 01:35:56 pm
Budget isn't an issue (within reason), I'm looking to set up a virtualised gaming rig much like yourself. There'll be a Windows 7 (64-bit ent) VM that'll need as much 3D gaming grunt as possible and a couple of other VMs that need some acceleration to be responsive and usable (possibly 3D too). Naturally I want to go for as much power as possible, I plan to use the machine for current and next gen gaming.

Depends on your intended resolution. If all you want is 1080 resolution capability, GTX480/Q6000 will deliver. Granted, my eyes don't seem to see things the way most people's do (more pixels, not as many frames per second, or so it seems), but I happily completed Crysis+Warhead on a T221 3840x2400 in a VM on my Quadrified GTX480. On the same physical host, my wife was finding Borderlands 2 unplayably bad at 2560x1600 (so I temporarily put a HD7970 in her VM (and yes, it crashed the host when you try to reboot the VM - I'm hoping the ATI pollution is going to be temporary) and kept the 480 for my VM).

If you need more than 2 VMs with 3D acceleration on that motherboard, you are going to have to use something like a GTX690, given it only has 2 PCIe x16 slots.

I thought about converting a GTX 480 into a Q6000 as they're fairly cheap to pick up used on ebay, however I'm not sure which brand would follow reference design to make the modification less of a headache.

They all do / it doesn't matter.

What wasn't made clear earlier was that a Q6000 clone (GTX 470 / 480) can be used as vSGA with 6 guests, that's a great piece of information for those looking to accelerate 3D on multiple VMs on a budget  :-+

Quick googling some of the terms in the article from memoring yields this:
http://www.simonlong.co.uk/blog/2012/10/25/vmware-view-3d-gaming-experience/ (http://www.simonlong.co.uk/blog/2012/10/25/vmware-view-3d-gaming-experience/)

Note that this is not exactly high-performance gaming - it may be 6 clients, but they are 800x600@25fps.

I should also point out that I don't use ESXi for this stuff, so you might want to start on the cheap with a modified 470 or 480 (performance difference between them is pretty negligible, and a 470 will likely outperform a Q6000 as long as you don't run out of VRAM) as a proof of concept before you commit to a more expensive piece of kit like a 680/770 or a 690. I should perhaps also point out (hint:nudge) that there is currently a quadrified GTX470 on eBay at the moment. ;)

What would also be handy to know, and again I assume this is probably beyond scope of this thread, would be if multiple Q6000 clones can be added to a system, one passthrough'd to one VM directly for as much acceleration as possible, and a second Q6000 clone distributing as vSGA between remaining VMs? GTX 480s can be picked up second hand for around £100 each on eBay so they'd make a great price vs benefit starting point.

I see no reason why you couldn't use one card for vSGA and one for vDGA. Just bear in mind that you won't be getting video directly out of your vSGA cards - those VMs will feed you a compressed video stream of the desktop that you will have to decode on another machine. The problem with this being that you need another machine as a terminal (unless you use your vDGA machine as a terminal for it, which would work I suppose, but it gets a bit recursive).

But as I said before - I am not an ESXi user, and while I would expect their solution to be a little more polished than Xen, I suspect you will also have a lot less community support to fall back on if it doesn't work out of the box. Also, last time I checked vDGA was treated as an experimental feature.

The GTX 680 I was secretly hoping you would have found a solution by now, but as with all things of this nature, it wouldn't be too easy or everyone would be doing this to their cards :)

It could be that I just have a weird GTX680, or there is some OS/environmental issue that is manifesting as the problem I mentioned. One of the guys on the Xen list modified a completely standard GTX680, and his works fine in all modes, so my DVI issues are most likely just a bizzare quirk of my system configuration.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: foxdie on November 01, 2013, 02:02:59 pm
Depends on your intended resolution. If all you want is 1080 resolution capability, GTX480/Q6000 will deliver. Granted, my eyes don't seem to see things the way most people's do (more pixels, not as many frames per second, or so it seems), but I happily completed Crysis+Warhead on a T221 3840x2400 in a VM on my Quadrified GTX480. On the same physical host, my wife was finding Borderlands 2 unplayably bad at 2560x1600 (so I temporarily put a HD7970 in her VM (and yes, it crashed the host when you try to reboot the VM - I'm hoping the ATI pollution is going to be temporary) and kept the 480 for my VM).

If you need more than 2 VMs with 3D acceleration on that motherboard, you are going to have to use something like a GTX690, given it only has 2 PCIe x16 slots.

I'm admittedly not an UHD junkie, 1080p would meet my needs (and avoid having to buy a new monitor). Framerate is however a potential issue, I'd like to be able to play Crysis 3 at 1080p60 with no slowdown.

I should perhaps also point out (hint:nudge) that there is currently a quadrified GTX470 on eBay at the moment. ;)

That's funny, I can't find it, think someone might have snapped it up O0

I see no reason why you couldn't use one card for vSGA and one for vDGA. Just bear in mind that you won't be getting video directly out of your vSGA cards - those VMs will feed you a compressed video stream of the desktop that you will have to decode on another machine. The problem with this being that you need another machine as a terminal (unless you use your vDGA machine as a terminal for it, which would work I suppose, but it gets a bit recursive).

Recursion can be fun! That's probably what I'd do anyway ;)

I have an Asus Radeon HD 6450 bouncing around on my desk anyway so I'll first try passing that through as vDGA and use the GTX 470 as vSGA.

But as I said before - I am not an ESXi user, and while I would expect their solution to be a little more polished than Xen, I suspect you will also have a lot less community support to fall back on if it doesn't work out of the box. Also, last time I checked vDGA was treated as an experimental feature.

True but someone needs to take the plunge to see if this'll work right? I'm in the same boat with the X9SRA, I haven't found any solid documentation this will work but progress isn't made on repetition ;)

It could be that I just have a weird GTX680, or there is some OS/environmental issue that is manifesting as the problem I mentioned. One of the guys on the Xen list modified a completely standard GTX680, and his works fine in all modes, so my DVI issues are most likely just a bizzare quirk of my system configuration.

If you want, I'm happy to test the card in my new system for you, confirm if its working, then post it back in the same condition it was received in. I'm only up the road (in relative terms given a global community, still 120 miles away :-DD) so RM Special Delivery would be fast.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 01, 2013, 03:08:36 pm
But as I said before - I am not an ESXi user, and while I would expect their solution to be a little more polished than Xen, I suspect you will also have a lot less community support to fall back on if it doesn't work out of the box. Also, last time I checked vDGA was treated as an experimental feature.

True but someone needs to take the plunge to see if this'll work right? I'm in the same boat with the X9SRA, I haven't found any solid documentation this will work but progress isn't made on repetition ;)

That is, indeed, my view as well. If we'd stuck with repetition the fastest way to travel would still involve staring at an ox's backside for excruciatingly prolonged periods of time.

It could be that I just have a weird GTX680, or there is some OS/environmental issue that is manifesting as the problem I mentioned. One of the guys on the Xen list modified a completely standard GTX680, and his works fine in all modes, so my DVI issues are most likely just a bizzare quirk of my system configuration.

If you want, I'm happy to test the card in my new system for you, confirm if its working, then post it back in the same condition it was received in. I'm only up the road (in relative terms given a global community, still 120 miles away :-DD) so RM Special Delivery would be fast.

Interesting thought. Unfortunately, I'm using it at the moment, and, ironically, I'm fresh out of spares I could drop in.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 02, 2013, 12:29:59 pm
Servus,

I changed the marked resistor in the pic from 25k to 40k. Now the pci-id is 1025 instead of 1005 for a Titan. The aim is to get 1020 (K20X). I changed already the resistors near by. But it doesn't changed anything. Somebody any ideas?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 02, 2013, 01:25:47 pm
I changed the marked resistor in the pic from 25k to 40k. Now the pci-id is 1025 instead of 1005 for a Titan. The aim is to get 1020 (K20X). I changed already the resistors near by. But it doesn't changed anything. Somebody any ideas?

Holy crap, you did it!
There is no need to change any further resistors - you can soft-mod the last nibble. See the info on page 41.

/me goes to acquire a Titan.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: foxdie on November 02, 2013, 03:04:45 pm
Yeah I was just thinking he could soft-mod it, great progress :) Wonder what the potential of the titan is? Extreme virtualised gaming? :D

(Might treat myself for xmas lol)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 02, 2013, 04:34:13 pm
Haha, I was JUST going to post that I managed to convert my GTX780 to a Tesla K20 and I saw that johndoe beat me to it :-DD I know I should have posted here before I wrote an article on my site about how I figured it out.

The first 5 bits of the device ID are softstrapped so just change the appropriate bits and reflash your card.

But I can also tell you that modding the GTX TITAN BIOS with the right straps will not turn it into a working Tesla K20. For example, you cannot disable the TCC mode, and you cannot run any CUDA code. :( What you CAN do however is go to TechPowerup and download the only K20 BIOS they have, and change the soft straps on that BIOS ;)

Btw, it would be awesome if you run some CUDA samples to see if everything runs fine (and report back of course ;) ).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 02, 2013, 05:08:38 pm
Ok, can someone explain me in a little bit more detail how to work with the softstraps, I have some sim software to test cuda.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 02, 2013, 05:53:35 pm
Ok, this is untested and I'm doing this from the top of my head, so please check how this works!

First download the K20c BIOS from techpowerup.com (or if you have a Tesla K20X BIOS somewhere, use that). Open up this file with a hex editor (for example HxD). You will see something like this:

00000000: 4E 56 47 49 92 01 10 00 60 04 00 00 DE 10 82 09
00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF FF FF 7F
00000020: 00 00 00 80 0E 10 10 82 EF FF FE 73 00 00 00 8C
00000030: 36 10 10 02 FF FF FF FF 00 00 00 00 02 87 08 02

Now you have to change the values at 0x1C (mine contains FFFFFF7F as you can see above) to FFC3FF7F, and make sure the values at 0x20 are 00000080.
Make sure you do this correctly! If you make a mistake then you could brick your card. It should be something like this but beware, I DO NOT TAKE ANY RESPONSIBILITY IF YOU BRICK YOUR CARD.

00000000: 4E 56 47 49 92 01 10 00 60 04 00 00 DE 10 82 09
00000010: 08 E2 00 00 00 06 00 00 02 10 10 82 FF C3 FF 7F
00000020: 00 00 00 80 0E 10 10 82 EF FF FE 73 00 00 00 8C
00000030: 36 10 10 02 FF FF FF FF 00 00 00 00 02 87 08 02
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 02, 2013, 08:59:06 pm
Thanks for the diagram for figuring out the hard-straps. It more or less provides a template for figuring out the hard-straps in the future.

It is both interesting and concerning that you had to flash a Tesla BIOS onto the card to make it work.

Please keep us posted on the progress of figuring out the VRAM size.

My Titan should be arriving on Tuesday, so with a bit of luck I'll have a pseudo-K6000 by the end of next week. The use case for a Titan is 2-fold:
1) Extreme virtualized gaming, as foxdie says
2) Number crunching that required double precision floating point - IIRC Titan, unlike the GTX780, doesn't have crippled DP performance.

Now that I mention that - can you check the before/after DP performance on the Teslified 780? Is there an improvement?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 02, 2013, 09:20:44 pm
No problem, sharing is caring after all :)

I cannot test the DP performance right now as I have taken the card apart again. When it's put together I'll test it although I'm pretty sure that it will stay the same.

Could you please convert your Titan into a Tesla and check if CUDA samples run correctly? Because I found out that my card does not run all CUDA programs correctly, and I assume that the incorrect VRAM size is the culprit. It is weird as I have a Tesla K20c BIOS, and the official Tesla K20 has 5GB of VRAM, not 6GB. I can also allocate almost 4GB of memory in CUDA even though my card has 3GB.

Since the Titan is the same a Tesla K20X, I would like to buy a Titan if I know that the 'Teslalized' Titan runs CUDA apps correctly.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 12:36:45 am
Haha, I was JUST going to post that I managed to convert my GTX780 to a Tesla K20 and I saw that johndoe beat me to it :-DD I know I should have posted here before I wrote an article on my site about how I figured it out.

The first 5 bits of the device ID are softstrapped so just change the appropriate bits and reflash your card.

But I can also tell you that modding the GTX TITAN BIOS with the right straps will not turn it into a working Tesla K20. For example, you cannot disable the TCC mode, and you cannot run any CUDA code. :( What you CAN do however is go to TechPowerup and download the only K20 BIOS they have, and change the soft straps on that BIOS ;)

Btw, it would be awesome if you run some CUDA samples to see if everything runs fine (and report back of course ;) ).

Ok, first I changed everything according to your hints in the TITAN bios. You are right: nvflash recognize now K20X but it is not possible to use the card as Tesla card. I just wanted to try  ;). Honestly, I don't want to load the K20c bios. Anybody an idea where to get a K20x bios?
------------
Maybe I found something...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 01:08:40 am
As far as I know, you can simply use the K20c BIOS with the soft straps set correctly, and it should work fine. I've done it as well and it works (kind of, I just need to modify the BIOS to report 3GB of VRAM instead of 6GB like you have).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 01:09:20 am
I found an update file for linux for k20xm (1021). The bios is included but quite small, 128k, but i think try and error. I saved the extracted part and read in with bios tweaker. Checksum ok, parameters ok and bios is read as k20xm, as it should.

how i have to edit the softstraps to get 1021 instead of 1020?
-----------
You mean, I use the bios of k20c but it looks like k20x, right? But bios of k20c is smaller than TITAN bios, problem?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 01:31:06 am
Yes, if you use the K20c BIOS but change the soft straps like you did for your Titan BIOS, it should get recognized as a K20X.
And it's not a problem if the BIOS is smaller. However, I don't know about the other BIOS you found.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 01:44:02 am
Ok, i updated the bios, but still not possible to install tesla driver, also manually (driver is not for this windows version). strange...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 03, 2013, 01:48:23 am
you guys notice the GTX780 is a GK110 chip? !!?!

GeForce GTX 760 192-bit [4]    Unknown    GK104    28    PCIe 3.0 x16    15363072    1152:96:24    823    888    5808    19.8    79    134    GDDR5    192    11    4.4    1.1    1896    79    14.6    130    OEM
GeForce GTX 760 [5]    June 25, 2013    GK104-225-A2    28    PCIe 3.0 x16    20484096    1152:96:32    980    1033    6008    31.4    94.1    192    GDDR5    256    11    4.4    1.1    2258    94.1    13.3    170    $249
GeForce GTX 760 Ti [6]    Unknown    GK104    28    PCIe 3.0 x16    2048    1344:112:32    915    980    6008    29.3    103    192    GDDR5    256    11    4.4    1.1    2460    103    14.5    170    OEM
GeForce GTX 770 [7]    May 30, 2013    GK104    28    PCIe 3.0 x16    20484096   1536:128:32    1046    1085    7008    33.5    134    224    GDDR5    256    11    4.4    1.1    3213    134    14.0    230    $399
GeForce GTX 780 [8]    May 23, 2013    GK110    28    PCIe 3.0 x16    3072    2304:192:48    863    900    6008    41.4    166    288    GDDR5    384    11    4.4    1.1    3977    166    15.9    250    $649
GeForce GTX 780 Ti    Nov 7th, 2013    GK110    28    PCIe 3.0 x16    3072    2880:240:48    876    928    7000    42.048    210.24    336    GDDR5    384    11    4.4    1.1    5045.76    Unknown    Unknown    Unknown    $699 (TBC)
GeForce GTX Titan    February 19, 2013    GK110    28    PCIe 3.0 x16    6144    2688:224:48    837    876    6008    40.2    188    288    GDDR5    384    11    4.4    1.1    4500    1500    18.0    250    $999
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 01:49:58 am
And?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 01:51:03 am
Ok, i updated the bios, but still not possible to install tesla driver, also manually (driver is not for this windows version). strange...

Is it the only card in your computer? It was in mine and then the Tesla did not work. When I put in another NVIDIA graphics card as the primary card, then I could install the driver and use the card.

you guys notice the GTX780 is a GK110 chip? !!?!

Did you notice that I modified my GTX780 into a Tesla? :P That wouldn't be possible if it was not a GK110 chip ;)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 01:52:36 am
I'm working with a second card, titan is not connected to screen. very strange...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 01:56:02 am
But is your primary card an NVIDIA card? It does not work if it is an AMD card.

Very strange indeed. You used the K20c BIOS right? For me it works just fine. What does your OS say about the card?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 01:57:24 am
primary card is also nvidia gt9500. Windows reports this card as 3d-game controller.
---------
Did you used the automatic driver installer or manually?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 02:02:39 am
If you look at the photos on my site (http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/ (http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/)) you will see that nvflash recognizes my card as a Tesla K20(X), but also the last two numbers are non-zero. nvflash reports four numbers (0x10DE, 0x1020, 0x10DE, 0x104B), and when I was researching the values of the resistors, I once got (0x10DE, 0x1020, 0x0000, 0x0000).

You could check if the last two numbers are correct. I don't know what else could be wrong.

I just downloaded the newest Geforce driver and it installed it automatically for me. Took a couple of minutes after rebooting for the card to be recognized (because Windows was installing the driver).

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 02:06:18 am
strange, i have different sub id: <0> Tesla K20X           (10DE,1020,10DE,0982)
did you changed something more?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 02:57:33 am
I changed now also sub-id and bios to k20xm but it doesn't changed anything. Nvflash recognize card as k20x but windows as 3d-video controller (yellow marked) and it is impossible to install manually or automatically any tesla driver. If somebody has an idea you are welcome!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 03, 2013, 07:03:45 am
Anyone have bios link to K10 or Grid K2 (or k1) please.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 03, 2013, 09:01:05 am
Interesting. So GTX780Ti is overdue to hit the shelves. Full shader count (like the K6000), but half the VRAM of the Titan at 3GB, and 1/3 cheaper than the Titan. I wonder if DP will be crippled.

Seems we need to figure out where in the BIOS the VRAM size is stored and in what format. I'm going to be quite displeased if the Quadrified Titan doesn't work for VGA passthrough without a K6000 BIOS flashed onto it, and that will only work with the VRAM size adjustment.

Has anybody got a copy of a K20X BIOS handy? That should "just work" on a Titan with the strap mod.

Anyone have bios link to K10 or Grid K2 (or k1) please.

Why do you need it? GTX680 works just fine as a GK2 with it's original BIOS. I'd be surprised if GT635 didn't also work as a GK1 with it's original BIOS.

The BIOS requirements we are talking about here seems to be a new thing on GK110 based cards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 09:29:20 am
Interesting. So GTX780Ti is overdue to hit the shelves. Full shader count (like the K6000), but half the VRAM of the Titan at 3GB, and 1/3 cheaper than the Titan. I wonder if DP will be crippled.

Seems we need to figure out where in the BIOS the VRAM size is stored and in what format. I'm going to be quite displeased if the Quadrified Titan doesn't work for VGA passthrough without a K6000 BIOS flashed onto it, and that will only work with the VRAM size adjustment.

Has anybody got a copy of a K20X BIOS handy? That should "just work" on a Titan with the strap mod.

Anyone have bios link to K10 or Grid K2 (or k1) please.

Why do you need it? GTX680 works just fine as a GK2 with it's original BIOS. I'd be surprised if GT635 didn't also work as a GK1 with it's original BIOS.

The BIOS requirements we are talking about here seems to be a new thing on GK110 based cards.

I have a bios for k20xm and i modified the tesla driver. I was now able to install driver. I will test and post results.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 03, 2013, 09:55:30 am
What is a K20XM? I cannot find any official reference to it. Do you have a download link for that BIOS?

And what exactly do you mean by "modified the tesla driver"? Modified how and to do what?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 10:14:10 am
K20xm should be the same like k20x from the point of performance. I didn't found any differences. I looked at the inf file of nvidia tesla driver and found that no 1020 id is listed, means no k20x. I changed the predefined 1021 (k20xm) to 1020 and i was able to install driver. But gpuz for example report only 512mb vram. And cuda sim programs still not recognize the card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 03, 2013, 10:25:57 am
That's probably because there is an issue due to the modified driver. Change the strap in the Tesla BIOS to make it 0x1021 for K20xm, then do a clean install of the unmodified driver. That might help.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 10:29:45 am
I will test. How to change straps to 1021?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 11:32:49 am
Interesting. So GTX780Ti is overdue to hit the shelves. Full shader count (like the K6000), but half the VRAM of the Titan at 3GB, and 1/3 cheaper than the Titan. I wonder if DP will be crippled.

I'm sure it will be crippled the same as the GTX780.

The BIOS requirements we are talking about here seems to be a new thing on GK110 based cards.

I'm pretty sure that only because of the modification to Tesla cards (TCC mode code is probably not available in GeForce BIOSes).

What is a K20XM? I cannot find any official reference to it. Do you have a download link for that BIOS?

The "M" versions are passively cooled cards. That's the only difference (maybe also lower clock speeds).

K20xm should be the same like k20x from the point of performance. I didn't found any differences. I looked at the inf file of nvidia tesla driver and found that no 1020 id is listed, means no k20x. I changed the predefined 1021 (k20xm) to 1020 and i was able to install driver. But gpuz for example report only 512mb vram. And cuda sim programs still not recognize the card.

512MB VRAM? Wow, that is strange. I still don't think there is much difference in Tesla BIOSes. If you just get your device ID correct, then it should behave like that card so you probably do not have to use the K20Xm BIOS.

I will test. How to change straps to 1021?

I should be changing the 0x00000080 value at 0x20 to 0x00040080 (with 0x1C still at 0xFFC3FF7F).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 03, 2013, 12:34:07 pm
OT: firepro S7000 S8000 S9000 S10000 V7800P V9000P [v7800p? cheap!] for esxi 5.5!!

Any potential with these models to have shared vgpu *more than 1 user* and cross-flash/hack AMD?

also special edition 780 will have 6gb and 12GB. which maybe gets rid of whole memory issue problems stored on rom
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 03, 2013, 01:45:25 pm
I wouldn't take rumours for granted - don't expect a GTX780Ti with more than 3GB of RAM until you actually see it. There are also still a number of questions about the 780Ti that remain to be answered, not least of which is whether the DP performance is crippled unlike on the Titan.

BIOS cross-flashing on ATI cards was doable around the HD4xxx era, don't know what the deal with it is now. But if the VGA passthrough experience with ATI is anything to go by, I wouldn't begin the experiment with much optimism.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 07:09:22 pm
@johndoe: I just read that it was GPU-Z that reported 512MB  |O GPU-Z cannot be trusted. It says that my GTX780 has 48 cores (my primary card is a GT610 for testing purposes, and THAT card has 48 cores).

Use the nvidia-smi tool to read out the real values. And of course you should also run the deviceQuery CUDA sample and report its output.
After some more research, I figured out some things. The amount of VRAM is determined by a couple of things: the bus-width, the number of RAM chips, and the size of each RAM chip. The GTX780 has 12 chips under the cooler, and zero on the back. A Titan has 12 chips under the cooler, and 12 on the back (please confirm this), and the Tesla BIOS is configured to select 24 chips, whereas I have 12. That's why it doesn't work and that why it should probably work for you.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 03, 2013, 07:33:49 pm
@johndoe: I just read that it was GPU-Z that reported 512MB  |O GPU-Z cannot be trusted. It says that my GTX780 has 48 cores (my primary card is a GT610 for testing purposes, and THAT card has 48 cores).

I have to say I have never seen GPU-Z get it wrong before. There is a drop-down box where you select which card you want GPU-Z to report on.
Typically GPU-Z gets it badly wrong only when the driver is force-installed and doesn't initialize properly.

Use the nvidia-smi tool to read out the real values. And of course you should also run the deviceQuery CUDA sample and report its output.
After some more research, I figured out some things. The amount of VRAM is determined by a couple of things: the bus-width, the number of RAM chips, and the size of each RAM chip. The GTX780 has 12 chips under the cooler, and zero on the back. A Titan has 12 chips under the cooler, and 12 on the back (please confirm this), and the Tesla BIOS is configured to select 24 chips, whereas I have 12. That's why it doesn't work and that why it should probably work for you.

Interesting observation. Does that help gain some insight into how the memory size is encoded in the BIOS?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 08:04:59 pm
So, i used now bios of k20c and titan, both with id of k20x, modified the driver because all k20 cards are set to the same driver section. gpu-z is maybe. I added the id of k20x. The results of devicequery.exe with titan bios are in the picture. Results of cuda-z are also added. Nevertheless, the sim software does not recognize the card. Last thing I will do is to use k20xm id with my k20xm bios.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 09:55:20 pm
It will not work if you use a modified Titan BIOS, so you will have to use a Tesla BIOS. If your primary card is the GT9500 and the Titan is the secondary card, then it should work. I also don't see why you need to add the K20X device ID to the driver installer. Are you using an older driver? Just use the newest GeForce driver.

The only difference I can see is that you replaced the 25K resistor with a 40K resistor. I did not remove the 25k resistor, but I added a 33K resistor between SCLK and Vcc on the EEPROM. My card does work (except for memory issues), so that is the only thing that I can think of. Maybe your solution changed some other straps without you knowing it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 03, 2013, 10:28:59 pm
Ok, i understood now. Maybe you are right and I changed add. straps. In your case, you only added a 33k res between vcc and sclk without changing anything else? And you took normal Geforce driver instead of Tesla driver from nvidia? I can only try tomorrow with resistors but will report. What you mean with secondary card, not connected to screen? it is not connected.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 03, 2013, 11:21:23 pm
Yes, the only change is the 33K resistor between SCLK and Vcc.

With secondary card I mean that your GT9500 is in the first PCI express slot (primary) and your Titan is in the second PCI express slot (secondary). That is crucial, because else it will not work (at least it didn't work for me).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 03, 2013, 11:53:24 pm
GeForce driver running a Tesla? Really? That's not supposed to work because the GeForce driver .inf doesn't contain any Quadro/Tesla/Grid device IDs. Unless this is some kind of a unified pre-release driver.

I thought we already established there is no need to replace the nibble 3 resistor - you can just leave it off, and fix the potential slight flapping issue by setting the 5th bit in the soft-strap appropriately.

It is normal that with a Tesla BIOS the machine won't POST on that card - Teslas don't work as standard VGA adapters, they normally show up as 3D adapters. Having said that, on the 690, the primary GPU shows up as VGA, the secondary as 3D, and that posts on ports attached to either, so the chances are that the Tesla BIOS just disables all the video outputs (since Tesla cards don't have any). I imaging flashing a modified Grid BIOS to a GTX680/770/690 would also produce similar results.

Having said that, I seem to recall I found that the device type (i.e. VGA or 3D) is set by a bit in the secondary strap - but I don't know for sure where the secondary strap is in the UEFI setup (several possible candidates IIRC) or whether the one on the main BIOS payload is the effective one. But if you can find it, you could potentially make the Tesla BIOS work with normal VGA enabled, but that would be a bit of a bizzare use-case (going headless after booting).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 04, 2013, 12:10:12 am
GeForce driver running a Tesla? Really? That's not supposed to work because the GeForce driver .inf doesn't contain any Quadro/Tesla/Grid device IDs. Unless this is some kind of a unified pre-release driver.

I thought we already established there is no need to replace the nibble 3 resistor - you can just leave it off, and fix the potential slight flapping issue by setting the 5th bit in the soft-strap appropriately.

It is normal that with a Tesla BIOS the machine won't POST on that card - Teslas don't work as standard VGA adapters, they normally show up as 3D adapters. Having said that, on the 690, the primary GPU shows up as VGA, the secondary as 3D, and that posts on ports attached to either, so the chances are that the Tesla BIOS just disables all the video outputs (since Tesla cards don't have any). I imaging flashing a modified Grid BIOS to a GTX680/770/690 would also produce similar results.

Having said that, I seem to recall I found that the device type (i.e. VGA or 3D) is set by a bit in the secondary strap - but I don't know for sure where the secondary strap is in the UEFI setup (several possible candidates IIRC) or whether the one on the main BIOS payload is the effective one. But if you can find it, you could potentially make the Tesla BIOS work with normal VGA enabled, but that would be a bit of a bizzare use-case (going headless after booting).

How do you want to change the device ID from 0x1004/0x1005 to 0x1020 when you can only go as high as 0x101F with just the soft straps?

Yes you can use the GeForce driver with Tesla cards. At work we have Teslas and we never installed Tesla drivers, so I don't know why it wouldn't work. We use the Tesla C2050 which has two DVI outputs, so when you use the Tesla with the standard WDDM driver, it is basically a slower GeForce card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 04, 2013, 08:33:05 am
How do you want to change the device ID from 0x1004/0x1005 to 0x1020 when you can only go as high as 0x101F with just the soft straps?

Perhaps I wasn't clear enough, apologies. I wasn't suggesting a purely soft-mod. I was saying that if you remove the resistor and don't replace it, the value of the nibble goes to the top of it's settable range, but there is often an instability in the 5th bit. For example, on a GTX680, if you remove it, it will go to A or B, and often flip between the two when you reboot. You can compensate for this by soft-strapping the 5th bit high (to make it B) or low (to make it A). Since removing an 0402 is slightly easier than replacing it, it makes for a smaller, easier to apply hard-mod, and the rest can be soft-modded.

Yes you can use the GeForce driver with Tesla cards. At work we have Teslas and we never installed Tesla drivers, so I don't know why it wouldn't work. We use the Tesla C2050 which has two DVI outputs, so when you use the Tesla with the standard WDDM driver, it is basically a slower GeForce card.

That surprises me - I didn't think there was that overlap in the Windows drivers. I hadn't expected the device IDs for any Tesla/Quadro/Grid cards to be listed in the .inf. Certainly when you go to the Nvidia site and select that you want a driver for the Tesla, it will point you at the Tesla/Quadro/Grid download rather than the GeForce one. But hey, if it works for you... :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 04, 2013, 10:07:35 am
How do you want to change the device ID from 0x1004/0x1005 to 0x1020 when you can only go as high as 0x101F with just the soft straps?

Perhaps I wasn't clear enough, apologies. I wasn't suggesting a purely soft-mod. I was saying that if you remove the resistor and don't replace it, the value of the nibble goes to the top of it's settable range, but there is often an instability in the 5th bit. For example, on a GTX680, if you remove it, it will go to A or B, and often flip between the two when you reboot. You can compensate for this by soft-strapping the 5th bit high (to make it B) or low (to make it A). Since removing an 0402 is slightly easier than replacing it, it makes for a smaller, easier to apply hard-mod, and the rest can be soft-modded.

Ah, that's what you meant. Now I understand. Still, I don't know if that would work in this case. It's true that removing a 0402 resistor is easier than soldering it (good luck with that :P), but my solution is non-destructive. I can always remove the 33K resistor (1206 btw) and the card will be a GTX780 again, whereas adding the 25K resistor back on the board would be harder :)
There is also another difference. The 25K resistor is a pull-down resistor, and I added a pull-up resistor. The lines that go to the GPU most likely have an ADC that measures the voltage and based on that it sets certain straps. I had also removed the 28.5K resistor and let me tell you, that one had to be precise! It will not boot with a value of 28K or 29K :(

Yes you can use the GeForce driver with Tesla cards. At work we have Teslas and we never installed Tesla drivers, so I don't know why it wouldn't work. We use the Tesla C2050 which has two DVI outputs, so when you use the Tesla with the standard WDDM driver, it is basically a slower GeForce card.

That surprises me - I didn't think there was that overlap in the Windows drivers. I hadn't expected the device IDs for any Tesla/Quadro/Grid cards to be listed in the .inf. Certainly when you go to the Nvidia site and select that you want a driver for the Tesla, it will point you at the Tesla/Quadro/Grid download rather than the GeForce one. But hey, if it works for you... :)

I guess the only difference between the drivers is that the Tesla drivers do not have the device IDs of the GeForce cards in the inf file. Haven't checked it though.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 04, 2013, 12:21:40 pm
what I was saying. the K10 tesla is the quadro grid K2 - features like software-ecc and vgx support on both. Just strap them and go.

finding the kepler that is closest to the K10/grid k2 should not be that hard since they are all the same core chip with a tweak to the soft straps .

That crazy Quadroplex Quadro 6000 was renamed to be the #2 card. Strapped it back to #1 position and all was good.

Now that optix 3 supports regular nvidia cards (OSX premier adobe) the need for tweaked geforce cards  may change a lot soon. The bet I'm going for is finding the cheaper Quadro/Tesla to make into the better (quadro/tesla). The GK104 has many many choices to work with. GK107 too.

I'm hunting VGX since it is better than API-intercept. I think I agree with Gordan. VGX is more like "VT-d" for video cards, alone it won't do squat but it will work with nvidia's VGPU API to accelerate much faster than pure binary translation mode (API intercept)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 04, 2013, 12:48:57 pm
Ah, that's what you meant. Now I understand. Still, I don't know if that would work in this case. It's true that removing a 0402 resistor is easier than soldering it (good luck with that :P), but my solution is non-destructive. I can always remove the 33K resistor (1206 btw) and the card will be a GTX780 again, whereas adding the 25K resistor back on the board would be harder :)

Can you post a photo of your mod showing exactly where you put the 33K resistor?

And why do you think removing the 3rd nibble resistor wouldn't work in this case? It works on the GTX680 and GTX690 I have. You mean it might upset the voltage somewhere else and cause unrelated straps to end up with wrong values? Surely adding a pull-down resistor in addition to the pull-up would run the same risk of doing that.

Note: I'm not disputing that dealing with a 1206 is far preferable than dealing with an 0402, especially without specialist tools. :)

There is also another difference. The 25K resistor is a pull-down resistor, and I added a pull-up resistor. The lines that go to the GPU most likely have an ADC that measures the voltage and based on that it sets certain straps. I had also removed the 28.5K resistor and let me tell you, that one had to be precise! It will not boot with a value of 28K or 29K :(

Which 28.5K resistor? What was it for?

what I was saying. the K10 tesla is the quadro grid K2 - features like software-ecc and vgx support on both. Just strap them and go.

...

I'm hunting VGX since it is better than API-intercept. I think I agree with Gordan. VGX is more like "VT-d" for video cards, alone it won't do squat but it will work with nvidia's VGPU API to accelerate much faster than pure binary translation mode (API intercept)

I'm not sure I follow what this would be for.
1) Why do you need ECC for graphics rendering and video stream encoding?
2) I'm pretty sure VGX requires no special features at all. vDGA is just straight PCI passthrough a-la Xen. vSGA just makes the GPU act as a co-processor. I'm going to try putting together an ESXi test bed machine with a spare motherboard I have which I _think_ has a non-broken IOMMU with the required features for ESXi PCI passthrough, and try and get my Gridified 690 working on it. If that works, it would prove you need no special features on the GPU itself to make it work.

It will also be good to hear back from foxdie when he has had a chance to test the Quadrified GTX470 with vSGA. If that works, the chances are that other modified cards will, too.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 04, 2013, 01:10:16 pm
Ah, that's what you meant. Now I understand. Still, I don't know if that would work in this case. It's true that removing a 0402 resistor is easier than soldering it (good luck with that :P), but my solution is non-destructive. I can always remove the 33K resistor (1206 btw) and the card will be a GTX780 again, whereas adding the 25K resistor back on the board would be harder :)

Can you post a photo of your mod showing exactly where you put the 33K resistor?

And why do you think removing the 3rd nibble resistor wouldn't work in this case? It works on the GTX680 and GTX690 I have. You mean it might upset the voltage somewhere else and cause unrelated straps to end up with wrong values? Surely adding a pull-down resistor in addition to the pull-up would run the same risk of doing that.

Note: I'm not disputing that dealing with a 1206 is far preferable than dealing with an 0402, especially without specialist tools. :)

I have the card in my computer now with the cooler on it. When and if I take it apart again, I'll take a photo. But it's really just two very thin wires soldered on the Vcc and the SCLK pins of the EEPROM going to a 1206 33K resistor.

The card has a pull-down resistor by default, and I added a pull-up resistor. If the other end of the SCLK line has an ADC, then having no resistor on it will cause a floating pin which is not something you want with analog electronics. A pull-down, pull-up, or both will make everything more stable electric wise (even though you override that value with the soft-straps).

There is also another difference. The 25K resistor is a pull-down resistor, and I added a pull-up resistor. The lines that go to the GPU most likely have an ADC that measures the voltage and based on that it sets certain straps. I had also removed the 28.5K resistor and let me tell you, that one had to be precise! It will not boot with a value of 28K or 29K :(

Which 28.5K resistor? What was it for?
It is a pull-down resistor on the SO pin of the EEPROM. I measured around 2.3M resistance when I removed the 28.5K resistor which is actually a 30K resistor when measured outside the circuit. Because it needs to be exactly that value, I used a high-precision pot because I couldn't put back the 0402 resistor. It is on the schematic on my site and on the photo I posted a couple of pages back.

what I was saying. the K10 tesla is the quadro grid K2 - features like software-ecc and vgx support on both. Just strap them and go.

...

I'm hunting VGX since it is better than API-intercept. I think I agree with Gordan. VGX is more like "VT-d" for video cards, alone it won't do squat but it will work with nvidia's VGPU API to accelerate much faster than pure binary translation mode (API intercept)

I'm not sure I follow what this would be for.
1) Why do you need ECC for graphics rendering and video stream encoding?
2) I'm pretty sure VGX requires no special features at all. vDGA is just straight PCI passthrough a-la Xen. vSGA just makes the GPU act as a co-processor. I'm going to try putting together an ESXi test bed machine with a spare motherboard I have which I _think_ has a non-broken IOMMU with the required features for ESXi PCI passthrough, and try and get my Gridified 690 working on it. If that works, it would prove you need no special features on the GPU itself to make it work.

It will also be good to hear back from foxdie when he has had a chance to test the Quadrified GTX470 with vSGA. If that works, the chances are that other modified cards will, too.

Not to be a jerk, but wouldn't it be wiser if the conversation about virtualized GPUs would take place in a separate topic? I'm interested in it as well, but the last pages of this topic has been nothing but questions about if card X can be modified or about virtualization. You know, just to make it less cluttered. :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 04, 2013, 04:30:49 pm
I have the card in my computer now with the cooler on it. When and if I take it apart again, I'll take a photo. But it's really just two very thin wires soldered on the Vcc and the SCLK pins of the EEPROM going to a 1206 33K resistor.

Oh, I see. So just short the EEPROM Vcc to SCLK with a 33KO resistor?
Won't this potentially upset other things?

The card has a pull-down resistor by default, and I added a pull-up resistor. If the other end of the SCLK line has an ADC, then having no resistor on it will cause a floating pin which is not something you want with analog electronics. A pull-down, pull-up, or both will make everything more stable electric wise (even though you override that value with the soft-straps).

Indeed, that that sounds like a good idea. I might check if the same approach might work on the GTX690, if I manage to steady my hands enough to solder some 24.8K resistors back on.

Not to be a jerk, but wouldn't it be wiser if the conversation about virtualized GPUs would take place in a separate topic? I'm interested in it as well, but the last pages of this topic has been nothing but questions about if card X can be modified or about virtualization. You know, just to make it less cluttered. :)

Agreed - let's keep this purely down to the modding part. There are at least two other threads here for what to use the modded cards for.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 06, 2013, 12:21:56 pm
I have the card in my computer now with the cooler on it. When and if I take it apart again, I'll take a photo. But it's really just two very thin wires soldered on the Vcc and the SCLK pins of the EEPROM going to a 1206 33K resistor.

Oh, I see. So just short the EEPROM Vcc to SCLK with a 33KO resistor?
Won't this potentially upset other things?

Yes, just a resistor between Vcc and SCLK. Seeing as I'm the only one that has a working Tesla (except for memory size issues), I'm guessing that my mod does not change anything else. I would like to try it with a Titan, but that thing is expensive. :( That's why I'm waiting for johndoe to apply my mod see if it works then. Btw, did you get a Titan?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 06, 2013, 02:21:26 pm
I have the card in my computer now with the cooler on it. When and if I take it apart again, I'll take a photo. But it's really just two very thin wires soldered on the Vcc and the SCLK pins of the EEPROM going to a 1206 33K resistor.

Oh, I see. So just short the EEPROM Vcc to SCLK with a 33KO resistor?
Won't this potentially upset other things?

Yes, just a resistor between Vcc and SCLK. Seeing as I'm the only one that has a working Tesla (except for memory size issues), I'm guessing that my mod does not change anything else. I would like to try it with a Titan, but that thing is expensive. :( That's why I'm waiting for johndoe to apply my mod see if it works then. Btw, did you get a Titan?

Yes, the Titan arrived last night. I was going to just remove the 3rd nibble resistor, but I like your approach of adding a resistor between Vcc and SCLK better. Unfortunately, I don't have any 1206 resistors lying around, so I had to order some 33K ones as per your findings. I had some non-SMD ones, but I couldn't use them as they wouldn't fit under the heatsink. They 1206s should arrive tomorrow. Will report back when I have some news.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 06, 2013, 06:01:17 pm
Nice! If it works out I'm getting a Titan too :) Then I can concentrate on 'Teslafying' the GTX780 completely and running CUDA on it without getting unknown errors when calling cudaMemcpy.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 07, 2013, 12:13:33 am
Nice! If it works out I'm getting a Titan too :) Then I can concentrate on 'Teslafying' the GTX780 completely and running CUDA on it without getting unknown errors when calling cudaMemcpy.

I must say I am really curious if you will be able to figure out where and how the memory configuration is stored. If you look a back on this thread on page 38, you will find this post:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021)
containing the hex diff between 1.5GB and 3GB variants of a GTX580 BIOS of the same version number. Unless I made a huge mistake somewhere (or the BIOSes are mislabeled on TPU, I no longer have a GTX580 I could flash with those BIOSes to test), the memory difference should be encoded somewhere in those 10 lines.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 07, 2013, 08:46:30 am
Nice! If it works out I'm getting a Titan too :) Then I can concentrate on 'Teslafying' the GTX780 completely and running CUDA on it without getting unknown errors when calling cudaMemcpy.

I must say I am really curious if you will be able to figure out where and how the memory configuration is stored. If you look a back on this thread on page 38, you will find this post:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021)
containing the hex diff between 1.5GB and 3GB variants of a GTX580 BIOS of the same version number. Unless I made a huge mistake somewhere (or the BIOSes are mislabeled on TPU, I no longer have a GTX580 I could flash with those BIOSes to test), the memory difference should be encoded somewhere in those 10 lines.

Yeah I already checked the diffs of many BIOSes but the actual size of the memory is not stored literally in the BIOS. The type of memory, the configuration, the clocks etc. are stored as a table in the BIOS and according to these variables you can calculate what the memory size is. Another problem is that Tesla BIOSes are not exactly the same as the GeForce BIOSes so its pretty difficult to find the bits that are responsible.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: cloudscapes on November 07, 2013, 04:12:54 pm
Back in the GeForce 2 days, you could turn certain models into a Quadro 2, though in those cases it wasn't just a straight performance unlock. It was a tradeoff. Something like far better CAD and wireframe performance, but games weren't so well optimized anymore. It wasn't something a gamer would do to get a few extra FPS.

I have no idea if this tradeoff is still the case with new cards. It's been quite a while.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: KamranB on November 07, 2013, 04:14:28 pm
Hello,

We faced the exact problem that you have mentioned in the forum and changed the resistors in a way to get a Quadro Graphic card but it did not work for us. By the way I see that there are little differences in our board with the image that you have shared in the forum.
1) In the upper column that you showed there is a 25K resistor that should be removed and a 20K resistor should be mount below that one.Ok and we did it. But in our board the second right side column is different. There is a resistor on top of this row
which is not on your board and reversely there is a resistor under that on your board which is not present in our board.

2) We plugged in the board and there were one long beep and three short beeps on windows startup. And it did not work.

I would be really thankful if you  could help us through this problem.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 07, 2013, 05:04:52 pm
Nice! If it works out I'm getting a Titan too :) Then I can concentrate on 'Teslafying' the GTX780 completely and running CUDA on it without getting unknown errors when calling cudaMemcpy.

I must say I am really curious if you will be able to figure out where and how the memory configuration is stored. If you look a back on this thread on page 38, you will find this post:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021)
containing the hex diff between 1.5GB and 3GB variants of a GTX580 BIOS of the same version number. Unless I made a huge mistake somewhere (or the BIOSes are mislabeled on TPU, I no longer have a GTX580 I could flash with those BIOSes to test), the memory difference should be encoded somewhere in those 10 lines.

Yeah I already checked the diffs of many BIOSes but the actual size of the memory is not stored literally in the BIOS. The type of memory, the configuration, the clocks etc. are stored as a table in the BIOS and according to these variables you can calculate what the memory size is.

Can you elaborate on this? What  byte offset locations in the GeForce BIOS contains the number of chips and their size?

Back in the GeForce 2 days, you could turn certain models into a Quadro 2, though in those cases it wasn't just a straight performance unlock. It was a tradeoff. Something like far better CAD and wireframe performance, but games weren't so well optimized anymore. It wasn't something a gamer would do to get a few extra FPS.

Not really the case any more. On GTS450 -> Quadro 2000 (GF106) there is a marginal improvement in some SPEC components (e.g. Maya gets a 40% boost, the rest remains the same), and I hadn't noticed any gaming degradation. On GF100 (GTX470/GTX480) and later there is no performance difference in the SPEC benchmarks, but there is a memory I/O boost (potentially up to double) from enabling the bidirectional async DMA. From the GTX580 (Q7000) onward there is no difference in any aspect of performance that I have been able to observe. I have a GTX680 running a K5000 BIOS and there is no obvious performance difference in either SPEC or gaming benchmarks.

We faced the exact problem that you have mentioned in the forum and changed the resistors in a way to get a Quadro Graphic card but it did not work for us. By the way I see that there are little differences in our board with the image that you have shared in the forum.
1) In the upper column that you showed there is a 25K resistor that should be removed and a 20K resistor should be mount below that one.Ok and we did it. But in our board the second right side column is different. There is a resistor on top of this row
which is not on your board and reversely there is a resistor under that on your board which is not present in our board.

2) We plugged in the board and there were one long beep and three short beeps on windows startup. And it did not work.

Did you change just the 3rd nibble resistor pair or did you change the 4th one as well? I suggest you put the 4th nibble (lower pair in the photo) back as it was and soft-mod that part instead. For the 3rd nibble resistor, you can either leave it off and stabilize wiith the soft-mod on the lowest bit of the nibble, or put in a resistor. With 25K or more, the 3rd nibble will go to 0xB.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 07, 2013, 05:28:13 pm
Nice! If it works out I'm getting a Titan too :) Then I can concentrate on 'Teslafying' the GTX780 completely and running CUDA on it without getting unknown errors when calling cudaMemcpy.

I must say I am really curious if you will be able to figure out where and how the memory configuration is stored. If you look a back on this thread on page 38, you will find this post:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021)
containing the hex diff between 1.5GB and 3GB variants of a GTX580 BIOS of the same version number. Unless I made a huge mistake somewhere (or the BIOSes are mislabeled on TPU, I no longer have a GTX580 I could flash with those BIOSes to test), the memory difference should be encoded somewhere in those 10 lines.

Yeah I already checked the diffs of many BIOSes but the actual size of the memory is not stored literally in the BIOS. The type of memory, the configuration, the clocks etc. are stored as a table in the BIOS and according to these variables you can calculate what the memory size is.

Can you elaborate on this? What  byte offset locations in the GeForce BIOS contains the number of chips and their size?

I don't know exactly where the bits are but I'm in the process of going through the nouveau source that hints that the memory size can be determined by reading a GPU hardware register. There are references to tables in the ROM that contain timings and memory type, but I haven't figured out the location yet.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ixfd64 on November 07, 2013, 09:36:39 pm
The GTX 780 Ti has been released: http://www.tomshardware.com/reviews/geforce-gtx-780-ti-review-benchmarks,3663.html (http://www.tomshardware.com/reviews/geforce-gtx-780-ti-review-benchmarks,3663.html)

It's interesting to note that the double precision GFLOPS has been artificially limited to 1/24 that of single precision. I wonder if this is something that can be "adjusted."
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 07, 2013, 10:59:19 pm
I thought the eeprom had the memory as the docs stated. It is probably a combination of the layout of chips, and the defined size and speed/voltage rating.

My quadro 6000 with DUAL DVI was fine with geforce drivers too but it was missing something the GTX470 had.

Funny thing is how the geforce overclockers are running the same kepler at twice the voltage (geforce). If you let the FP run at full speed, that would cook the cards! (literally the quadro 6000 runs at half the voltage across the board as many overclockers are pushing the GTX475/480). Insane!

Note: BAR restriction for VGX mode imperative. only a few server mobo's have this option to keep the IOMMU mapping <4M
note: ECC mode will disable VGX mode!!
note: avoid change of MSI-X or VGX will fail.
note: RDP will disable VGX mode (citrix).

Insane number of requirements to get VGX to actually work, instead of "looks like it is working" or "was working now is not!". buggy as heck!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 07, 2013, 11:53:05 pm
Nice! If it works out I'm getting a Titan too :) Then I can concentrate on 'Teslafying' the GTX780 completely and running CUDA on it without getting unknown errors when calling cudaMemcpy.

I must say I am really curious if you will be able to figure out where and how the memory configuration is stored. If you look a back on this thread on page 38, you will find this post:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021)
containing the hex diff between 1.5GB and 3GB variants of a GTX580 BIOS of the same version number. Unless I made a huge mistake somewhere (or the BIOSes are mislabeled on TPU, I no longer have a GTX580 I could flash with those BIOSes to test), the memory difference should be encoded somewhere in those 10 lines.

Yeah I already checked the diffs of many BIOSes but the actual size of the memory is not stored literally in the BIOS. The type of memory, the configuration, the clocks etc. are stored as a table in the BIOS and according to these variables you can calculate what the memory size is.

Can you elaborate on this? What  byte offset locations in the GeForce BIOS contains the number of chips and their size?

I don't know exactly where the bits are but I'm in the process of going through the nouveau source that hints that the memory size can be determined by reading a GPU hardware register. There are references to tables in the ROM that contain timings and memory type, but I haven't figured out the location yet.

Please, do report back if you figure it out before I do.

The GTX 780 Ti has been released: http://www.tomshardware.com/reviews/geforce-gtx-780-ti-review-benchmarks,3663.html (http://www.tomshardware.com/reviews/geforce-gtx-780-ti-review-benchmarks,3663.html)

It's interesting to note that the double precision GFLOPS has been artificially limited to 1/24 that of single precision. I wonder if this is something that can be "adjusted."

Interesting, so Titan remains the only one with uncrippled DP FP.
It makes sense, I suppose - they had to sacrifice something to keep the GPU with the extra few shaders enabled from cooking itself at gaming grade clocks and voltages required.

Having said that - what about modding the 780Ti into a Titan? If Tom's Hardware is correct and it is due to the driver lowering the DP FP clock speed, the modding it into a Titan would work around this and give you the best of both worlds - extra shaders and full DPFP performance.

My quadro 6000 with DUAL DVI was fine with geforce drivers too but it was missing something the GTX470 had.

Which is?

Funny thing is how the geforce overclockers are running the same kepler at twice the voltage (geforce). If you let the FP run at full speed, that would cook the cards! (literally the quadro 6000 runs at half the voltage across the board as many overclockers are pushing the GTX475/480). Insane!

That's largely related to the fact that:
1) Gaming rigs are generally much better ventilated than pro grade workstations
2) On pro grade products long term reliability and noise are more important than maximum performance

Note: BAR restriction for VGX mode imperative. only a few server mobo's have this option to keep the IOMMU mapping <4M
note: ECC mode will disable VGX mode!!
note: avoid change of MSI-X or VGX will fail.
note: RDP will disable VGX mode (citrix).

Insane number of requirements to get VGX to actually work, instead of "looks like it is working" or "was working now is not!". buggy as heck!

Interestingly, I'm having no luck with my GTX690 modified into a Grid K2. Works fine on bare metal, but Xen domU fails to initialize it. ESXi fails to initialize it to the point where nvidia-smi can't talk to it at all. But my GTX480 modified into a Quadro 6000 works absolutely fine on all counts. I'm just in the process of getting vSGA working with it. I'll return to give the 690 another try once I have everything working with the 480.

Edit: And I just discovered that VMware Horizon View doesn't work on XP64 and I may have to get something running Windows 7 for the client end to use it. Most annoying.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dredok on November 08, 2013, 09:16:29 am


Not really the case any more. On GTS450 -> Quadro 2000 (GF106) there is a marginal improvement in some SPEC components (e.g. Maya gets a 40% boost, the rest remains the same), and I hadn't noticed any gaming degradation. On GF100 (GTX470/GTX480) and later there is no performance difference in the SPEC benchmarks, but there is a memory I/O boost (potentially up to double) from enabling the bidirectional async DMA. From the GTX580 (Q7000) onward there is no difference in any aspect of performance that I have been able to observe. I have a GTX680 running a K5000 BIOS and there is no obvious performance difference in either SPEC or gaming benchmarks.


How do you enable the bidirectional async DMA? All reports I have seen from hacked cards do not enable the 2nd async DMA... ranging from the GTX 480 to every single target I have seen.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 08, 2013, 05:36:01 pm


Not really the case any more. On GTS450 -> Quadro 2000 (GF106) there is a marginal improvement in some SPEC components (e.g. Maya gets a 40% boost, the rest remains the same), and I hadn't noticed any gaming degradation. On GF100 (GTX470/GTX480) and later there is no performance difference in the SPEC benchmarks, but there is a memory I/O boost (potentially up to double) from enabling the bidirectional async DMA. From the GTX580 (Q7000) onward there is no difference in any aspect of performance that I have been able to observe. I have a GTX680 running a K5000 BIOS and there is no obvious performance difference in either SPEC or gaming benchmarks.


How do you enable the bidirectional async DMA? All reports I have seen from hacked cards do not enable the 2nd async DMA... ranging from the GTX 480 to every single target I have seen.

Straight strap device ID mod. Second DMA engine is driver controlled. See:
Virtualized Gaming: Nvidia Cards, Part 2: GeGorce, Quadro and GeForce Modified into a Quadro - Higher End Fermi Models (https://altechnative.net/virtualized-gaming-nvidia-cards-part-2-geforce-quadro-and-geforce-modified-into-a-quadro-higher-end-fermi-models/)
It works for me on both GTX470 -> Q5000 and GTX480 -> Q6000.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 08, 2013, 05:46:34 pm
gordan, do you have a way to transmit a copy of your enviroment?

I can setup a nearly identical setup and we can test the differences between your 690 and my K2.

I bet if we can pinpoint the behavior difference we could figure this out.

I've got some tidbits that might allow deeper inspection to data that nibitor doesn't have acess to.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dredok on November 08, 2013, 06:14:16 pm


Not really the case any more. On GTS450 -> Quadro 2000 (GF106) there is a marginal improvement in some SPEC components (e.g. Maya gets a 40% boost, the rest remains the same), and I hadn't noticed any gaming degradation. On GF100 (GTX470/GTX480) and later there is no performance difference in the SPEC benchmarks, but there is a memory I/O boost (potentially up to double) from enabling the bidirectional async DMA. From the GTX580 (Q7000) onward there is no difference in any aspect of performance that I have been able to observe. I have a GTX680 running a K5000 BIOS and there is no obvious performance difference in either SPEC or gaming benchmarks.


How do you enable the bidirectional async DMA? All reports I have seen from hacked cards do not enable the 2nd async DMA... ranging from the GTX 480 to every single target I have seen.

Straight strap device ID mod. Second DMA engine is driver controlled. See:
http://www.altechnative.net/2013/09/17/virtualized-gaming-nvidia-cards-part-2-geforce-quadro-and-geforce-modified-into-a-quadro-higher-end-fermi-models/ (http://www.altechnative.net/2013/09/17/virtualized-gaming-nvidia-cards-part-2-geforce-quadro-and-geforce-modified-into-a-quadro-higher-end-fermi-models/)
It works for me on both GTX470 -> Q5000 and GTX480 -> Q6000.

Umm it is really interesting ... so, your kepler mods have enabled the dual async engine? (GTX 680 into K5000 does report 2 engines?)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 08, 2013, 07:09:20 pm
gordan, do you have a way to transmit a copy of your enviroment?

I can setup a nearly identical setup and we can test the differences between your 690 and my K2.

I bet if we can pinpoint the behavior difference we could figure this out.

I've got some tidbits that might allow deeper inspection to data that nibitor doesn't have acess to.

When you say "environment", what exactly are you referring to?
On my primary Xen virtualization rig, I am 99% sure the problem is the extra PCIe bridging on top of the problematic NF200 bridges.
I have not yet determined exactly what the problem is on ESXi - it could just be that the primary console was running on one of the halves of ther GTX690 which was causing problems. I'll look into it again when I get around to re-fitting it. I'm currently in the middle of modding my Titan into a K6000. I'm not 100% sure but I could swear it is now getting 10% more FPS in Furmark as a K6000 than it did as a Titan. But the real test is going to be checking how it handles virtualization.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 08, 2013, 07:10:57 pm


Not really the case any more. On GTS450 -> Quadro 2000 (GF106) there is a marginal improvement in some SPEC components (e.g. Maya gets a 40% boost, the rest remains the same), and I hadn't noticed any gaming degradation. On GF100 (GTX470/GTX480) and later there is no performance difference in the SPEC benchmarks, but there is a memory I/O boost (potentially up to double) from enabling the bidirectional async DMA. From the GTX580 (Q7000) onward there is no difference in any aspect of performance that I have been able to observe. I have a GTX680 running a K5000 BIOS and there is no obvious performance difference in either SPEC or gaming benchmarks.


How do you enable the bidirectional async DMA? All reports I have seen from hacked cards do not enable the 2nd async DMA... ranging from the GTX 480 to every single target I have seen.

Straight strap device ID mod. Second DMA engine is driver controlled. See:
Virtualized Gaming: Nvidia Cards Part 2: GeForce, Quadro and GeForce Modified Into a Quadro - Higher End Fermi Models (https://altechnative.net/virtualized-gaming-nvidia-cards-part-2-geforce-quadro-and-geforce-modified-into-a-quadro-higher-end-fermi-models/)
It works for me on both GTX470 -> Q5000 and GTX480 -> Q6000.

Umm it is really interesting ... so, your kepler mods have enabled the dual async engine? (GTX 680 into K5000 does report 2 engines?)

No, I don't think GPUs after the GF100 have dual async DMA engines in them - unless you have a real K5000 and can provide a CUDA-Z screenshot that shows otherwise?
Dual async DMA is a Fermi-only thing, AFAIK.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dredok on November 08, 2013, 07:21:43 pm
No, I don't think GPUs after the GF100 have dual async DMA engines in them - unless you have a real K5000 and can provide a CUDA-Z screenshot that shows otherwise?
Dual async DMA is a Fermi-only thing, AFAIK.

Actually yes, all Tesla cards have dual async DMA engines ... It would be really interesting turning a GF Titan or 780 into a K20 with enabled dual async engines...

IDK about Quadro, but Tesla have dual async DMA engines.

EDIT:
from Nvidia, K5000 has dual copy engine
http://www.nvidia.com/object/quadro-k5000.html#pdpContent=1 (http://www.nvidia.com/object/quadro-k5000.html#pdpContent=1)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 08, 2013, 11:43:47 pm
No, I don't think GPUs after the GF100 have dual async DMA engines in them - unless you have a real K5000 and can provide a CUDA-Z screenshot that shows otherwise?
Dual async DMA is a Fermi-only thing, AFAIK.

Actually yes, all Tesla cards have dual async DMA engines ... It would be really interesting turning a GF Titan or 780 into a K20 with enabled dual async engines...

IDK about Quadro, but Tesla have dual async DMA engines.

EDIT:
from Nvidia, K5000 has dual copy engine
http://www.nvidia.com/object/quadro-k5000.html#pdpContent=1 (http://www.nvidia.com/object/quadro-k5000.html#pdpContent=1)

In that case they must have laser cut it out of the GPUs after GF100 - I haven't seen it enabled on GTX580 and later models after modification, including my GTX680 running the full K5000 BIOS.

On an unrelated note, my Titan/K5000 isn't working with VGA passthrough, at least with XP64. I'm going to give it a go with Windows 7 domU.
Edit: Doesn't work on Win7 domU, either. Unless somebody has seen evidence to the contrary, it looks very much like GPUs above GTX680 won't virtualize even after modification. My GTX680/K5000 works, but GTX690 doesn't work in either K2 or K5000 modes, and Titan isn't working as a K6000 virtualized (both work fine on bare metal with the Quadro/Grid drivers). I wonder if the GTX770 works virtualized, given it is a straight relabel of a GTX680.

Can anyone confirm whether their modified GTX690/GTX780/Titan work modified with VGA passthrough?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: FireDragon on November 09, 2013, 11:29:59 am
I am also interested in modding a 780 Ti into a Titan if that would allow the driver to change the DP setting. Since the DP is initially disabled for the Titan and the change is done by the driver, it is possible that would work with the 780 Ti once the drive thinks it has a Titan.

I would also like to get 12 7Ghz GDDR5 chips and add them to the back of the board if it has the chip spots are available so that I can get 6GB. That might work with or without modding. I don't have the 780 Ti yet -- waiting on the EGVA ACX OC version so that I can get binned parts, but hoping for the next month or so. Don't really care about the cooler, that will eventually be replaced with water cooling.

Thing is, I would be willing to pay for both of the features. But nobody is even talking about releasing either a 6GB card or unlocking the DP. I don't game, but I can use the DP for computation. I also want the 780 Ti because I will upping to the ASUS 39" UHD monitor once they release it. Both computation and the UHD resolution make 3GB a little iffy.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 09, 2013, 12:18:11 pm
I would also like to get 12 7Ghz GDDR5 chips and add them to the back of the board if it has the chip spots are available so that I can get 6GB. That might work with or without modding. I don't have the 780 Ti yet -- waiting on the EGVA ACX OC version so that I can get binned parts, but hoping for the next month or so. Don't really care about the cooler, that will eventually be replaced with water cooling.

For the amount that would cost you, you might as well get a Titan to begin with. In fact, for the number of cards you'll destroy soldering on the BGA chips manually, you might as well just get a K6000 outright.

Binning these days does next to nothing. Silicon manufacturing has gotten to the point where all chips will do the same speeds to within a few %, and those last few % are down to luck and generally not worth bothering with. Haven't you noticed that in the past decade if the clock range of a particular Intel CPU series was, say, 2.4GHz for the slowest model and 3.33 GHz for the fastest model, they will all do about 3.4GHz regardless of what they were sold as? Granted, Intel silicon is better than most, but it's not THAT much better.

Thing is, I would be willing to pay for both of the features. But nobody is even talking about releasing either a 6GB card or unlocking the DP. I don't game, but I can use the DP for computation. I also want the 780 Ti because I will upping to the ASUS 39" UHD monitor once they release it. Both computation and the UHD resolution make 3GB a little iffy.

Sounds like what you really should be getting is a K6000. Full shader count of the 780Ti, full DP performance of the Titan, and 12GB of RAM. Yours for a mere £4K on ebay. Given I've not been able to get either my 690 or the Titan to work virtualized, I'm tempted to just trade them in for a pair of genuine K5000 cards, seen as they are now going for around £600 on ebay.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 09, 2013, 01:48:14 pm
I was going to say the same thing Gordan. But I didn't want to miff your efforts. K2 cost 1.5x the GTX690 ..

But I'm having fun, no money, no selling from me. I just want to find out the true nature of the secret sauce of quadro/grid/tesla.

 It's fun!

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: MrAMR on November 09, 2013, 02:50:03 pm
Hi,

I'm new to this forum and yesterday night I found this forum/thread thanks to a video from Tek Syndicate on Youtube (regarding killing the new Apple computer). It was said you can "hack"/alter your "gaming"-GPU into a "workstation" card.

May I ask you; what is the effectiveness of doing it? Will it run CAD-related programs much faster? Or is it just to allow Linux to see it as a workstation card and use multiple monitors?
Will it really operate as a workstation-card?

I need it for college but I don't have the funds to buy a +€600,- videocard.

Thank you!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oguz286 on November 09, 2013, 03:26:00 pm
I'm here to report that we (ijsf and me) correctly modified the memory size configuration, and that the card now runs just fine. Here are the obligatory screenshots:

(http://vps1931.directvps.nl/Tesla-K20c-3GB.png)(http://vps1931.directvps.nl/nvidia-smi.png)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 09, 2013, 03:39:52 pm
I was going to say the same thing Gordan. But I didn't want to miff your efforts. K2 cost 1.5x the GTX690 ..
But I'm having fun, no money, no selling from me. I just want to find out the true nature of the secret sauce of quadro/grid/tesla.
 It's fun!

Indeed, my motivation is largely the same, but it also comes down to functionality/features. I need 2 GPUs for 2 VMs with each having monitor outputs. GK2 has no monitor outputs, so it wouldn't have fitted with my use-case. I wanted to avoid having to use 3 slots instead of 1 on my system (due to cards being 2 slots thick).

It was said you can "hack"/alter your "gaming"-GPU into a "workstation" card.
May I ask you; what is the effectiveness of doing it? Will it run CAD-related programs much faster? Or is it just to allow Linux to see it as a workstation card and use multiple monitors?
Will it really operate as a workstation-card?
I need it for college but I don't have the funds to buy a +€600,- videocard.

Read the whole thread. This has been covered at some length. Short version is that there is no huge improvement in professional applications and a Quadro 2000 will utterly annihilate the Titan in SPECviewperf. The Titan will equally annihilate the Quadro 2000 (essentially a GTS450 with a few extra GL primitives implemented in silicon or FPGA somewhere) in gaming. Pick what your main application is, and pick a GPU based on that.

I'm here to report that we (ijsf and me) correctly modified the memory size configuration, and that the card now runs just fine. Here are the obligatory screenshots:

(http://vps1931.directvps.nl/Tesla-K20c-3GB.png)(http://vps1931.directvps.nl/nvidia-smi.png)

oguz286, you are a legend! Any chance of a before/after BIOS hex diff? I'd rather like to try to flash a GTX480 with a Q6000 BIOS with RAM size adjusted appropriately and see what effect it has.

ION: I've been trying to figure out what it is that makes a modified GTX680 work with VGA passthrough and a GTX690 not work, despite the GPUs being exactly the same. So I've been trying to flash a GTX680 BIOS onto a 690, but there is a problem - GTX690 has 3 devices on the same slot, and they have a specific hierarchy. A GTX680 has no hierarchy. Hierarchy is encoded in the BIOS and (thankfully), nvflash refuses to flash a BIOS with incorrect hierarchy ID.

The question is - where is the hierarchy ID encoded in the BIOS? The two vBIOSes on the GTX690 are quite different, so it isn't obvious where one is set for hierarchy ID of switch port 8 and the other to switch port 16.

I don't suppose anyone here knows?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: FireDragon on November 09, 2013, 05:29:06 pm
I would also like to get 12 7Ghz GDDR5 chips and add them to the back of the board if it has the chip spots are available so that I can get 6GB. That might work with or without modding. I don't have the 780 Ti yet -- waiting on the EGVA ACX OC version so that I can get binned parts, but hoping for the next month or so. Some people might overclock to 1100 and others manage over 1300. Don't really care about the ACX cooler, that will eventually be replaced with water cooling.

For the amount that would cost you, you might as well get a Titan to begin with. In fact, for the number of cards you'll destroy soldering on the BGA chips manually, you might as well just get a K6000 outright.

Binning these days does next to nothing. Silicon manufacturing has gotten to the point where all chips will do the same speeds to within a few %, and those last few % are down to luck and generally not worth bothering with. Haven't you noticed that in the past decade if the clock range of a particular Intel CPU series was, say, 2.4GHz for the slowest model and 3.33 GHz for the fastest model, they will all do about 3.4GHz regardless of what they were sold as? Granted, Intel silicon is better than most, but it's not THAT much better.

Thing is, I would be willing to pay for both of the features. But nobody is even talking about releasing either a 6GB card or unlocking the DP. I don't game, but I can use the DP for computation. I also want the 780 Ti because I will upping to the ASUS 39" UHD monitor once they release it. Both computation and the UHD resolution make 3GB a little iffy.

Sounds like what you really should be getting is a K6000. Full shader count of the 780Ti, full DP performance of the Titan, and 12GB of RAM. Yours for a mere £4K on ebay. Given I've not been able to get either my 690 or the Titan to work virtualized, I'm tempted to just trade them in for a pair of genuine K5000 cards, seen as they are now going for around £600 on ebay.

You may be right about the cost of the chips. That will figure in my decision. I was assuming that the cost would only be slightly unreasonable. Like, perhaps 1/4 the cost of the 780 Ti itself. These are not cutting edge chips (anymore).

As far as BGA soldering is concerned, I haven't done that. However, wasn't there someone here who has BGA equipment? Perhaps I could make a deal with him (or someone else) to actually do the soldering. The amount of memory is usually picked up by the amount that is physically present. And, of course, the BIOS can be tweaked to be consistent so I assume that a memory mod would work.

You're right about binning -- until  you overclock. Then the differences in the chips show up. I am currently running a 3770K on stock air at 4.4Ghz. It was not stable at 4.6, but almost. I possibly could do 4.5 but haven't pushed it. Some people have gotten as high as 4.7 and been stable. My understanding is that EVGA bins the ACX OC parts so that at each voltage level the chip does just a little bit better in speed and power consumption. If you want to OC it, that can make a difference. Even if you don't you can run a bit cooler.

I'm willing to pay for the cost of the card -- but not a factor of six! You would be looking at no more than 1/14 increase over the Titan and probably would NOT clock anywhere near as high. So, if the Titan is 1000, then 1200 or so is reasonable. Perhaps 1500 for high speed board.

It might be a completely moot point. Changing the ID might not allow the DP to be unlocked. We don't know if the switch to turn it on is is done by fuses or simply made not available unless it is the Titan. If, as seems likely from previous posts, the ID change can be done via soft strapping (since probably only nibble four is involved and the only board changes appear to be in the power distribution area) then it will be a cheap test.

All of the other attempts to turn on DP have not involved changing to a Titan which has a software switch, but rather something else where it is always turned on.

Can't do anything though until people start getting cards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 09, 2013, 06:13:07 pm
I would also like to get 12 7Ghz GDDR5 chips and add them to the back of the board if it has the chip spots are available so that I can get 6GB. That might work with or without modding. I don't have the 780 Ti yet -- waiting on the EGVA ACX OC version so that I can get binned parts, but hoping for the next month or so. Some people might overclock to 1100 and others manage over 1300. Don't really care about the ACX cooler, that will eventually be replaced with water cooling.

For the amount that would cost you, you might as well get a Titan to begin with. In fact, for the number of cards you'll destroy soldering on the BGA chips manually, you might as well just get a K6000 outright.

Binning these days does next to nothing. Silicon manufacturing has gotten to the point where all chips will do the same speeds to within a few %, and those last few % are down to luck and generally not worth bothering with. Haven't you noticed that in the past decade if the clock range of a particular Intel CPU series was, say, 2.4GHz for the slowest model and 3.33 GHz for the fastest model, they will all do about 3.4GHz regardless of what they were sold as? Granted, Intel silicon is better than most, but it's not THAT much better.

Thing is, I would be willing to pay for both of the features. But nobody is even talking about releasing either a 6GB card or unlocking the DP. I don't game, but I can use the DP for computation. I also want the 780 Ti because I will upping to the ASUS 39" UHD monitor once they release it. Both computation and the UHD resolution make 3GB a little iffy.

Sounds like what you really should be getting is a K6000. Full shader count of the 780Ti, full DP performance of the Titan, and 12GB of RAM. Yours for a mere £4K on ebay. Given I've not been able to get either my 690 or the Titan to work virtualized, I'm tempted to just trade them in for a pair of genuine K5000 cards, seen as they are now going for around £600 on ebay.

You may be right about the cost of the chips. That will figure in my decision. I was assuming that the cost would only be slightly unreasonable. Like, perhaps 1/4 the cost of the 780 Ti itself. These are not cutting edge chips (anymore).

As far as BGA soldering is concerned, I haven't done that. However, wasn't there someone here who has BGA equipment? Perhaps I could make a deal with him (or someone else) to actually do the soldering. The amount of memory is usually picked up by the amount that is physically present. And, of course, the BIOS can be tweaked to be consistent so I assume that a memory mod would work.

If you are doing this for fun as the primary motivation, that's great, but otherwise you need to factor in the cost of the man-hours that is going to go into all of this. Combine that with the outcome being far from certain, and the economics of it start to look very questionable.

You're right about binning -- until  you overclock. Then the differences in the chips show up. I am currently running a 3770K on stock air at 4.4Ghz. It was not stable at 4.6, but almost. I possibly could do 4.5 but haven't pushed it. Some people have gotten as high as 4.7 and been stable. My understanding is that EVGA bins the ACX OC parts so that at each voltage level the chip does just a little bit better in speed and power consumption. If you want to OC it, that can make a difference. Even if you don't you can run a bit cooler.

I'm willing to pay for the cost of the card -- but not a factor of six! You would be looking at no more than 1/14 increase over the Titan and probably would NOT clock anywhere near as high. So, if the Titan is 1000, then 1200 or so is reasonable. Perhaps 1500 for high speed board.

My view of OC is that there are a lot of "fishermen's tales" and that what most people consider "stable" isn't actually all that stable. If you can run each of the OCCT tests and the multi-threaded tmpfs file hash tests on linux for 24 hours each without any errors, then I may be a little more convinced. Most of the time when people have claimed stability I have been able to shake the machine loose in under 10 minutes.

It might be a completely moot point. Changing the ID might not allow the DP to be unlocked. We don't know if the switch to turn it on is is done by fuses or simply made not available unless it is the Titan. If, as seems likely from previous posts, the ID change can be done via soft strapping (since probably only nibble four is involved and the only board changes appear to be in the power distribution area) then it will be a cheap test.

All of the other attempts to turn on DP have not involved changing to a Titan which has a software switch, but rather something else where it is always turned on.

Can't do anything though until people start getting cards.

The whole notion of DP boost by changing the 780's ID to Titan stems from the part in Tom's Hardware review that suggests that the DP shader clock speed is driver controlled.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: FireDragon on November 09, 2013, 06:51:53 pm
If you are doing this for fun as the primary motivation, that's great, but otherwise you need to factor in the cost of the man-hours that is going to go into all of this. Combine that with the outcome being far from certain, and the economics of it start to look very questionable.

My view of OC is that there are a lot of "fishermen's tales" and that what most people consider "stable" isn't actually all that stable. If you can run each of the OCCT tests and the multi-threaded tmpfs file hash tests on linux for 24 hours each without any errors, then I may be a little more convinced. Most of the time when people have claimed stability I have been able to shake the machine loose in under 10 minutes.

The whole notion of DP boost by changing the 780's ID to Titan stems from the part in Tom's Hardware review that suggests that the DP shader clock speed is driver controlled.

Nothing about my current build is cost effective. If include the cost of man hours, then the total cost is astronomical. But, it has also been an excellent project for learning things. Extreme - yes. Just the disk storage system is nearly 5K (2K in SSDs, another 1.5K in raid controller / expanders and the rest in hard drives and optical drives). The water cooling is already over 2k and going up. And none of that includes the tools that I have purchased to do the build. So, while it will be a system that I actually use, and is intended for long term use and easy changes, it is also intended to be the system I want without really counting the cost (doesn't mean that I don't consider tradeoffs or have budget limitations - funding is via overtime).

For 4.6Ghz I was able to run Prime95 for several hours before it failed. I was going for a full day.

I understand where the DP boost idea comes from. But, for a Titan, it can clearly be changed in software using the control panel. No one (that I know about) has tracked that all the way down to the hardware / bios, but clearly on the Titan the block is not via fuses. It is far from certain, but if the boost option is simply turned off if it is not a Titan, it is possible that no fuses are involved on the 780 Ti parts either. They appear to be using the same chips. It is certainly worth a try, especially if it has zero cost to try.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 09, 2013, 07:12:53 pm
If you are doing this for fun as the primary motivation, that's great, but otherwise you need to factor in the cost of the man-hours that is going to go into all of this. Combine that with the outcome being far from certain, and the economics of it start to look very questionable.

My view of OC is that there are a lot of "fishermen's tales" and that what most people consider "stable" isn't actually all that stable. If you can run each of the OCCT tests and the multi-threaded tmpfs file hash tests on linux for 24 hours each without any errors, then I may be a little more convinced. Most of the time when people have claimed stability I have been able to shake the machine loose in under 10 minutes.

The whole notion of DP boost by changing the 780's ID to Titan stems from the part in Tom's Hardware review that suggests that the DP shader clock speed is driver controlled.

Nothing about my current build is cost effective. If include the cost of man hours, then the total cost is astronomical. But, it has also been an excellent project for learning things. Extreme - yes. Just the disk storage system is nearly 5K (2K in SSDs, another 1.5K in raid controller / expanders and the rest in hard drives and optical drives). The water cooling is already over 2k and going up. And none of that includes the tools that I have purchased to do the build. So, while it will be a system that I actually use, and is intended for long term use and easy changes, it is also intended to be the system I want without really counting the cost (doesn't mean that I don't consider tradeoffs or have budget limitations - funding is via overtime).

So just save up for a K6000 and save yourself the disappointment.

For 4.6Ghz I was able to run Prime95 for several hours before it failed. I was going for a full day.

Prime95 is a completely useless test of stability. I have seen Prime95 and various Pi calculators run for days without error only for OCCT or hash calculations to return an error in under 30 seconds. If anything, what you said confirms my view of fishermen's tales.

I understand where the DP boost idea comes from. But, for a Titan, it can clearly be changed in software using the control panel. No one (that I know about) has tracked that all the way down to the hardware / bios, but clearly on the Titan the block is not via fuses. It is far from certain, but if the boost option is simply turned off if it is not a Titan, it is possible that no fuses are involved on the 780 Ti parts either. They appear to be using the same chips. It is certainly worth a try, especially if it has zero cost to try.

As long as you are happy with the assumed outcome of no DP improvement, that's fine. There are several things to try, including changing the device ID and flashing the Titan BIOS onto the card. But that doesn't mean it'll succeed. I have a 4GB GTX680 running a K5000 BIOS, and there is no obvious performance benefit in any test over a standard GTX680 - the only advantage is in persuading the drivers to allow VGA passthrough operation - and even that doesn't seem to work on models more recent than the GTX680.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: FireDragon on November 10, 2013, 04:58:35 am

So just save up for a K6000 and save yourself the disappointment.

Prime95 is a completely useless test of stability. I have seen Prime95 and various Pi calculators run for days without error only for OCCT or hash calculations to return an error in under 30 seconds. If anything, what you said confirms my view of fisherments' tales.

As long as you are happy with the assumed outcome of no DP improvement, that's fine. There are several things to try, including changing the device ID and flashing the Titan BIOS onto the card. But that doesn't mean it'll succeed. I have a 4GB GTX680 running a K5000 BIOS, and there is no obvious performance benefit in any test over a standard GTX680 - the only advantage is in persuading the drivers to allow VGA passthrough operation - and even that doesn't seem to work on models more recent than the GTX680.

A K6000 isn't what I want.

I am interested in alternate ways of determining stability, Prime95 appears to be what most overclockers used to validate a clock. I want to increase the clock rate, but not at the expense of stability or correctness. I do not run Linux, I am currently using Windows 7 64. I would appreciate any suggestions you have for validating a clock as stable.

I am not a dedicated overclocker, but once I am on water cooling I would like to see 5Ghz on my 3770K on a 24/7 basis. Moderate overclocking is not really overclocking at all because Intel drastically underspecifies the performance of the cpus. It isn't until you push past about 4.5Ghz that you are really in the overclocking range.

I will accept no DP improvement. I am just hoping and this thread has exposed an interesting possibility. Unlike others in this thread, I am not trying to turn a consumer product into a commercial product, nor am I interested in the card sharing in VMs so my use of the information is for different purposes. While I can use the card for compute purposes, I would not be doing so professionally. And, if I really needed the compute boost, then I would get a K6000 or whatever would be best.

Why do you appear to be so against the idea? I would think it that it would be of interest to at least some of the participants of this forum and certainly is harmless. It would also resolve an open question about the Titan vs 680 / 680 Ti.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: aardvark0 on November 10, 2013, 07:10:00 am
I have a 4GB GTX680 running a K5000 BIOS, and there is no obvious performance benefit in any test over a standard GTX680 - the only advantage is in persuading the drivers to allow VGA passthrough operation - and even that doesn't seem to work on models more recent than the GTX680.

Does the K5000 modified GTX680 allow 30bit color on the displayport output like a real K5000?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 10, 2013, 08:19:24 am

So just save up for a K6000 and save yourself the disappointment.

Prime95 is a completely useless test of stability. I have seen Prime95 and various Pi calculators run for days without error only for OCCT or hash calculations to return an error in under 30 seconds. If anything, what you said confirms my view of fishermen's tales.

As long as you are happy with the assumed outcome of no DP improvement, that's fine. There are several things to try, including changing the device ID and flashing the Titan BIOS onto the card. But that doesn't mean it'll succeed. I have a 4GB GTX680 running a K5000 BIOS, and there is no obvious performance benefit in any test over a standard GTX680 - the only advantage is in persuading the drivers to allow VGA passthrough operation - and even that doesn't seem to work on models more recent than the GTX680.

I am interested in alternate ways of determining stability, Prime95 appears to be what most overclockers used to validate a clock.

Because it helps perpetuate their fishermen's tales while giving them an appearance of validity. It is one of the reasons why projects such as F@H nowdays have to send each work unit out multiple times in hope to get two matching results back for cross-check, resulting in a huge waste of computational resources.

I want to increase the clock rate, but not at the expense of stability or correctness. I do not run Linux, I am currently using Windows 7 64. I would appreciate any suggestions you have for validating a clock as stable.

OCCT is a good place to start (small test for CPU/cache testing, large test for MCH/RAM testing, then re-check with linpack test for good measure as I have seen it throw errors where the small and large tests passed).

I am not a dedicated overclocker, but once I am on water cooling I would like to see 5Ghz on my 3770K on a 24/7 basis.

Dream on.

Moderate overclocking is not really overclocking at all because Intel drastically underspecifies the performance of the cpus. It isn't until you push past about 4.5Ghz that you are really in the overclocking range.

They don't overspecify them by much per se. You'll find there's maybe 10% of headroom on the top of the range model, and you probably want to keep most of that 10% margin for error. The smart way to approach the matter is to buy the bottom of the range CPU and crank it up to the top of the range clock speed as that will by and large "just work". Above that things rapidly start to get uneconomical in terms of cost and effort.

Why do you appear to be so against the idea? I would think it that it would be of interest to at least some of the participants of this forum and certainly is harmless. It would also resolve an open question about the Titan vs 680 / 680 Ti.

I am not against it, I was just pointing out that your approach involving getting a 3GB card and soldering another 3GB of RAM chips onto it instead of getting a 6GB card to begin with was at best misguided.

I have a 4GB GTX680 running a K5000 BIOS, and there is no obvious performance benefit in any test over a standard GTX680 - the only advantage is in persuading the drivers to allow VGA passthrough operation - and even that doesn't seem to work on models more recent than the GTX680.

Does the K5000 modified GTX680 allow 30bit color on the displayport output like a real K5000?

I don't know - I don't have any displayport monitors.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 10, 2013, 09:28:23 am
oguz286, any chance of a howto write up on the subject of memory size modding?
I got my hands on a K6000 BIOS from here:
http://forum.techinferno.com/nvidia-video-cards/5022-%5Breq%5D-raise-maximum-power-target-quadro-k6000-bios-attached.html (http://forum.techinferno.com/nvidia-video-cards/5022-%5Breq%5D-raise-maximum-power-target-quadro-k6000-bios-attached.html)
and I want to try it on my Titan to see if VGA passthrough starts working, but I need to halve the memory size first.

Also, do you have a download link for a CUDA binary you want me to test on my Titan with a K20c BIOS? Or is that no longer of interest?

Also regarding your article on the website about PCIe 2.0 vs. 3.0, are you saying that flashing a K20c BIOS onto the 780 makes it go in to PCIe 2.0 mode? How can you tell? If you are judging this by what GPU-Z says, I wouldn't trust it too much - my Titan shows up as PCIe 1.1 on a 2.0 motherboard, while my GTX690 shows up as PCIe 3.0 even though the motherboard most definitely cannot do more than PCIe 2.0.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: KamranB on November 11, 2013, 06:10:03 pm
Nice! If it works out I'm getting a Titan too :) Then I can concentrate on 'Teslafying' the GTX780 completely and running CUDA on it without getting unknown errors when calling cudaMemcpy.

I must say I am really curious if you will be able to figure out where and how the memory configuration is stored. If you look a back on this thread on page 38, you will find this post:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021)
containing the hex diff between 1.5GB and 3GB variants of a GTX580 BIOS of the same version number. Unless I made a huge mistake somewhere (or the BIOSes are mislabeled on TPU, I no longer have a GTX580 I could flash with those BIOSes to test), the memory difference should be encoded somewhere in those 10 lines.

Yeah I already checked the diffs of many BIOSes but the actual size of the memory is not stored literally in the BIOS. The type of memory, the configuration, the clocks etc. are stored as a table in the BIOS and according to these variables you can calculate what the memory size is.

Can you elaborate on this? What  byte offset locations in the GeForce BIOS contains the number of chips and their size?

Back in the GeForce 2 days, you could turn certain models into a Quadro 2, though in those cases it wasn't just a straight performance unlock. It was a tradeoff. Something like far better CAD and wireframe performance, but games weren't so well optimized anymore. It wasn't something a gamer would do to get a few extra FPS.

Not really the case any more. On GTS450 -> Quadro 2000 (GF106) there is a marginal improvement in some SPEC components (e.g. Maya gets a 40% boost, the rest remains the same), and I hadn't noticed any gaming degradation. On GF100 (GTX470/GTX480) and later there is no performance difference in the SPEC benchmarks, but there is a memory I/O boost (potentially up to double) from enabling the bidirectional async DMA. From the GTX580 (Q7000) onward there is no difference in any aspect of performance that I have been able to observe. I have a GTX680 running a K5000 BIOS and there is no obvious performance difference in either SPEC or gaming benchmarks.

We faced the exact problem that you have mentioned in the forum and changed the resistors in a way to get a Quadro Graphic card but it did not work for us. By the way I see that there are little differences in our board with the image that you have shared in the forum.
1) In the upper column that you showed there is a 25K resistor that should be removed and a 20K resistor should be mount below that one.Ok and we did it. But in our board the second right side column is different. There is a resistor on top of this row
which is not on your board and reversely there is a resistor under that on your board which is not present in our board.

2) We plugged in the board and there were one long beep and three short beeps on windows startup. And it did not work.

Did you change just the 3rd nibble resistor pair or did you change the 4th one as well? I suggest you put the 4th nibble (lower pair in the photo) back as it was and soft-mod that part instead. For the 3rd nibble resistor, you can either leave it off and stabilize wiith the soft-mod on the lowest bit of the nibble, or put in a resistor. With 25K or more, the 3rd nibble will go to 0xB.

1)   Sorry I don’t know exactly which resistors determine which nibbles but I’m sure that I did the same thing that was proposed in the image as highlighted by the red rectangles. Removed the 25K on the right top. Added a 20K below the removed one. And changed the forth column top resistor from 5K to 15K. Could you please show in the image what is your suggestion??
 
2)   Also could you please tell me more about soft-mod?? Is that some sort of firmware update for the graphic Card? What do you mean by stabilize with soft-mod??

Thanks again
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 11, 2013, 07:13:22 pm
1)   Sorry I don’t know exactly which resistors determine which nibbles but I’m sure that I did the same thing that was proposed in the image as highlighted by the red rectangles. Removed the 25K on the right top. Added a 20K below the removed one. And changed the forth column top resistor from 5K to 15K. Could you please show in the image what is your suggestion??

My first suggestion is that you understand what the mod does and why it works before taking a soldering iron to an expensive piece of equipment.

The top pair of resistors controls the 3rd nibble of the device ID. Nibble is half a byte. So if your card's PCI device ID is, e.g. 0x1180 (for a GTX680), the 3rd nibble is 8, and the 4th nibble s 0. The resistors controlling the 3rd nibble are at the upper pair in the picture, and for the 4th nibble are the lower ones.

The values for the 4th nibble are fully configurable in both hardware or software (see first page for details of resistor values for the hard-mod). The 3rd nibble is partially controllable in software (the 5th bit is controllable via a soft-strap in the BIOS, the other 3 are not). Thus, to convert to a Tesla K10 no hardware modification is required - it can be done in software. See my post on page 41 of this thread for an explanation of soft-modding on UEFI BIOS cards.

For modifying to a K5000 or K2 you have to hard-mod at least the 3rd nibble resistor pair.

2)   Also could you please tell me more about soft-mod?? Is that some sort of firmware update for the graphic Card? What do you mean by stabilize with soft-mod??

Yes. See page 41.
What I have found is that you can remove the 3rd nibble resistor without replacing it. This is a bad idea, but it does work for most people, at least on the GTX680. The result is that the value of the 3rd nibble will flap between the highest settable value and one blow it (in the case of GK104 based cards that means 0xA or 0xB, randomly after reboots). This is only a difference in the least significant bit of the 3rd nibble, so you can "stabilize" it by setting that bit in the soft strap.

If you are not getting even a POST, then something else has been damaged/modified on the card, e.g. if you shorted something by too much solder, static shock damage, or similar. Or you just didn't push the card into the slot properly. Even without any of the hard-strap resistors the card should still POST, but it's device ID may be unstable (for a lot of people, myself included, no resistors in any of the 4 locations results in reasonably stable 0x11BF (K2) device ID on the GTX680. Note that leaving pins disconnected on an analogue circuit is a bad idea as it can cause inpredictable behaviour, so don't do this unless you have no choice.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: C_Coffie on November 12, 2013, 02:46:28 am
So I read almost halfway through the thread and then searched the rest and I still have some questions. So I current have two GTX 660 (non-ti) that was hoping to convert to k4000's. I simply would like to do this for the virtualization benefits. I currently have 32gb ram in my desktop and it's killing not being able to use all of it. I was thinking of implementing a Xen setup but I think I would need the gtx 660 profession counterpart which I believe is the k4000. I know early on in this post- https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg203239/#msg203239 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg203239/#msg203239) They posted a potential position of the resistors but I didn't see anything come of this. So my question is if anyone has successfully modified a gtx 660 to be a k4000? or would you guys be able to point me towards how I would figure this out myself? Thanks for the help. Also you guys are awesome.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 12, 2013, 10:36:47 am
So I read almost halfway through the thread and then searched the rest and I still have some questions. So I current have two GTX 660 (non-ti) that was hoping to convert to k4000's. I simply would like to do this for the virtualization benefits. I currently have 32gb ram in my desktop and it's killing not being able to use all of it. I was thinking of implementing a Xen setup but I think I would need the gtx 660 profession counterpart which I believe is the k4000. I know early on in this post- https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg203239/#msg203239 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg203239/#msg203239) They posted a potential position of the resistors but I didn't see anything come of this. So my question is if anyone has successfully modified a gtx 660 to be a k4000? or would you guys be able to point me towards how I would figure this out myself?

You might want to look at oguz286's web site (link under his username). He produced a diagram of how the ID strapping seems to hang together circuit-wise on the GTX780. You could arm yourself with a multimeter and try to find if there is a similar arrangement on the 660. As an added bonus, if there is, you might be able to get away with a similar trick to avoid manually soldering 0402 components.

ION: In Linux if you run the nouveau driver, you can cat the BIOS from the GPU via /sys/kernel/debug/dri/*/vbios.rom. The reason this is useful is because what you will get out of it is the BIOS stripped of the UEFI headers, which takes guessing out of where to start stripping the footer out. It can also be educational to see the length of the UEFI header for those that haven't figured it out by eyeballing it (0x400 bytes (1KiB) on GK104, 0x600 (1.5KiB) bytes on GK110).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on November 13, 2013, 07:36:38 am
hello, may be it is offtopic

I found that my modded gtx650 card to grid k1, and gtx680 -> grid k2 have WGL_NV_gpu_affinity
But I have issue, These card are in different PCs.

Did someone try to use this extension on modded cards?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 13, 2013, 08:03:44 am
What is WGL_NB_gpu_affinity supposed to do?
Did you mod just the device ID, or did you flash the Grid BIOS onto the card?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on November 13, 2013, 08:16:39 am
What is WGL_NB_gpu_affinity supposed to do?
Did you mod just the device ID, or did you flash the Grid BIOS onto the card?

It need for multigpu render to select right render gpu.
I modded device ID only.

I not able to test it because I have only one videocard in each pc :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 13, 2013, 09:16:11 am
What is WGL_NB_gpu_affinity supposed to do?
Did you mod just the device ID, or did you flash the Grid BIOS onto the card?

It need for multigpu render to select right render gpu.
I modded device ID only.

I not able to test it because I have only one videocard in each pc :(

My 690/K2 doesn't show that capability.
My 680/K5000 does.

I can also confirm that the 680 also has this capability with it's original BIOS (as opposed to the K5000 BIOS that I normally run it with).

Tested using:
http://www.equalizergraphics.com/downloads/affinityCheck.exe (http://www.equalizergraphics.com/downloads/affinityCheck.exe) and
http://www.geeks3d.com/20131113/gpu-caps-viewer-1-19-0-videocard-information-utility-opengl-opencl-geforce-quadro-radeon-gpu/ (http://www.geeks3d.com/20131113/gpu-caps-viewer-1-19-0-videocard-information-utility-opengl-opencl-geforce-quadro-radeon-gpu/)

Another thing I can also confirm is that in the control panel I get the ECC option now even with the stock BIOS, as had been previously reported. It would appear that once the Quadro/Grid BIOS has been flashed onto the card, something else ends up changed (FPGA microcode push?) and flashing the BIOS back doesn't undo it.

Quite strange. I wonder what is going on there.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 13, 2013, 11:26:15 pm
I have made progress on adjusting the VRAM size in the BIOS. What happens is that BIOS has "init scripts", which is basically binary init code that gets run as-is on the GPU to initialize it.

I worked on comparing two similar BIOSes (between Gainward Phantom GTX680 2GB and 4GB models):
http://www.techpowerup.com/vgabios/130996/Gainward.GTX680.2048.120710.rom (http://www.techpowerup.com/vgabios/130996/Gainward.GTX680.2048.120710.rom)
http://www.techpowerup.com/vgabios/131820/Gainward.GTX680.4096.120709.rom (http://www.techpowerup.com/vgabios/131820/Gainward.GTX680.4096.120709.rom)

I first adjusted the clocks and voltages on the 2GB BIOS to match the 4GB BIOS to reduce the differences.

Then I compared the BIOSes and found that there were just 9 blocks that differ between them. With a bit of binary search experimentation, I got there in the end.

The first two blocks caused screen corruption and lack of card initialization (VGA 4-bit color only in Windows, some corruption in text mode) when applied to the 4GB card. The 3rd block proved to be the one containing the memory init payload. Here is the complete diff block:

Code: [Select]
2529,2532c2529,2532
< 0009e00: 0000 90cf 0000 90cf 0000 90cf 0000 96cf  ................
< 0009e10: 0200 96cf 0200 9055 0200 9055 0200 9044  .......U...U...D
< 0009e20: 0200 9044 0200 a055 0200 a055 0200 a055  ...D...U...U...U
< 0009e30: 0200 a055 026e 0402 1100 ffff ffff 0000  ...U.n..........
---
> 0009e00: 0000 90cf 0000 90cf 0000 90cf 0000 968f  ................
> 0009e10: 0200 908f 0200 9055 0200 9055 0200 9044  .......U...U...D
> 0009e20: 0200 9044 0200 a055 0200 a055 0200 9055  ...D...U...U...U
> 0009e30: 0200 9055 026e 0402 1100 ffff ffff 0000  ...U.n..........

And again with the deltas highlighted in red:
2529,2532c2529,2532
< 0009e00: 0000 90cf 0000 90cf 0000 90cf 0000 96cf
< 0009e10: 0200 96cf 0200 9055 0200 9055 0200 9044
< 0009e20: 0200 9044 0200 a055 0200 a055 0200 a055
< 0009e30: 0200 a055 026e 0402 1100 ffff ffff 0000
---
> 0009e00: 0000 90cf 0000 90cf 0000 90cf 0000 968f
> 0009e10: 0200 908f 0200 9055 0200 9055 0200 9044
> 0009e20: 0200 9044 0200 a055 0200 a055 0200 9055
> 0009e30: 0200 9055 026e 0402 1100 ffff ffff 0000


The next part of the effort will involve dissasembling this block of init code to figure out what it actually does. In absence of more info on what he did on the 780/K20c mod from oguz286's, with a bit of luck, this will yield enough clues on how to modify the K6000 BIOS for the Titan.

Stay tuned.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: tgtweak on November 14, 2013, 05:51:21 pm
Anybody try NVENC functionality on their modded 680-> K2?  This is a very big part of the grid/quadro cards featureset. 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 14, 2013, 06:59:16 pm
Anybody try NVENC functionality on their modded 680-> K2?  This is a very big part of the grid/quadro cards featureset.

Explain in detail how to test it (including a testing binary if appropriate) and I'll let you know.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Rutgerb on November 14, 2013, 07:06:11 pm
Can someone help me? I am trying to make a k5000 from my MSI gtx 660 ti, but I don't know where I can find the resistors and what I need to change them with.

Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 14, 2013, 07:38:43 pm
On the GPU side of the card, I can see two 8-pin chips that look like they could be the EEPROM. You'll need to check the writing on them and google it to establish which is the EEPROM. Once you have established that, take a look at this diagram:

http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/ (http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/)

See if you can find a resistor with an alternate position that goes to SCLK pin on the EEPROM. That should be the 3rd nibble. That's the one you'll need to change, most likely to 40K. That should get you the device ID 0x11B3 (from the default 0x1183). From there, edit the BIOS at 0x1C as discussed a few pages pack to set bits 0-4 accordingly for the 4th nibble.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 14, 2013, 11:39:47 pm
I've been doing a bit of digging to try to figure out why my GTX690 is, infuriatingly, not playing ball in a VM, and I just noticed this in a new tool that I decided to try after seeing it in verybigbadboy's recent post.

Spot the device ID it reports: 0x11A8.
This must be coming from the driver since Windows Device Manager and Linux lspci both report it as device ID 0x11BF.

The crucial point is that I only part hard-modded the card. I removed the 3rd nibble resistor, and fixed the flapping by setting the soft-strap bit-5 high to compensate. I soft modded the low 4 bits.

What's the bet that the driver also keys off the same place where GPU Caps viewer gets the device ID, and pretends to work fine while in fact not doing it's Quadro thing?

/me will take a soldering iron to the GTX690 tomorrow put some 40K resistors on and see if that fixes the problem.

The interesting thing is that this seems to be new to the Kepler GPUs. It isn't the case with the Fermi GPUs - on the Fermis the soft-mod sticks completely.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on November 15, 2013, 06:08:03 pm
oguz286, any chance of a howto write up on the subject of memory size modding?
I got my hands on a K6000 BIOS from here:
http://forum.techinferno.com/nvidia-video-cards/5022-%5Breq%5D-raise-maximum-power-target-quadro-k6000-bios-attached.html (http://forum.techinferno.com/nvidia-video-cards/5022-%5Breq%5D-raise-maximum-power-target-quadro-k6000-bios-attached.html)
and I want to try it on my Titan to see if VGA passthrough starts working, but I need to halve the memory size first.

Also, do you have a download link for a CUDA binary you want me to test on my Titan with a K20c BIOS? Or is that no longer of interest?

Also regarding your article on the website about PCIe 2.0 vs. 3.0, are you saying that flashing a K20c BIOS onto the 780 makes it go in to PCIe 2.0 mode? How can you tell? If you are judging this by what GPU-Z says, I wouldn't trust it too much - my Titan shows up as PCIe 1.1 on a 2.0 motherboard, while my GTX690 shows up as PCIe 3.0 even though the motherboard most definitely cannot do more than PCIe 2.0.

Bhahaha, I posted that Quadro K6000 BIOS a bit ago there... which reminds me, I'm going to sent a message to svl7 to see if he can do more tweaks to remove the power target throttling past 225W I've experienced. I'm also curious on the PCIe 2.0 vs 3.0 speeds on a GPU modded to K20c BIOS. If PCIe 3.0 is possible, the only thing missing would be the dual-DMA engines.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 15, 2013, 07:38:37 pm
oguz286, any chance of a howto write up on the subject of memory size modding?
I got my hands on a K6000 BIOS from here:
http://forum.techinferno.com/nvidia-video-cards/5022-%5Breq%5D-raise-maximum-power-target-quadro-k6000-bios-attached.html (http://forum.techinferno.com/nvidia-video-cards/5022-%5Breq%5D-raise-maximum-power-target-quadro-k6000-bios-attached.html)
and I want to try it on my Titan to see if VGA passthrough starts working, but I need to halve the memory size first.

Also, do you have a download link for a CUDA binary you want me to test on my Titan with a K20c BIOS? Or is that no longer of interest?

Also regarding your article on the website about PCIe 2.0 vs. 3.0, are you saying that flashing a K20c BIOS onto the 780 makes it go in to PCIe 2.0 mode? How can you tell? If you are judging this by what GPU-Z says, I wouldn't trust it too much - my Titan shows up as PCIe 1.1 on a 2.0 motherboard, while my GTX690 shows up as PCIe 3.0 even though the motherboard most definitely cannot do more than PCIe 2.0.

Bhahaha, I posted that Quadro K6000 BIOS a bit ago there... which reminds me, I'm going to sent a message to svl7 to see if he can do more tweaks to remove the power target throttling past 225W I've experienced. I'm also curious on the PCIe 2.0 vs 3.0 speeds on a GPU modded to K20c BIOS. If PCIe 3.0 is possible, the only thing missing would be the dual-DMA engines.

PCIe 3.0 definitely is possible if the card can do it as a 780, it's just a matter of finding the right bit in the binary init script in the BIOS payload that configures the PCIe speed. But that's not easy, unless you are fluent in talking binary to GPU registers.

Dual DMA engines are most likely not going to work - from the GTX580 onward I'm reasonably certain they were laser cut from the silicon. GTX480 was the last card where it was still present on GeForce cards. But who knows, maybe they left it in some of the GK110 GeForce cards. It certainly doesn't look like it's available on GK104s.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: takeawaydave on November 16, 2013, 10:47:24 am
Can someone help me? I am trying to make a k5000 from my MSI gtx 660 ti, but I don't know where I can find the resistors and what I need to change them with.

Thanks!

Hello - I was taking a look at the photos that you posted however they aren't all that clear. Try to get some better lighting and try and get the tiny details, lettering etc.. all in focus - this will really help in getting identified what needs to be identified :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on November 16, 2013, 11:40:08 pm
Can someone help me? I am trying to make a k5000 from my MSI gtx 660 ti, but I don't know where I can find the resistors and what I need to change them with.

Thanks!

Hello - I was taking a look at the photos that you posted however they aren't all that clear. Try to get some better lighting and try and get the tiny details, lettering etc.. all in focus - this will really help in getting identified what needs to be identified :)

hq scan. same board.
http://www.ixbt.com/video3/images/msi-7/msi-gtx660ti-scan-front.jpg (http://www.ixbt.com/video3/images/msi-7/msi-gtx660ti-scan-front.jpg)
http://www.ixbt.com/video3/images/msi-7/msi-gtx660ti-scan-back.jpg (http://www.ixbt.com/video3/images/msi-7/msi-gtx660ti-scan-back.jpg)


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on November 17, 2013, 04:57:54 am
Quote from: gordan
Interesting, so Titan remains the only one with uncrippled DP FP.
It makes sense, I suppose - they had to sacrifice something to keep the GPU with the extra few shaders enabled from cooking itself at gaming grade clocks and voltages required.

Having said that - what about modding the 780Ti into a Titan? If Tom's Hardware is correct and it is due to the driver lowering the DP FP clock speed, the modding it into a Titan would work around this and give you the best of both worlds - extra shaders and full DPFP performance.

Well, almost the best of both worlds, heh. You'd still be missing TCC support. One part that still seems to be missing is how to enable full DPFP performance on conversions to cards that support it natively (e.g. Quadro K6000) Titan is just the only card (so far) that is able to enable/disable full DPFP on the fly, so presumably the 780Ti -> Titan conversion would permit full DP support. Would be interesting if someone tried it!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 17, 2013, 09:38:47 pm
So, I was able to mod the titan into the k20xm. I attached a pic of cuda-z. The titan values are without activated double precision values. The k20xm is running with activated double precision. Nevertheless, the performance of the k20xm is not exactly what I expected. I increased already the clock, but it wasn't the solution. By the way, the mod of oguz286 is correct (resistor). There must something else to increase the performance. But the advantage in speed is already noticeable in EM-simulations. So far, maybe somebody has an idea how to improve the performance!

--Update--
I noticed one interesting thing: nvidia-smi reports, clock is running with 732 MHz (TITAN 835MHz or something). If I modify the bios with kepler bios tweaker it doesn't change at all. Cuda-z reports for example 900Mhz but the performance doesn't change. Maybe nvidia-smi is correct and I have to change something else.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on November 17, 2013, 10:35:19 pm
--Update--
I noticed one interesting thing: nvidia-smi reports, clock is running with 732 MHz (TITAN 835MHz or something). If I modify the bios with kepler bios tweaker it doesn't change at all. Cuda-z reports for example 900Mhz but the performance doesn't change. Maybe nvidia-smi is correct and I have to change something else.

You're doing it right if nvidia-smi reports maximum clocks of whatever maximum clocks you modified it with. Of course this might vary since I don't believe K20xm has any notion of Boost clocks -- but if you are still running the original Titan BIOS, then it might actually make a difference:

I had to change the Max GPC, L2C, XBA, SYS Boost States table on my (real) Quadro K6000 BIOS to the clock I set on the Common tab in Kepler BIOS Tweaker for nvidia-smi to report the correct maximum clocks and see the effect on my CUDA code.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 18, 2013, 12:08:05 pm
Is the performance difference between a vanilla Titan and the one modified to a Tesla coming from TCC mode or from something else?

Note that on Kepler class GPUs soft-modding doesn't _actually_ work properly. It sort of almost pretends to work (as in nothing complains), but it doesn't enable any of the extra features. See my post earlier about this - it looks like the driver gets the hard-strap values (check what GPU caps tool reports as device ID vs. the PCI device ID) and acts accordingly. I will know for sure tomorrow when my GTX 690 is fully modified. The key point being that you likely need to hard-mod the 4th nibble as well. If I am reading the diagram correctly, that would mean hooking up a resistor of currently unknown value between VCC and SO on the EEPROM. I have not attempted this yet, so do so at your own risk.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 18, 2013, 05:24:38 pm
Actually, the 4th nibble is hard strapped with a res of 33k between vcc and sck, as posted by oguz286. I think the dp performance is ok, only single precision is poor
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 18, 2013, 05:26:35 pm
Actually, the 4th nibble is hard strapped with a res of 33k between vcc and sck, as posted by oguz286. I think the dp performance is ok, only single precision is poor

That's the 3rd nibble, not the 4th.

Are you using the standard Titan BIOS, or did you flash the Tesla K20c BIOS onto it?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: johnjoe on November 18, 2013, 09:01:27 pm
Ah, ok you mean i have also to adjust the 4th nibble. It is not a titan or k20c bios. It is a extracted k20xm bios from ibm.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 18, 2013, 09:15:09 pm
Ah, ok you mean i have also to adjust the 4th nibble.

Indeed. Soft modding it _might_ work for this, but I have a sneaky suspicion that I'm about to find out that hard-modding is fully required on Keplers, possibly due to Nvidia getting smart to soft-modding. So not only did they not extend the soft-mod strap bits to cover more than the lowest 5, but there is a good chance that the GPU itself remembers the ID as hard strapped, before the EEPROM chip re-straps it with the soft-strap. It's a hunch, so take with a pinch of salt for now. As I said, I'll know in a couple of days when my 690 is back and fully hard-strapped.

It is not a titan or k20c bios. It is a extracted k20xm bios from ibm.

Oh, I see. Any particular reason for that? It might be interesting to try and see if you get different performance with different BIOSes (assuming clocks and power budgets are all adjusted to the same Titan levels using Kepler BIOS Tweaker).

Note: there has recently (a few days ago, on the IRC channel) been some work going on on decoding the power/voltage tables within the nouveau project, and it is unclear whether Kepler BIOS Tweaker might be partially incorrect in it's understanding of these. Those tables are not really used by the BIOS itself, they are there for the driver to parse out and deal with accordingly under various load conditions, hence nouveau project interest in it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on November 18, 2013, 09:26:32 pm
Actually, the 4th nibble is hard strapped with a res of 33k between vcc and sck, as posted by oguz286. I think the dp performance is ok, only single precision is poor
Can you be more explicit? are you saying that DP performance isn't crippled and is 1/3rd the SP performance in your conversion?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 18, 2013, 09:41:02 pm
Actually, the 4th nibble is hard strapped with a res of 33k between vcc and sck, as posted by oguz286. I think the dp performance is ok, only single precision is poor
Can you be more explicit? are you saying that DP performance isn't crippled and is 1/3rd the SP performance in your conversion?

My understanding is that Titan's DP performance is uncrippled anyway (it was one of it's key selling points, being placed between the GeForce and Quadro/Tesla cards in this regard), and johnjoe is modding a Titan (unless I'm misunderstanding what's going on, which may well be the case). Unlocking the full DP performance on a 780/780Ti, OTOH, would be big news.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: IanFist on November 20, 2013, 03:00:30 pm
[...] I have a 4GB GTX680 running a K5000 BIOS, and there is no obvious performance benefit in any test over a standard GTX680 - the only advantage is in persuading the drivers to allow VGA passthrough operation - and even that doesn't seem to work on models more recent than the GTX680.

Hey gordan,
Could you tell me if changed anything in the bios before flashing it? Or could you just flash it after you changed the hard straps?
Where did you obtain this bios?

Quote from: gordan
oguz286, you are a legend! Any chance of a before/after BIOS hex diff? I'd rather like to try to flash a GTX480 with a Q6000 BIOS with RAM size adjusted appropriately and see what effect it has.

Also did you get any further with this?

I think I have a different motivation than most users here. It seems Nvidia have crippled 3Dsmax Viewport performance in their recent cards severely. Since 3Dsmax does not use any of the advanced OpenGl features of the Quadros but Direct 3D (9.0) I don't see any reason why geforce cards should perform as bad as they do. Especially the new kepler cards. A gtx780 is performing alot worse than a gtx 480. We have also have a few gtx 680s and the newest one performs as poorly as the gtx780 although it has the same specs as the older ones.
A Quadro K2000m performs alot better then any of the geforce cards.

I first tested with a gtx480 but changing the sof straps and flashing it with the hardware id to a Quadro 6000 but did not see any performance gains in 3dsmax.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Brechreiz on November 21, 2013, 11:13:52 am
Hi everyone,

thank you for having this delightful topic on the site and all the contributions.
I just registered as i wanted to ask if anyone having a a quadro mod could confirm that the quad buffer function for openGL is available and functional.
If someone has the kindness to spend some minutes for testing, please open the nvidia control panel, goto "manage 3D settings" and find "Stereo enable" on the list. Set it to "enable" as well as the stereo output mode to "generic shutter" (or sth like this) and reboot your computer.
Afterwards the quad buffer should be available.
I dont want to post direct links to downloads - but i have a 50kb exe that then could simply check if the QB is really enabled and available. I've attached a screenshot of the app running and stating that QB is enabled.

Also, I know I'm a first time poster without any reputation.
I've uploaded the QB Test to virustotal and here are the results:
https://www.virustotal.com/de/file/2beb32433c74cbac757c5f63e06562884db0a33714d3bc39a44ea8cdb373f207/analysis/1385032172/ (https://www.virustotal.com/de/file/2beb32433c74cbac757c5f63e06562884db0a33714d3bc39a44ea8cdb373f207/analysis/1385032172/)

Thank you for your time!

Kindest regards
Brechreiz
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 21, 2013, 11:49:33 pm
[...] I have a 4GB GTX680 running a K5000 BIOS, and there is no obvious performance benefit in any test over a standard GTX680 - the only advantage is in persuading the drivers to allow VGA passthrough operation - and even that doesn't seem to work on models more recent than the GTX680.

Could you tell me if changed anything in the bios before flashing it? Or could you just flash it after you changed the hard straps?
Where did you obtain this bios?

Just the straps.
I can't remember where I got it, most likely from the TPU BIOS database.

Quote from: gordan
oguz286, you are a legend! Any chance of a before/after BIOS hex diff? I'd rather like to try to flash a GTX480 with a Q6000 BIOS with RAM size adjusted appropriately and see what effect it has.

Also did you get any further with this?

No, it's a lot of tedious work to analyze the binary init script, and I am not convinced the result would be worthwhile.

I think I have a different motivation than most users here. It seems Nvidia have crippled 3Dsmax Viewport performance in their recent cards severely. Since 3Dsmax does not use any of the advanced OpenGl features of the Quadros but Direct 3D (9.0) I don't see any reason why geforce cards should perform as bad as they do. Especially the new kepler cards. A gtx780 is performing alot worse than a gtx 480. We have also have a few gtx 680s and the newest one performs as poorly as the gtx780 although it has the same specs as the older ones.
A Quadro K2000m performs alot better then any of the geforce cards.

I first tested with a gtx480 but changing the sof straps and flashing it with the hardware id to a Quadro 6000 but did not see any performance gains in 3dsmax.

As far as I can tell from my limited testing, the 3DSMax viewport is software rendered. I tried a genuine Quadro 2000, GTS450, GTS450 modified into a Q2000, GTX470, GTX470->Q5000, GTX480, GTX480->Q6000, GTX580, GTX580->Q7000, GTX680, and GTX680->K5000 and I got about 7fps for the viewport out of all of them, no difference between them at all. Which implies software rendering.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 23, 2013, 01:03:02 pm
General update:

1) Verified that soft-modding DOES NOT WORK on Kepler class GPUs (GTX6xx and later). It _looks_ like it works - the PCI device ID changes. But if you look at the GPU caps viewer, it shows the hard strap device ID. That is the ID the driver keys off, and if you don't set the full hard strap correctly, the driver will load and pretend to work, but will treat the card as a normal GeForce card and will not allow VGA passthrough to work. I have just confirmed this as the key reason why my GTX690/K2 was not working.
1.1) When you part-soft-mod, the driver will initialize the PCIe speed at 1.1 only, regardless of what the card and the bus are capable of. This is the reason why oguz286' mod was causing PCIe speed to always read v1.1 rather than higher.

In conclusion to this part - don't bother soft-modding the straps on the Keplers, it is a waste of time and will just have you chasing your tail for ages trying to figure out why everything seems to check out but doesn't work.

oguz286, if you're reading this, to get your PCIe speed above 1.1, hard-mod the 4th nibble on your 780 and you'll find it magically speeds back up. You might find performance improves in other things, too.

2) Not all GTX690s are the same. I have re-created the problem KamranB had with the modified GTX690 not working. The problem is in the mod for the 3rd nibble (if you want to mod to K2, just leave the 4th nibble resistor off). If you set that resistor to 20K, it seems to cause the SCLK output like going to the GPU to get attenuated too far and all you get is 0s, which will mean the EEPROM cannot be read. That means the card doesn't get it's BIOS initiaized and although it'll show up on the bus, it won't work. Same thing happens if you do a similar mod to oguz's VCC-SCLK resistor and use a resistor that has too low a value. You can leave the 3rd nibble resistor off but the 3rd nibble value will flap between 0xA and 0xB. I have slightly stabilized mine to the point where it is usable if you don't mind sometimes having to double-reboot by putting a 33K resistor across VCC-SCLK, but this is without any of the 3rd nibble resistors fitted. There is probably a better way to do this (maybe 40K on the original 3rd nibble resistor to replace the default 25K, or a lower value instead of 20K on the alternative location for it). I haven't experimented with this more because 1206 component soldering is not far off my manual precision limit, and 0402 is just most certainly beyond it.

GTX690 3rd nibble resistor findings
2.1) 20K on alternative location attenuates too high, eeprom becomes unreadable, card doesn't initialize, and cannot be re-flashed (don't try to re-flash it in this state, erase will work but writing will not, returning a 256-byte page programming error).
2.2) Without either 3rd nibble resistor, 15K across VCC-SCLK attenuates too high and results in the same situation as 2.1)
2.3) Without either 3rd nibble resistor, 27K across VCC-SCLK yields device ID flapping between 0x119F (???) and 0x11AF and 0x11BF. Haven't quite figured out what is going on here.
2.4) Without either 3rd nibble resistor, 33K across VCC-SCLK yields reasonable stable device ID of 0x11BF. Sometimes it flaps down to 0x11AF, but much less frequently than it would without this. Maybe a 40K resistor across those two pins would fix the problem, but I don't have any handy to try.

Anyway, the most important point here is that the documented mod for the 690 isn't universally applicable, so bear this in mind if you are modding a 690.

3) On my system the 690 is having the same dual-link mode problem as my 680. It works fine with SL-DVI modes, but causes the monitor to go to lose signal and go to sleep with a DL-DVI mode is used. Deeply bizzare and I have no explanation available for this one at all, but that does appear to be what happens. I would like to stress that this does not happen on my Quadrofied 480 (Q6000), DL-DVI modes work just fine on that. But since it is happening to me on two different cards modded in different ways, it is probably safe for others to disregard as it seems specific to my system for some unfathomable reason (but if you find the same happens to you, please do let me know, we might be able to figure out what is going on by comparing notes.

4) I have figured out the byte that controls the hierarchy ID (PCIe switch port on multi-GPU cards like the 690) in the BIOS. This would allow you to flash, say, a K5000 BIOS onto the 690, but this wouldn't work because you would need to figure out which bit in the BIOS init sets the memory size and halve it for the K5000 BIOS to work on the 690 (or a 2GB 680).

5) Because of this bizarre DL-DVI issue my 690 isn't going to be useful to me, so if somebody wants it for further experimentation, modding or just using, make me an offer in line with what they sell for on ebay. It's the Gainward model.

And now back to modding the Titan into a K6000. Need to figure out if I can pull the 4th nibble up via the SO line.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: suntzu on November 23, 2013, 02:17:59 pm
I think I have a different motivation than most users here. It seems Nvidia have crippled 3Dsmax Viewport performance in their recent cards severely. Since 3Dsmax does not use any of the advanced OpenGl features of the Quadros but Direct 3D (9.0) I don't see any reason why geforce cards should perform as bad as they do. Especially the new kepler cards. A gtx780 is performing alot worse than a gtx 480. We have also have a few gtx 680s and the newest one performs as poorly as the gtx780 although it has the same specs as the older ones.
A Quadro K2000m performs alot better then any of the geforce cards.

I first tested with a gtx480 but changing the sof straps and flashing it with the hardware id to a Quadro 6000 but did not see any performance gains in 3dsmax.

As far as I can tell from my limited testing, the 3DSMax viewport is software rendered. I tried a genuine Quadro 2000, GTS450, GTS450 modified into a Q2000, GTX470, GTX470->Q5000, GTX480, GTX480->Q6000, GTX580, GTX580->Q7000, GTX680, and GTX680->K5000 and I got about 7fps for the viewport out of all of them, no difference between them at all. Which implies software rendering.

You forgot about CPU limit. There is a small sweet point where 3ds Viewport is not CPU limited...
...Sometimes in 3ds "simpler" GPU is better.
1scenario: you have simple scene few low poly objects. CPU can't generate enough data to fill GPU. So you can mod as you want... CPU will be limited. What GPU will be quicker? Simply fermi with 4SM=>192 shaders load  50%, 770 8SM->1536 shaders load with 8%?

Logic choice would be to make complex scene with advance textures and high poly objects so we create scenario 2:
Some highpoly objects, and a lot low poly like flowers, trees etc.
Again it can be CPU limited scene, a lot Call Draws make CPU bound since GPU will have to rendering a lot of big/small things CPU have to generate a lot of commands to GPU.

Since SandyBridge -> Haswell we gain about 8-20% of performance, GPU we get more than 2 times more power. Always have been that sometimes we were CPU bound, sometimes GPU bount. Now in most cases we are CPU bound.

(http://pclab.pl/zdjecia/artykuly/chaostheory/2013/09/rome2/charts/rome2_cpu_geforce.png)
same here
(http://pclab.pl/zdjecia/artykuly/radek/2013/4960x/wykresy/oc/catia.png)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: IanFist on November 23, 2013, 07:15:46 pm
As far as I can tell from my limited testing, the 3DSMax viewport is software rendered. I tried a genuine Quadro 2000, GTS450, GTS450 modified into a Q2000, GTX470, GTX470->Q5000, GTX480, GTX480->Q6000, GTX580, GTX580->Q7000, GTX680, and GTX680->K5000 and I got about 7fps for the viewport out of all of them, no difference between them at all. Which implies software rendering.

hey gordan, thanks for answering my questions.
There are different viewport rendering modes available actually. Since 3dsmax 2012 the default is the Nitrous renderer which should be states it is directx9 based ( directx 11 for max 2014). On top of that fps changed for me when changing to different cards. surprisingly best results came from quadro k2000m ( but admittedly different system) and radeon 5870.

for the comparison a large scene with high polycount and complex materials was used.

But even considering sun tzus (which I didn't fully understand considering my findings) post I still cant find an explanation why the newer gtx680 in my testing only returned about half the fps from the older one.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 23, 2013, 07:24:59 pm
As far as I can tell from my limited testing, the 3DSMax viewport is software rendered. I tried a genuine Quadro 2000, GTS450, GTS450 modified into a Q2000, GTX470, GTX470->Q5000, GTX480, GTX480->Q6000, GTX580, GTX580->Q7000, GTX680, and GTX680->K5000 and I got about 7fps for the viewport out of all of them, no difference between them at all. Which implies software rendering.

hey gordan, thanks for answering my questions.
There are different viewport rendering modes available actually. Since 3dsmax 2012 the default is the Nitrous renderer which should be states it is directx9 based ( directx 11 for max 2014). On top of that fps changed for me when changing to different cards. surprisingly best results came from quadro k2000m ( but admittedly different system) and radeon 5870.

for the comparison a large scene with high polycount and complex materials was used.

But even considering sun tzus (which I didn't fully understand considering my findings) post I still cant find an explanation why the newer gtx680 in my testing only returned about half the fps from the older one.

It depends on how the rendering is coded. I have seen a number of reports saying that a GTX480 and GTX580 (i.e. top of the line Fermi, there is very little difference between the 480 and 580) significantly outperforms GTX680 in some tasks. Crysis fps and shader counts aren't the only things that define performance. That's why the Quadro 6000 (GF100, spec between GTX470 and GTX480) still fetches almost as much on ebay as the Quadro K5000 (GK104, same spec as GTX680).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: suntzu on November 23, 2013, 10:14:22 pm
As far as I can tell from my limited testing, the 3DSMax viewport is software rendered. I tried a genuine Quadro 2000, GTS450, GTS450 modified into a Q2000, GTX470, GTX470->Q5000, GTX480, GTX480->Q6000, GTX580, GTX580->Q7000, GTX680, and GTX680->K5000 and I got about 7fps for the viewport out of all of them, no difference between them at all. Which implies software rendering.

hey gordan, thanks for answering my questions.
There are different viewport rendering modes available actually. Since 3dsmax 2012 the default is the Nitrous renderer which should be states it is directx9 based ( directx 11 for max 2014). On top of that fps changed for me when changing to different cards. surprisingly best results came from quadro k2000m ( but admittedly different system) and radeon 5870.

for the comparison a large scene with high polycount and complex materials was used.

But even considering sun tzus (which I didn't fully understand considering my findings) post I still cant find an explanation why the newer gtx680 in my testing only returned about half the fps from the older one.
So simply... when viewport is CPU bounded better performance came from better driver, architecture GPU, not horse power.
If you are CPU limited let's assume that you need 50% power of 480...
What will be faster? 480 or Titan?
Ofc 480. Since 240 CC@1,4GHz can get job done much faster than 500 CC@750MHz. Fermi can be TWICE faster than titan if whole frame could be count at one cycle.
If GPU get job done twice faster, CPU can clean things and prepare next frame.

It's know true that AMD driver is much less CPU hunger driver than NV. That's a reason why Radeon 5870 could be faster than NV card's in DX
Another problem here is NV cripple OpenGL performance of GF more than AMD in my experience.... you used DX viewport:)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 24, 2013, 11:44:23 am
Servus,

I changed the marked resistor in the pic from 25k to 40k. Now the pci-id is 1025 instead of 1005 for a Titan. The aim is to get 1020 (K20X). I changed already the resistors near by. But it doesn't changed anything. Somebody any ideas?

Did you have a chance to do any more investigation on the 4th nibble hard-strap on the Titan?
If it works the way I think it does (and that's a big if), the 4th nibble is controlled by the resistor pair directly to the left of the one you changed to 40K to boost the 3rd nibble to 0x2 (0x1005 -> 0x1025). I think that in order to get to 0x1020 you would need to replace the existing resistor in that pair to the left to 5K. That is pulling to ground on the right side and seems to be connected to SO on the left side.

If I'm right, you should also be able to apply a similar trick to bridging VCC and SCLK with a resistor by connecting SO and GND. If the current ID is 5 that would make the resistor to be modded 30K. to reduce that overal resistance to 5K you would need a 6K resistor between SO and GND.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 24, 2013, 03:30:28 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

thanks
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ilya80 on November 24, 2013, 04:38:59 pm
Hi guys!

Just here to report we successfully removed resistors 1 & 3 from the reference design PNY GTX 680 and it now reports itself as GRID K2. Here's screenshot taken in bare-metal Windows 7 with Quadro/Grid/Tesla drivers installed:

(http://s18.postimg.org/ipkqnqwg9/GRIDK2.png)

Card model is:

http://www3.pny.com/GTX-680-2048MB-PCIe-font-colordc0431-BONUS-16ft-Smart-Active-High-Speed-HDMI-Cable-includedfont-P3123C506.aspx (http://www3.pny.com/GTX-680-2048MB-PCIe-font-colordc0431-BONUS-16ft-Smart-Active-High-Speed-HDMI-Cable-includedfont-P3123C506.aspx)

Resistors removed are 1 & 3, picture below ( courtesy of the guys who did the mod in the first place )

(https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=43392;image)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 25, 2013, 12:02:22 pm
If it works the way I think it does (and that's a big if), the 4th nibble is controlled by the resistor pair directly to the left of the one you changed to 40K to boost the 3rd nibble to 0x2 (0x1005 -> 0x1025). I think that in order to get to 0x1020 you would need to replace the existing resistor in that pair to the left to 5K. That is pulling to ground on the right side and seems to be connected to SO on the left side.

If I'm right, you should also be able to apply a similar trick to bridging VCC and SCLK with a resistor by connecting SO and GND. If the current ID is 5 that would make the resistor to be modded 30K. to reduce that overal resistance to 5K you would need a 6K resistor between SO and GND.

I just tried this and can confirm that this is not the case. It looks like the SO line is not what controls the 4th nibble. I also tried connecting HOLD# (directly connected to VCC, it seems) to SI with a resistor, and that didn't affect the 4th nibble either. Since those 3 pins (SCLK, SI and SO) are what is connected to the 3 resistor pairs near the EEPROM, it looks like SI and SO aren't what controls the 4th nibble. This also tallies up with johnjoe's findings, which means the other ID straps must be somewhere else. There are at least 5 pairs of plausible looking resistors on the back of the Titan PCB, right opposite the EEPROM. It is likely one of those (GTX680 has a similar arrangement, where the pull-down resistor controlling the 4th nibble is on the back but the pull-up is on the front).

3 of the pairs seem to be reading 0 resistance across the fitted resistors, so it probably isn't those. The remaining two pairs are highlighted in the attached photo, and one of each pair does seem to be connected to VCC and GND, as the strap resistors would be.

I don't suppose anyone here with a Titan or GTX780 happens to have some higher precision equipment and more dexterity than me to test that hypothesis?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 25, 2013, 12:19:00 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

You'll find that even most non-reference GTX670/GTX680 cards only differ minimally from the reference design, and the strap resistors are in the same locations. I have a Gainward Phantom GTX680 card which is technically non-reference, and I successfully modified it. You could actually try a part-mod. If you want to use it for virtualization, I read somewhere that Tesla K10 is supported for PCI passthrough, which means you wouldn't even have to remove the resistor controlling the 3rd nibble - only remove the one controlling the 4th. That should give you ID 0x118F for Tesla K10 and you might find it works just fine. Best of all, the resistor that controls the 4th nibble is on the back of the card, which means you wouldn't even have to take off the heatsink. Please report back if/when you do it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 25, 2013, 12:25:40 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

You'll find that even most non-reference GTX670/GTX680 cards only differ minimally from the reference design, and the strap resistors are in the same locations. I have a Gainward Phantom GTX680 card which is technically non-reference, and I successfully modified it. You could actually try a part-mod. If you want to use it for virtualization, I read somewhere that Tesla K10 is supported for PCI passthrough, which means you wouldn't even have to remove the resistor controlling the 3rd nibble - only remove the one controlling the 4th. That should give you ID 0x118F for Tesla K10 and you might find it works just fine. Best of all, the resistor that controls the 4th nibble is on the back of the card, which means you wouldn't even have to take off the heatsink. Please report back if/when you do it.

This is awesome advice, thanks. Can you help with the identification of the resistor(s)? I will take a pic of the card when I get home. Also, do you know if SLI will work if I pass through both cards to a VM?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 25, 2013, 12:34:03 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

You'll find that even most non-reference GTX670/GTX680 cards only differ minimally from the reference design, and the strap resistors are in the same locations. I have a Gainward Phantom GTX680 card which is technically non-reference, and I successfully modified it. You could actually try a part-mod. If you want to use it for virtualization, I read somewhere that Tesla K10 is supported for PCI passthrough, which means you wouldn't even have to remove the resistor controlling the 3rd nibble - only remove the one controlling the 4th. That should give you ID 0x118F for Tesla K10 and you might find it works just fine. Best of all, the resistor that controls the 4th nibble is on the back of the card, which means you wouldn't even have to take off the heatsink. Please report back if/when you do it.

This is awesome advice, thanks. Can you help with the identification of the resistor(s)? I will take a pic of the card when I get home. Also, do you know if SLI will work if I pass through both cards to a VM?

Have you checled the 680 photos posted here on the forum that show the location of the resistors? Have you had a look at your card to identify if the resistors are in the same place(s)?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 25, 2013, 01:04:39 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

You'll find that even most non-reference GTX670/GTX680 cards only differ minimally from the reference design, and the strap resistors are in the same locations. I have a Gainward Phantom GTX680 card which is technically non-reference, and I successfully modified it. You could actually try a part-mod. If you want to use it for virtualization, I read somewhere that Tesla K10 is supported for PCI passthrough, which means you wouldn't even have to remove the resistor controlling the 3rd nibble - only remove the one controlling the 4th. That should give you ID 0x118F for Tesla K10 and you might find it works just fine. Best of all, the resistor that controls the 4th nibble is on the back of the card, which means you wouldn't even have to take off the heatsink. Please report back if/when you do it.

This is awesome advice, thanks. Can you help with the identification of the resistor(s)? I will take a pic of the card when I get home. Also, do you know if SLI will work if I pass through both cards to a VM?

Have you checled the 680 photos posted here on the forum that show the location of the resistors? Have you had a look at your card to identify if the resistors are in the same place(s)?

Not yet, I will do this. I am keen to know if SLI will work or not. Or is it that K series or Quadro don't allow for SLI??
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 25, 2013, 01:15:25 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

You'll find that even most non-reference GTX670/GTX680 cards only differ minimally from the reference design, and the strap resistors are in the same locations. I have a Gainward Phantom GTX680 card which is technically non-reference, and I successfully modified it. You could actually try a part-mod. If you want to use it for virtualization, I read somewhere that Tesla K10 is supported for PCI passthrough, which means you wouldn't even have to remove the resistor controlling the 3rd nibble - only remove the one controlling the 4th. That should give you ID 0x118F for Tesla K10 and you might find it works just fine. Best of all, the resistor that controls the 4th nibble is on the back of the card, which means you wouldn't even have to take off the heatsink. Please report back if/when you do it.

This is awesome advice, thanks. Can you help with the identification of the resistor(s)? I will take a pic of the card when I get home. Also, do you know if SLI will work if I pass through both cards to a VM?

Have you checled the 680 photos posted here on the forum that show the location of the resistors? Have you had a look at your card to identify if the resistors are in the same place(s)?

Not yet, I will do this. I am keen to know if SLI will work or not. Or is it that K series or Quadro don't allow for SLI??

I have never tried SLI - I'm pretty sure Grids/Teslas don't support it so the driver doesn't expose it. Then again there are a lot of extra limitations in a VM, I noticed that several options that appear on bare metal don't appear on the VM with the same card (e.g. on XP64 domU the PhysX options don't appear, but on bare metal they do). So I wouldn't pre-emptively expect SLI to work, but if you discover otherwise, please, do report back.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 25, 2013, 01:38:48 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

You'll find that even most non-reference GTX670/GTX680 cards only differ minimally from the reference design, and the strap resistors are in the same locations. I have a Gainward Phantom GTX680 card which is technically non-reference, and I successfully modified it. You could actually try a part-mod. If you want to use it for virtualization, I read somewhere that Tesla K10 is supported for PCI passthrough, which means you wouldn't even have to remove the resistor controlling the 3rd nibble - only remove the one controlling the 4th. That should give you ID 0x118F for Tesla K10 and you might find it works just fine. Best of all, the resistor that controls the 4th nibble is on the back of the card, which means you wouldn't even have to take off the heatsink. Please report back if/when you do it.

This is awesome advice, thanks. Can you help with the identification of the resistor(s)? I will take a pic of the card when I get home. Also, do you know if SLI will work if I pass through both cards to a VM?

Have you checled the 680 photos posted here on the forum that show the location of the resistors? Have you had a look at your card to identify if the resistors are in the same place(s)?

Not yet, I will do this. I am keen to know if SLI will work or not. Or is it that K series or Quadro don't allow for SLI??

I have never tried SLI - I'm pretty sure Grids/Teslas don't support it so the driver doesn't expose it. Then again there are a lot of extra limitations in a VM, I noticed that several options that appear on bare metal don't appear on the VM with the same card (e.g. on XP64 domU the PhysX options don't appear, but on bare metal they do). So I wouldn't pre-emptively expect SLI to work, but if you discover otherwise, please, do report back.

If I manage to bork both of my 670s I will post it here. If only I had money to burn on the Palit 780ti , I would love to know if this could be converted to the pro equivalent.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 25, 2013, 01:48:26 pm
It's hard not to get excited over modding a GTX to a Quadro or K series pro card. However, is there any particular reference or non-reference GTX 6 series that can be modded 100%? I am willing to take the risk if it's not too difficult.

Actually, I have the GTX670-DC2-4GD5 non reference, has anyone attempted it on this card and had any luck? Please let us know.

You'll find that even most non-reference GTX670/GTX680 cards only differ minimally from the reference design, and the strap resistors are in the same locations. I have a Gainward Phantom GTX680 card which is technically non-reference, and I successfully modified it. You could actually try a part-mod. If you want to use it for virtualization, I read somewhere that Tesla K10 is supported for PCI passthrough, which means you wouldn't even have to remove the resistor controlling the 3rd nibble - only remove the one controlling the 4th. That should give you ID 0x118F for Tesla K10 and you might find it works just fine. Best of all, the resistor that controls the 4th nibble is on the back of the card, which means you wouldn't even have to take off the heatsink. Please report back if/when you do it.

This is awesome advice, thanks. Can you help with the identification of the resistor(s)? I will take a pic of the card when I get home. Also, do you know if SLI will work if I pass through both cards to a VM?

Have you checled the 680 photos posted here on the forum that show the location of the resistors? Have you had a look at your card to identify if the resistors are in the same place(s)?

Not yet, I will do this. I am keen to know if SLI will work or not. Or is it that K series or Quadro don't allow for SLI??

I have never tried SLI - I'm pretty sure Grids/Teslas don't support it so the driver doesn't expose it. Then again there are a lot of extra limitations in a VM, I noticed that several options that appear on bare metal don't appear on the VM with the same card (e.g. on XP64 domU the PhysX options don't appear, but on bare metal they do). So I wouldn't pre-emptively expect SLI to work, but if you discover otherwise, please, do report back.

If I manage to bork both of my 670s I will post it here. If only I had money to burn on the Palit 780ti , I would love to know if this could be converted to the pro equivalent.

I'm more interested to hear if you find that Tesla K10 works with virtualization,

780/Titan aren't fully hacked yet - we are still looking for the resistors that control the 4th nibble. I think I found two most probable candidates, but soldering 0402 components is beyond the limits of my hand steadyness.

Another thing that I've been pondering is that there are clearly a number of other strap resistors, they just aren't the ones that control the device ID. The reason why I'm pondering this is because one of them might be controlling the disabled GL primitives that make Quadros perform much better in applications that rely on them.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 25, 2013, 07:13:51 pm
Due to popular demand, I have finally found time to write this up. I had to rush it a little, but hopefully you get the gist.
Nvidia GeForce 4xx Fermi Soft Modding Guide (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

Any questions, please ask away, and I'll update the article to expand on those points where appropriate.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 25, 2013, 07:31:32 pm
Due to popular demand, I have finally found time to write this up. I had to rush it a little, but hopefully you get the gist.
Nvidia GeForce 4xx Fermi Soft Modding Guide (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

Any questions, please ask away, and I'll update the article to expand on those points where appropriate.

Fantastic! Please let us all know when you have finished your Kepler guide, awesome work.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 26, 2013, 05:01:14 pm
Due to popular demand, I have finally found time to write this up. I had to rush it a little, but hopefully you get the gist.
Nvidia GeForce 4xx Fermi Soft Modding Guide (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

Any questions, please ask away, and I'll update the article to expand on those points where appropriate.

Fantastic! Please let us all know when you have finished your Kepler guide, awesome work.

Arguably this thread _IS_ the Kepler modding guide, you know. :)

My main motivation for writing an article about it is to summarize what works and what doesn't, and condense the information so that it isn't necessary to read through 51 (and still ticking up) pages of posts to find all the important info.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 26, 2013, 07:43:56 pm
I just wanted to post my experience on average ebay/amazon used price for top notch cards!

Average sales price:

Grid K2  : 1650$ [Geforce 690 new cost $1000 !!]

Tesla K10: $1600 [ same thing as Grid K2 mostly]

Tesla K20: $1600 [k20 is almost like K6000, Quadro K40 is K6000 exactly!]

Quadro 6000: $690 [ older FERMI model that works great with ESXi but doesn't have VGX]

Quadro 4000: $200 [ older fermi model, no ecc]

What I'd like to do is locate possible KEPLER cards that would be a good conversion (sensible to hack)!

Hacking a $1000 Geforce 690 to become a $1650 grid K2 seems a little illogical (risk versus cost)

But hacking a $120 Quadro K600 or NVS into one fourth of a Grid K1 might be a good value!



Just fyi
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Luke212 on November 27, 2013, 02:07:31 am
Hello,

Thank you for the work in this thread. I am interested in modding a Titan to a TCC enabled device. It will dramatically improve performance in Cuda. The background information is that Titan uses the WDDM display mode driver, which incurs a massive delay every time a kernel is executed. The TCC mode does not suffer this delay because it bypasses the windows WDDM driver.

From what I read, I need to solder a resistor on to the board, flash a K20c bios, and do a hex soft mod? I have very little experience in any of these steps. I will re-read the thread to try an absorb it all, but if there were a guide to go through these steps for beginners, I am sure it would be very popular and greatly appreciated. Thanks again for the hard work here.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 27, 2013, 08:32:37 am
Thank you for the work in this thread. I am interested in modding a Titan to a TCC enabled device. It will dramatically improve performance in Cuda. The background information is that Titan uses the WDDM display mode driver, which incurs a massive delay every time a kernel is executed. The TCC mode does not suffer this delay because it bypasses the windows WDDM driver.

From what I read, I need to solder a resistor on to the board, flash a K20c bios, and do a hex soft mod? I have very little experience in any of these steps. I will re-read the thread to try an absorb it all, but if there were a guide to go through these steps for beginners, I am sure it would be very popular and greatly appreciated. Thanks again for the hard work here.

The Titan/780 mod isn't ready for public consumption yet. Specifically, we still need to find the resistor pair controlling the 4th nibble. Soft-modding via a BIOS patch does not work on Kepler class GPUs. It will affect the PCI device ID, which will make it appear to work, but the device ID seems to be notified to the GPU via the hard-strap before the EEPROM gets read and the BIOS payload is executed. The driver queries the device ID from the GPU directly, and enables features based on that. To make it worse, if the driver notices the discrepancy between the GPU device ID and PCI device ID it will lock down PCIe speed to 1.1, which will further cripple the performance on I/O heavy tasks.

If you want a TCC capable card and you don't want to have to bother with soldering, get a Fermi class GPU and mod it into a Quadro (or a Tesla), for example a GTX480 and mod it into a Quadro 6000. Instructions are in the Fermi/4xx soft modding guide linked above.

If a Fermi isn't good enough for your number crunching needs, you could go with a GTX 670/680/770 mod into a Tesla K10. This involves only a removal of one resistor, and that resistor is on the back of the PCB, so you wouldn't even have to take off the heatsink. Note that for some kernels a GK104 Kepler is slower than a GF100 Fermi.

My advice would be to wait until the resistor pair controlling the 4th nibble is confirmed. I think I found two good candidates, but my soldering skills aren't good enough for 0402 size components to attempt it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 27, 2013, 04:24:23 pm
I just wanted to post my experience on average ebay/amazon used price for top notch cards!

Average sales price:

Grid K2  : 1650$ [Geforce 690 new cost $1000 !!]

Tesla K10: $1600 [ same thing as Grid K2 mostly]

Tesla K20: $1600 [k20 is almost like K6000, Quadro K40 is K6000 exactly!]

Quadro 6000: $690 [ older FERMI model that works great with ESXi but doesn't have VGX]

Quadro 4000: $200 [ older fermi model, no ecc]

What I'd like to do is locate possible KEPLER cards that would be a good conversion (sensible to hack)!

Hacking a $1000 Geforce 690 to become a $1650 grid K2 seems a little illogical (risk versus cost)

But hacking a $120 Quadro K600 or NVS into one fourth of a Grid K1 might be a good value!

You are missing a few points.

1) Grid K1 is based on GK208, which is also what what GeForce 630/635/640 is based on which is still significantly cheaper than the Quadro K600. Why exactly not modify that instead?

The only possible advantage is if you need the few missing GL primitives implemented in hardware/FPGA/whatever that the real Quadros have and GeForces don't, but that's only useful for the kind of people who use the sort of apps whose performance is reflected in the likes of SPECviewperf, and those people aren't the types that will be bothered with saving a few thousand $ on hardware since their company will be paying for it, and unless they are a very tightly run cheap company, their CTO will probably want to hide behind the support contract that is only applicable on supported hardware, which won't include modified GeForce cards.

2) Grid/Tesla cards are all well and good if all you want to do is use them only for number crunching or vSGA, but most of us actually want VGA passthrough / vDGA which you cannot achieve with a real Grid or recent Kepler Tesla cards for the simple reason that they have no video outputs. In this way a 690 is a good option whereas a Grid K2 wouldn't work at all.

3) You are comparing the prices of new GeForce cards with second hand Grid/Tesla/Quadro cards. This is non-sensical since nobody here is likely to be buying a new card just so they can immediately void the warranty on it. Especially when a second hand one that will do just as well can be had with a hefty discount. You really need to think properly about who the target audience here is.

4) Quadro 6000 (and 5000) does in fact work just with vSGA. There have been numerous reports of a demo system at a show a couple of years ago running up to 6 thin clients using HorizonView and vSGA, running Borderlands at 800x600@25fps on each client, all off a single Quadro 6000 in a single ESXi host. A GTX480 modified into a Q6000 would actually fare about 30% better under that load because it has both more shaders and a higher clock speed.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: echen1024 on November 27, 2013, 04:39:49 pm
Do you think one of these hacked Quadros could drive IBM's T221 3840x2400 monitors?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 27, 2013, 05:00:14 pm
Do you think one of these hacked Quadros could drive IBM's T221 3840x2400 monitors?

I do indeed have a pair of T221 monitors on my desk, so I can promise you that every Nvidia card with a sufficient number of DVI connectors on the back of it will drive them absolutely fine. Having said that - my Nvidia cards have been driving them just fine before they were modified, too. If you have a DL-DVI adapter for the T221 (DG5/DGP only), you can run it off a single card with 2xDL-DVI.

You'll find a number of articles on the T221 and what works and what doesn't here:
T221 (https://altechnative.net/tag/t221/)
I am writing another update on the T221 for use with Xorg that I'll push out shortly, about defeating xrandr in favour of xinerama (xrandr is a braindead abomination that seems to fundamentally prevent desktop stretching across multiple monitors).

ATI, OTOH, are utterly incapable of handling those monitors. There are no ATI cards newer than HD4xxx series that have more than one DL-DVI port (the other port looks like DL but is only SL). And even on 4xxx series there are major, major issues with drivers more recent than circa 2008 vintage, that make them not work. Worse, even those ancient drivers that do work have an issue where randomly upon a reboot, the monitors come up swapped around (which makes a T221 completely unusable).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 27, 2013, 05:36:58 pm
gordan, let me know if you want me to replicate your environment, might be useful to mirror setup (XEN) to see where things diverge..
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 27, 2013, 06:24:16 pm
Do you think one of these hacked Quadros could drive IBM's T221 3840x2400 monitors?

things are bout to change. Let's say big monitors and fruit. soon. that resolution will be everyday ordinary very soon.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 27, 2013, 06:57:54 pm
Do you think one of these hacked Quadros could drive IBM's T221 3840x2400 monitors?

things are bout to change. Let's say big monitors and fruit. soon. that resolution will be everyday ordinary very soon.

I'm not going to hold my breath. People have been saying that since 2003 and it has failed to materialize. There is still no other monitor that will do 3840x2400. The closest is the new Asus that does 3840x2160, and that's 31", which is too big IMO - too much looking side to side. 24" is about the limit of what I'd consider nowdays (having had a 30" Dell before the T221s).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Luke212 on November 27, 2013, 10:19:02 pm

I'm not going to hold my breath. People have been saying that since 2003 and it has failed to materialize. There is still no other monitor that will do 3840x2400. The closest is the new Asus that does 3840x2160, and that's 31", which is too big IMO - too much looking side to side. 24" is about the limit of what I'd consider nowdays (having had a 30" Dell before the T221s).

Dell released a 32" 3840x2160 which is the same panel as the Asus. It's quite expensive. I do think we will start to see a shift as the push to 4K televisions is in it's infancy. But it will take a while. I am more interested in VR these days. I think Oculus has made some improvements since the Rift, and it feels to me this is the way to go.  Also thanks for your summary of your Titan hacks. I look forward to progress in this area.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 27, 2013, 10:51:47 pm
Have you noticed the grid K2 and it's USM's pci-id is very close?  I think you might be onto something when you said software.  Perhaps the card is dispatching nearby pci functions to enable the grid vgx licensing?

I'm going to get some dinner and take a close look at the bitmask  pattern of K2-> K2 USM and K1-> K1 USM , perhaps there is a pattern to this madness.

For example for "Grid K2"
- Physical Function PCIid: 10ed:11bf - GK104GL [GRID K2]
- Virtual Function selectable from
PCIid: 10ed:118b - GK104 [GeForce K2 USM]
PCIid: 10ed:118c - GK104 [NVS K2 USM]
PCIid: 10ed: 11b0 - GK104GL [Quadro K2 USM]
PCIid: 10ed:11b1 - GK104GL [Tesla K2 USM]


these look very interesting. I think I have the mobile quadro in a Z1 , GTX 660 is oddly very close by :)

NVIDIA_DEV.11BE = "NVIDIA Quadro K3000M"
NVIDIA_DEV.11BF = "NVIDIA GRID K2"
NVIDIA_DEV.11C0 = "NVIDIA GeForce GTX 660 "
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 27, 2013, 11:35:45 pm
Have you noticed the grid K2 and it's USM's pci-id is very close?  I think you might be onto something when you said software.  Perhaps the card is dispatching nearby pci functions to enable the grid vgx licensing?

I'm going to get some dinner and take a close look at the bitmask  pattern of K2-> K2 USM and K1-> K1 USM , perhaps there is a pattern to this madness.

For example for "Grid K2"
- Physical Function PCIid: 10ed:11bf - GK104GL [GRID K2]
- Virtual Function selectable from
PCIid: 10ed:118b - GK104 [GeForce K2 USM]
PCIid: 10ed:118c - GK104 [NVS K2 USM]
PCIid: 10ed: 11b0 - GK104GL [Quadro K2 USM]
PCIid: 10ed:11b1 - GK104GL [Tesla K2 USM]

I have no idea what you are talking about. Can you elaborate? What is "USM"?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 28, 2013, 12:10:28 am
best to digest this way:

http://bramwolfs.com/tag/nvidia-vgx/ (http://bramwolfs.com/tag/nvidia-vgx/)

http://www.nvidia.com/object/user-selectable-machines.html (http://www.nvidia.com/object/user-selectable-machines.html)

USM = mode of emulation. Makes you wonder if this is all licensing related?

http://on-demand.gputechconf.com/siggraph/2013/presentation/SG3112-GRID-State-Art-Virtualized-Graphics.pdf (http://on-demand.gputechconf.com/siggraph/2013/presentation/SG3112-GRID-State-Art-Virtualized-Graphics.pdf)

check this out: for windows 7 64bit ->     NVIDIA GRID vGPU Software Release 331 WHQL NVIDIA Recommended    331.82    25.11.2013
Release Highlights:

The release package includes both Windows Display Driver (331.82) and  :-+ GRID vGPU Manager (331.24)  :-+

This software package enables NVIDIA GRID vGPU providing shared hardware based graphics acceleration for Windows VMs running on Citrix XenServer 6.2.

Note: If you do not run NVIDIA GRID vGPU, NVIDIA recommends using driver version 320.86 or higher.

Existing Support:

    Support for OpenGL 4.4
    Support for DirectX11.1

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 28, 2013, 07:34:20 am
I see - so these are device IDs of different GPUs that the K2 can "emulate" and expose to the domU, which the Nvidia driver knows about. Hmm... I wonder if it would work if a GK104 card were modified to one of those emulated device IDs.

Edit: Something just occured to me - what is the bet that this works similarly to the hard vs. soft strap?
Recap: You have to modify the hard-strap for Kepler cards to work virtualized - soft-strapping doesn't enable the feature, and viewing the device ID using Geeks3D GPU Caps viewer shows the hard strapped ID rather than effective PCI ID. If the hard-strap isn't something virtualizable, virtualization doesn't work.

Ergo, it would stand to reason that the emulated ID is within 5 least significant bits of variance of the hard-strapped ID.
This also explains why my GTS 680 hard-strapped to Grid K2 worked fine when soft-strapped to K5000. I'll be that I could have soft-strapped it to one of the USM IDs and it would have worked just fine.

What this implies is that if you hard-strap to K2, you can then just load a differently strapped BIOS (e.g. via nouveau BIOS loader) before passing to the VM and the VM would see the card according to the soft-straps.

So they licence you for loading a specific BIOS to re-strap the card.

Clearly there is more to it because there is GPU sharing involved as well, so there is some extra abstraction and arbitration going on, but I think this might sort of the the core idea behind it. It also explains why the soft-straps for IDs are still there in the new BIOSes (with new straps in new places) even though we have only seen hard-straps to be effective at achieving virtualization capabilities.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: h1386343 on November 28, 2013, 10:00:39 am
All this just to change name in windows without any performance benefit in professional apps, look at this charts!

(http://media.bestofmicro.com/Z/8/382292/original/03-OpenGL-SPECViewperf11-01-Catia-03.png)

(http://media.bestofmicro.com/Z/A/382294/original/03-OpenGL-SPECViewperf11-03-Lightwave-01.png)

(http://media.bestofmicro.com/Z/B/382295/original/03-OpenGL-SPECViewperf11-04-Maya-03.png)

If anyone interested in SPECviewperf, here the download links:
SPECviewperf 11 32bits - http://spec.it.miami.edu/downloads/gpc/opc/viewperf/SPECviewperf11win32.exe (http://spec.it.miami.edu/downloads/gpc/opc/viewperf/SPECviewperf11win32.exe)
SPECviewperf 11 64bits - http://spec.it.miami.edu/downloads/gpc/opc/viewperf/SPECviewperf11win64.exe (http://spec.it.miami.edu/downloads/gpc/opc/viewperf/SPECviewperf11win64.exe)


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 28, 2013, 10:27:28 am
All this just to change name in windows without any performance benefit in professional apps, look at this charts!

Are you trolling? Or working for Nvidia's damage control team?

No, the modifications in question do not enable the handful of GL primitives missing on non-Quadro cards. The performance is also deliberately crippled in the drivers - those primitives are emulated extremely inefficiently. As the nouveau Linux drivers get more mature (applications which SPECviewperf measures the performance of also run on Linux), there is a good chance the SPECviewperf performance figures will actually be better on a GeForce with nouveau drivers than with Nvidia's binary drivers. Perhaps I'll put a recent Fedora on a machine and test whether this has already, in fact, happened.

What this thread always was about is enabling other features that are purely up to the driver, such as whether a card will work with VGA passthrough/vDGA and vSGA for virtualization purposes. Vast majority of us here don't give half a damn about SPECviewperf figures (but I will still laugh my guts out if it turns out GeForce + nouveau yields better SPEC scores than GeForce + nvidia). What we do care about is decent surround monitor support (gnif's original motivation) and even more so about decent virtualization support - both of which are purely down to the driver deciding to arbitrarily not enable the feature set on GeForce cards because the owner hasn't paid enough for the privilege.

Personally, I think the most awesome outcome would be for the nouveau project to just produce Windows drivers in addition to the Xorg drivers. The second most awesome outcome would be for Nvidia to not disable said features in the drivers.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 28, 2013, 10:53:56 am
Update:
As some of you that have been following this thread are aware, I've been having a rather bizzare problem with only DL-DVI working on my modifed GK104 based cards (680 and 690). It just occurred to me that the two cards I have happen to have on thing in common - they are both Gainward cards. Has anyone else successfully managed to get DL-DVI to work in a VM with a Gainward GTX680 Phantom 4GB or Gainward GTX690? Gainward 690s have a few strapping resistors in different places to the EVGA and other 690s, so it is plausible they made some tweaks that cause the problem. Does anyone have either of those cards working with DL-DVI outputs successfully?

On a separate note, I just learned that GTX780Ti has device ID 0x100A. K6000 is 0x103A. We only need to change the 3rd nibble (via oguz286's awesome mod). His mod is to use a 33K resistor to jack up the 3rd nibble from 0 to 2. On my Titan using an 18K resistor instead boosts the ID to 3. So to make a 780Ti to a K6000, simply apply an 18K resistor between VCC and SCLK and voila, job done. For extra points, solder a couple of wires between those pins, solder an 18K resistor on one of them, and a switch to connect them. Break the switch out somewhere accessible (extra extra points for making the switch easily and neatly accessible from the back of the card without obstructing the airflow too badly). Now you can switch between a 780Ti and a K6000 at a flip of a single switch.

Needless to say, the neatness of this means that I'll be acquiring a 780Ti as soon as I've ebayed my Titan.

Edit: Maybe I'll keep my Titan for a little bit longer, as if the PCB is the same (which it almost certainly is), it should be very obvious which resistors are configured differently for the 4th nibble. Watch this space.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 28, 2013, 03:34:51 pm
Update:
As some of you that have been following this thread are aware, I've been having a rather bizzare problem with only DL-DVI working on my modifed GK104 based cards (680 and 690). It just occurred to me that the two cards I have happen to have on thing in common - they are both Gainward cards. Has anyone else successfully managed to get DL-DVI to work in a VM with a Gainward GTX680 Phantom 4GB or Gainward GTX690? Gainward 690s have a few strapping resistors in different places to the EVGA and other 690s, so it is plausible they made some tweaks that cause the problem. Does anyone have either of those cards working with DL-DVI outputs successfully?

On a separate note, I just learned that GTX780Ti has device ID 0x100A. K6000 is 0x103A. We only need to change the 3rd nibble (via oguz286's awesome mod). His mod is to use a 33K resistor to jack up the 3rd nibble from 0 to 2. On my Titan using an 18K resistor instead boosts the ID to 3. So to make a 780Ti to a K6000, simply apply an 18K resistor between VCC and SCLK and voila, job done. For extra points, solder a couple of wires between those pins, solder an 18K resistor on one of them, and a switch to connect them. Break the switch out somewhere accessible (extra extra points for making the switch easily and neatly accessible from the back of the card without obstructing the airflow too badly). Now you can switch between a 780Ti and a K6000 at a flip of a single switch.

Needless to say, the neatness of this means that I'll be acquiring a 780Ti as soon as I've ebayed my Titan.

That has made my day! Looking forward to a mod on a Palit, Zotac or Asus non ref 780ti. If this works, I will defo be buying one of those.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Macker on November 29, 2013, 11:37:57 am
Hey guys, I'm new here and I know there is probably a place/thread to introduce myself, but I couldn't keep myself away from this one.

I work in 3D graphics and have been looking at moving into GPU rendering, but the cost of the quadro's is just so damn much! I am currently using a k4000 at work, but on my home rig that I am speccing, I am seriously considering this kind of mod. Whilst I'm sure this has been covered in this thread, it's already at 52 pages long(!) so I guess I'll have to ask again;

1) what are the potential pitfalls of this?
2) I am no electrical technician/engineer, so how much will I need to learn to do this? I am willing to put a bit of time into it.

Thanks in advance, and well done on the hack!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 29, 2013, 11:51:54 am
I work in 3D graphics and have been looking at moving into GPU rendering, but the cost of the quadro's is just so damn much! I am currently using a k4000 at work, but on my home rig that I am speccing, I am seriously considering this kind of mod. Whilst I'm sure this has been covered in this thread, it's already at 52 pages long(!) so I guess I'll have to ask again;

1) what are the potential pitfalls of this?
2) I am no electrical technician/engineer, so how much will I need to learn to do this? I am willing to put a bit of time into it.

1) Your application may not befit. Modified cards do not have the full feature set of the real Quadros. For example, the SPECviewperf scores are no different from a normal GeForce card, and stereo 3D remains unavailable.

2) For Tesla and Fermi series cards (GeForce 2xx/3xx/4xx) no hardware modification is required - you just need to modify the BIOS by about half a byte. See the link I posted above (or website link under my profile) for more details on that. What cards does your application support for rendering? If it supports GeForce cards, you probably don't need to modify them. If it only supports Quadros, see if it supports Quadro 5000 or 6000. If so, I would suggest you get yourself a relatively cheap 4xx series card (GTX470 or GTX480), and modify them into a corresponding Quadro (470 -> 5000, 480 -> 6000), and see how that fares.

Almost all of us here are mainly interested in the modding to get virtualization features and TCC working (those are the big wins), so if you decide to go down this route, please report your findings/results/before+after results - it would be nice to get some feedback from someone using this for 3D rendering purposes.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Macker on November 29, 2013, 12:05:49 pm
I work in 3D graphics and have been looking at moving into GPU rendering, but the cost of the quadro's is just so damn much! I am currently using a k4000 at work, but on my home rig that I am speccing, I am seriously considering this kind of mod. Whilst I'm sure this has been covered in this thread, it's already at 52 pages long(!) so I guess I'll have to ask again;

1) what are the potential pitfalls of this?
2) I am no electrical technician/engineer, so how much will I need to learn to do this? I am willing to put a bit of time into it.

1) Your application may not befit. Modified cards do not have the full feature set of the real Quadros. For example, the SPECviewperf scores are no different from a normal GeForce card, and stereo 3D remains unavailable.

2) For Tesla and Fermi series cards (GeForce 2xx/3xx/4xx) no hardware modification is required - you just need to modify the BIOS by about half a byte. See the link I posted above (or website link under my profile) for more details on that. What cards does your application support for rendering? If it supports GeForce cards, you probably don't need to modify them. If it only supports Quadros, see if it supports Quadro 5000 or 6000. If so, I would suggest you get yourself a relatively cheap 4xx series card (GTX470 or GTX480), and modify them into a corresponding Quadro (470 -> 5000, 480 -> 6000), and see how that fares.

Almost all of us here are mainly interested in the modding to get virtualization features and TCC working (those are the big wins), so if you decide to go down this route, please report your findings/results/before+after results - it would be nice to get some feedback from someone using this for 3D rendering purposes.

Well basically I run 3DS Max, in which the viewport performance gains between quadro & gtx are pretty huge; but as for 3D rendering the GTX cards are on a par with the high end quadro's to be honest, so that's not really where I'd be looking at getting any benefits. All CUDA enabled cards are supported in the rendering package (VRay) afaik.

I'd purely be doing it so that I can get higher FPS whilst modelling things. I work in architectural visualisation, so (due to high res foliage usually!) I often end up with 10~20 million polygon models, which would grind to a halt on a GTX. I am looking to set up a 3D PC at home, but don't have the kind of budget for a quadro - hence being so interested in these mods.

[Edit]I'm still not entirely convinced that GPU rendering is quite there yet; the main reason being the ram limitations of GPU. The K6000 is the first card I've seen that I've thought would be able to load my scenes without any issues. Sadly, whilst adding more and more GPU's to your rig will speed up the rendering process (sometimes almost realtime), it doesn't have the same effect with the vRAM - no matter how many 4GB cards you stick in, you will only ever have 4GB available because it isn't shared - each card must load all of the assets required to render...

Meaning the k6000's biggest selling point for me (and many others) is the ram available, not the CUDA cores.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 29, 2013, 12:17:20 pm
I work in 3D graphics and have been looking at moving into GPU rendering, but the cost of the quadro's is just so damn much! I am currently using a k4000 at work, but on my home rig that I am speccing, I am seriously considering this kind of mod. Whilst I'm sure this has been covered in this thread, it's already at 52 pages long(!) so I guess I'll have to ask again;

1) what are the potential pitfalls of this?
2) I am no electrical technician/engineer, so how much will I need to learn to do this? I am willing to put a bit of time into it.

1) Your application may not befit. Modified cards do not have the full feature set of the real Quadros. For example, the SPECviewperf scores are no different from a normal GeForce card, and stereo 3D remains unavailable.

2) For Tesla and Fermi series cards (GeForce 2xx/3xx/4xx) no hardware modification is required - you just need to modify the BIOS by about half a byte. See the link I posted above (or website link under my profile) for more details on that. What cards does your application support for rendering? If it supports GeForce cards, you probably don't need to modify them. If it only supports Quadros, see if it supports Quadro 5000 or 6000. If so, I would suggest you get yourself a relatively cheap 4xx series card (GTX470 or GTX480), and modify them into a corresponding Quadro (470 -> 5000, 480 -> 6000), and see how that fares.

Almost all of us here are mainly interested in the modding to get virtualization features and TCC working (those are the big wins), so if you decide to go down this route, please report your findings/results/before+after results - it would be nice to get some feedback from someone using this for 3D rendering purposes.

Well basically I run 3DS Max, in which the viewport performance gains between quadro & gtx are pretty huge; but as for 3D rendering the GTX cards are on a par with the high end quadro's to be honest, so that's not really where I'd be looking at getting any benefits. All CUDA enabled cards are supported in the rendering package (VRay) afaik.

I'd purely be doing it so that I can get higher FPS whilst modelling things. I work in architectural visualisation, so (due to high res foliage usually!) I often end up with 10~20 million polygon models, which would grind to a halt on a GTX. I am looking to set up a 3D PC at home, but don't have the kind of budget for a quadro - hence being so interested in these mods.

My 3DSMax viewport performance experiments showed no difference at all between a GTS450, GTS450 modified into a Quadro 2000, and a genuine Quadro 2000. I then tested it against a GTX470/GTX480/GTX580 and each of those modified into the corresponding Quadro (5000, 6000, 7000), and found no change again - they all managed about 7fps viewport performance, on a C2Q@3.2GHz, which implies it is software rendered and CPU bound (bearing in mind that a C2Q@3.2GHz is not by any sane measure an underpowered CPU).

As for being RAM limited - you are pretty much out of luck on that one. GeForce cards usually (there are exceptions) come with a lot less RAM than the corresponding Quadros, e.g. 6GB on Q6000 vs. 1.5GB on a GTX480, other things being very similar). There are 4GB variants of GTX680, which makes it near identical to the K5000. I'm still working on a Titan-K6000 mod, but that is still only 6GB of VRAM. If 6GB isn't enough I'd say you are well and truly out of luck.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Macker on November 29, 2013, 12:24:34 pm
Really? Because everybody that I've spoken to that has had the chance to compare (non hacked) GTX & quadro cards has said the opposite.

What version of Max were you using? The nitrous viewport in later versions has improved version on version when it comes to performance, though whether this is taking more advantage of the GPU or not is up for debate. I don't think that it is CPU bound, because the performance in the viewport literally grinds to a halt when I start rendering a scene on the GPU and trying to work in the viewport alongside it, despite low CPU load.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 29, 2013, 01:04:12 pm
Really? Because everybody that I've spoken to that has had the chance to compare (non hacked) GTX & quadro cards has said the opposite.

You should probably do your own testing. You can do so on the cheap with a Quadro 2000 (genuine ones go for so little on ebay there is no point on modifying GTS450s) and a GTS450 (DDR5 variant!). Try them in turn and see what you get. Then see if modifying the GTS450 into a Q2000 makes any difference.

I don't think anyone should take any 3rd party benchmarks and reports at face value - do your own, with your expected workload, and see what you get.

And when you are done you can probably ebay them and recover most of your investment.

What version of Max were you using?

The latest downloadable demo/trial version about 2-3 months ago.

The nitrous viewport in later versions has improved version on version when it comes to performance, though whether this is taking more advantage of the GPU or not is up for debate. I don't think that it is CPU bound, because the performance in the viewport literally grinds to a halt when I start rendering a scene on the GPU and trying to work in the viewport alongside it, despite low CPU load.

That slowdown could be explained by all sorts of other things, such as extra DMA I/O to/from the card (this is where bidirectional async DMA on the modified 470/480 might help you) and extra context switching. I never tested the performance impact of rendering on viewports speed, I just ran a viewport benchmark test I found on a forum, and found it hovered between 5fps and 7fps regardless of which GPU I swapped into the machine.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on November 29, 2013, 02:46:56 pm
For anyone that wants to play with a 780Ti, TigerDirect has them for $649.99 after $50 rebate 11/29 only:
http://slickdeals.net/f/6500748-nvidia-geforce-gtx-780-ti-649-99-fs-w-3-free-games-on-tigerdirect (http://slickdeals.net/f/6500748-nvidia-geforce-gtx-780-ti-649-99-fs-w-3-free-games-on-tigerdirect)

I don't think the Visa.me $30 off stacks with $30 AMEX Sync offer, so doing either of them would make it $619.99.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on November 29, 2013, 11:24:40 pm
He's probably the dude that flashes cards on ebay for mac users. I think before recently, many apps would unlock some speed, or would work better if the OSX saw two "quadro-like" cards. IE gtx 780 modded uefi rom plus a real quadro for viewport.

The situation is vastly different for (linux,esxi,xen) and osx/windows as far as ease of tricking "the application". No trickery is being done to the card really. more the app
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 29, 2013, 11:40:00 pm
Update:
1) GTX680 -> Tesla K10 mod by simply deleting the 4th nibble resistor works fine for VGA passthrough. It seems to yield all the advantages of modding to Tesla/Quadro/Grid while keeping things trivially simple. And since the resistor to be removed is on the back of the PCB, you don't even have to remove the heatsink or break any "warranty void" stickers, if you are concerned about such things. This really does reduce the mod complexity to a completely trivial level.

2) The DL-DVI issue I mentioned a few times before is a Gainward specific issue on both the 680 and 690. I just got a MSI GTX680, and the problem does not manifest on that card. So if you are planning to do this, avoid Gainward cards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dredok on November 29, 2013, 11:53:28 pm
Update:
1) GTX680 -> Tesla K10 mod by simply deleting the 4th nibble resistor works fine for VGA passthrough. It seems to yield all the advantages of modding to Tesla/Quadro/Grid while keeping things trivially simple. And since the resistor to be removed is on the back of the PCB, you don't even have to remove the heatsink or break any "warranty void" stickers, if you are concerned about such things. This really does reduce the mod complexity to the level of completely trivial.

2) The DL-DVI issue I mentioned a few times before is a Gainward specific issue on both the 680 and 690. I just got a MSI GTX680, and the problem does not manifest on that card. So if you are planning to do this, avoid Gainward cards.

so according to summary table of verybigbadboy (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)) it says the second resistor should be a 40k one. Actually he says he puts a 100k one because ran some stability issues ... what am I missing?


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 30, 2013, 12:28:10 am
Update:
1) GTX680 -> Tesla K10 mod by simply deleting the 4th nibble resistor works fine for VGA passthrough. It seems to yield all the advantages of modding to Tesla/Quadro/Grid while keeping things trivially simple. And since the resistor to be removed is on the back of the PCB, you don't even have to remove the heatsink or break any "warranty void" stickers, if you are concerned about such things. This really does reduce the mod complexity to the level of completely trivial.

2) The DL-DVI issue I mentioned a few times before is a Gainward specific issue on both the 680 and 690. I just got a MSI GTX680, and the problem does not manifest on that card. So if you are planning to do this, avoid Gainward cards.

so according to summary table of verybigbadboy (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)) it says the second resistor should be a 40k one. Actually he says he puts a 100k one because ran some stability issues ... what am I missing?

I think what you are missing is that not all cards are the same. Every manufacturer adds little tweaks that cause minor issues like this. My findings are:

1) Deleting both resistors for 680 -> Grid K2 works on at least on Gainward 680 and Gigabyte 680
2) Deleting the 4th nibble resistor works fine for converting a MSI 680 into a Tesla K10. Have not tried removing the 3rd nibble resistor on that card.
3) Deleting the 4th nibble resistor works for converting EVGA and Gainward 690s to Tesla K10
4) Replacing the 3rd nibble resistor with alternate location 20KO one on the Gainward 690 renders the card unbootable - it attenuates the BIOS lines too much and even though the device ID reads correct (0x11BF), the BIOS can not be read (but it can be erased, so be careful).
5) On both EVGA and Gainward 690 deleting (without replacing) the 3rd nibble resistor causes instability in the 3rd nibble - it will flap between A and B
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 30, 2013, 01:13:33 pm
Ok, so modding an EVGA 690 is not that difficult then. So, by modding it, can you still take advantage of the Dual GPU which is akin to SLI? I might buy one and do the mod, will tie me over until the 780ti is 100% modded.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 30, 2013, 01:30:15 pm
Ok, so modding an EVGA 690 is not that difficult then. So, by modding it, can you still take advantage of the Dual GPU which is akin to SLI? I might buy one and do the mod, will tie me over until the 780ti is 100% modded.

690 doesn't have XP64 drivers (only Windows I use), and I don't see a SLI option in the nvidia control panel when it's running as a Grid K2 / Tesla K10. I never tried passing more than one GPU to a VM.

I'm more than a little annoyed than my 690 is a Gainward with the bizzare DL-DVI issue, because I really wanted to run with a 690 split between two VMs, due to a slot shortage and an uncrippled GK104 is good enough to run anything (including Crysis at max settings) but the worst programmed games (*cough*Metro Last Light*cough*). But now I've got a Titan on a workbench and a 780Ti in the post, it's hard to not justify using those instead - if the mod goes as planned.

I'll have the 780Ti mod tested within a few days (however long it takes for mine to arrive in the post, which is going to be days rather than weeks), so I'd advise you don't bother buying a 690 for those few days (by the time a 690 you buy today arrives, the 780Ti mod will be tested). Unless you want to trade a tested Teslified 690 for a tested Quadrified 780Ti afterwards (what part of the world are you in?)? :) Just make sure that if you get a 690 it isn't a Gainward, or you'll be limited to 1280x800 when virtualized.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 30, 2013, 01:35:19 pm
Ok, so modding an EVGA 690 is not that difficult then. So, by modding it, can you still take advantage of the Dual GPU which is akin to SLI? I might buy one and do the mod, will tie me over until the 780ti is 100% modded.

690 doesn't have XP64 drivers (only Windows I use), and I don't see a SLI option in the nvidia control panel when it's running as a Grid K2 / Tesla K10. I never tried passing more than one GPU to a VM.

I'm more than a little annoyed than my 690 is a Gainward with the bizzare DL-DVI issue, because I really wanted to run with a 690 split between two VMs, due to a slot shortage and an uncrippled GK104 is good enough to run anything (including Crysis at max settings) but the worst programmed games (*cough*Metro Last Light*cough*). But now I've got a Titan on a workbench and a 780Ti in the post, it's hard to not justify using those instead - if the mod goes as planned.

I'll have the 780Ti mod tested within a few days (however long it takes for mine to arrive in the post, which is going to be days rather than weeks), so I'd advise you don't bother buying a 690 for those few days (by the time a 690 you buy today arrives, the 780Ti mod will be tested). Unless you want to trade a tested Teslified 690 for a tested Quadrified 780Ti afterwards (what part of the world are you in?)? :) Just make sure that if you get a 690 it isn't a Gainward, or you'll be limited to 1280x800 when virtualized.

wow, I like your desire to risk bricking those very expensive cards  :-+ See PM.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 30, 2013, 02:10:45 pm
wow, I like your desire to risk bricking those very expensive cards  :-+ See PM.

The risk of permanent damage is pretty close to 0.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 30, 2013, 03:24:28 pm
wow, I like your desire to risk bricking those very expensive cards  :-+ See PM.

The risk of permanent damage is pretty close to 0.

You haven't seen me with a scalpel, knife or any sharp instrument for that matter  :-DD
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: beckend on November 30, 2013, 11:07:31 pm
The i got questions about the "easy, remove 4th nimble gtx680 trick", it would result in a Tesla K10.
Would the DVI/HDMI outputs actually work if used on host OS, not VM?
Very tempted to do it on my Palit GeForce GTX 680 Jetstream 4GB.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2013, 12:01:06 am
The i got questions about the "easy, remove 4th nimble gtx680 trick", it would result in a Tesla K10.
Would the DVI/HDMI outputs actually work if used on host OS, not VM?

The output ports continue to work just fine, VM or bare metal, it makes no difference. What controls the configuration of the output ports is the BIOS. Since we are not changing the output port configuration in the BIOS, they will continue to work just fine. If you were to flash a K10 BIOS onto the card, the output ports would almost certainly stop working since the BIOS on the K10 assumes there aren't any. The driver just checks what the BIOS set up in terms of output ports and runs with it. I first test my modified cards on bare metal before trying them in the VM, and it works the same regardless of whether it's on bare metal or virtualized.

Note that Grid K2 also doesn't have any output ports, and a lot of people here have modified their 680s into those, and they continue to work just fine while providing video output.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: WillV on December 01, 2013, 06:25:04 am
Has anyone used their 640/K1 or 680/K2 cards for the following:

http://www.nvidia.com/object/virtual-gpus.html


More specifically as it applies to this part:

PREPARING FOR AND INSTALLING NVIDIA GRID VGPU

Step 1: Make sure you have configured XenServer 6.2.0, XenServer vGPU Tech Preview Hotfix, and XenDesktop 7.1 Tech Preview. Visit www.citrix.com/go/vgpu (http://www.citrix.com/go/vgpu) for more information.
Step 2: Download the NVIDIA GRID vGPU Software by visiting www.nvidia.com/drivers (http://www.nvidia.com/drivers) and selecting:
Product Type: GRID.
Product Series: NVIDIA GRID vGPU.
Product: GRID K1 or K2.

The GRID vGPU software package includes:
Release Notes
GRID vGPU User Guide
GRID vGPU Manager
Driver for GRID K1 or K2
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 01, 2013, 04:04:27 pm
well that was my problem. I'd be glad to help with my K2 but I need to get a "demo" or "trial" of the xen server preview to do vgpu. I only have esxi 5.5 (api-intercept) and server 2012R2 (api-intercept).

I know "trials" and "demo use" keys exist, I'm not even considering a "pir8" copy.

Anyone have any help here? I think that by shadowing each step and comparing output there would be a more likely chance to get it going with 680/690 but there are a myriad of bugs with vgpu right now. the readme's show tons of issues (screens going black over 1920x1080, iommu mapping to the wrong area due to 64bit and 4gb vram issues, not doing the right command in the right order=fail,rdp disables hardware acceleration period).

If you check the forums on xen for getting VGPU working its literally a minefield of this gpu bios and that server bios and being on the right 2nd tuesday of the month to get full hardware vgpu going.

API intercept does not use an nvidia bios or driver in the VM.

vgpu shared is what i'd love to try out. alas no software
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 01, 2013, 04:57:45 pm
well that was my problem. I'd be glad to help with my K2 but I need to get a "demo" or "trial" of the xen server preview to do vgpu. I only have esxi 5.5 (api-intercept) and server 2012R2 (api-intercept).

I know "trials" and "demo use" keys exist, I'm not even considering a "pir8" copy.

Anyone have any help here? I think that by shadowing each step and comparing output there would be a more likely chance to get it going with 680/690 but there are a myriad of bugs with vgpu right now. the readme's show tons of issues (screens going black over 1920x1080, iommu mapping to the wrong area due to 64bit and 4gb vram issues, not doing the right command in the right order=fail,rdp disables hardware acceleration period).

If you check the forums on xen for getting VGPU working its literally a minefield of this gpu bios and that server bios and being on the right 2nd tuesday of the month to get full hardware vgpu going.

API intercept does not use an nvidia bios or driver in the VM.

vgpu shared is what i'd love to try out. alas no software

Isnt latest Xen Server 6.2.0 Open Source? If you want support you need to buy commercial version...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2013, 05:11:17 pm
Passthrough and vGPU have different issues.

With passthrough the problem is always with the motherboard (system BIOS and PCIe bridges). There is a reason why both Citrix and VMware only have about 2 servers/workstations from HP and Dell certified for VGA passthrough / vDGA.

The vast majority of motherboards out there have BIOSes that were written by the lowest bidding monkeys and were never tested for operation with anything but bare metal Windows (and even then they have to issue a dozen or so BIOS updates to fix various problems during the lifetime of the product). Prime example being that the vast majority of BIOSes don't map 64-bit IOMEM regions above the 4GB range - which means that if your total BAR sizes add up to more than whatever the maximum amount is that the BIOS is capable of mapping (usually not more than 3GB on such broken implementations), it all breaks spectacularly and doesn't work at all. This is particularly bad if you want to modify your Nvidia card to make sure the BAR region that allows direct access to VRAM is at least equal to VRAM size (so you can use the whole of VRAM as a block device, for example). The card rightly advertises the BAR in question as 64-bit addressable, but the BIOS will fail to map it if the BAR is too big to fit into low memory.

If the motherboard also contains chips like the NF200 PCIe brodges designed with too-smart-by-half ideas (clever I/O boost by doing DMA directly and bypassing the upstream PCIe hub, which unfortunately breaks IOMMU operation because for IOMMU to work all DMA traffic must pass through it, or else the virtual-to-physical IOMEM remapping cannot happen). Sometimes it is possible to work around this by ensuring that virtual BARs are at the same addresses as the physical BARs, but that only currently works with PV Xen containers (e820_host=1 option). Hopefully it will also work with PVH guests so that guest OS-es other than Linux can benefit from it. My gross temporary hack (pending PVH availability in Xen 4.4) to get it working was to patch hvmloader to mark the whole of the  1GB-4GB range as reserved to avoid the domU stomping all over the physical BARs of various hardware and crashing the host in various potentially data corrupting ways.

vGPU is completely different and in theory should be a lot more forgiving toward bad hardware implementations. It should also be a lot less picky about what physicalGPU is used on the host to accelerate the rendering. The key problem here is that ESX vSGA documentation is rather lacking, and the similar Xen solution is still rather immature.

XenServer is open source, but to get access to the vGPU stuff you have to at least sign up for an account on the site. I'm not sure if there is extra licensing involved - I haven't looked at it particularly closely because I'm having enough issues with the supposedly much more mature VGA passthrough operation (and I have no immediate use for vGPU stuff).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 01, 2013, 09:42:10 pm
well if you happen to find yourself with the vgpu shared stuff - pick it up. Perhaps there are answers in all of that. IE if we get true GRID VGX to work, maybe it will take care of the basic problems. (or not), but i'm offering to mirror your setup.

The BAR problem might be. Since I have only older Westmere workstations and servers (L5639 $70 6-core lower power westmere). I think my most expensive server is a $599 DL380 with dual L5639 lol. with a video card that is several times more valuable.

I'm starting to think video and networking are both doing price fixing.

When street value is $1500 for a $7000 item.. folks are yanking your chain. same thing exists in the 10gbe switch arena about 1 year ago it was $1250 used for 24-port 10gbe and $7000 new. [now you can get 48 port 10gbe + 4 40gbe for $9999 new]..

New dual port 10gbe nic $1000 - used $75. New DAC or SFP+ $250 - used $40.

Same thing with pro video... which is why I am determined to work this grid thing out.

I'm pretty sure you need xenserver 6.2 plus xendesktop 7.x preview and the desktop portion is the big money remote graphics VGPU portion and definitely not free.

If you think about it, the hyper-visor only needs to run the VGX software, the desktop "tools" - vmware tools/drivers - that's where the nvidia USM bios/driver has to work its magic inside the vm.

I think ESXi consolidates all of this (free), where as XEN can sell both parts individually.

If the OS is 64bit - why does it matter where the BAR maps? Would you want to map to top of 64gb addressable minus VRAM? I understand many videocards with 4gb run into the old problem of only having 3.6gb usable like system ram. weird. I will have to find out if any of my Z400/HP Gen6-7 servers have this option given how old they are.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: WillV on December 01, 2013, 10:50:16 pm
I'm pretty sure you need xenserver 6.2 plus xendesktop 7.x preview and the desktop portion is the big money remote graphics VGPU portion and definitely not free.

If you think about it, the hyper-visor only needs to run the VGX software, the desktop "tools" - vmware tools/drivers - that's where the nvidia USM bios/driver has to work its magic inside the vm.

I think ESXi consolidates all of this (free), where as XEN can sell both parts individually.

This is not entirely correct.  I have not seen anywhere that VMWare is doing VGX as of yet, instead opting to stick with their vSGA.  There are some similarities but they are definitely not the same thing.  Citrix is the first to release NVidia VGX integration, likely stemmed from their partnership work with NVidia to create this and providing software for NVidias demo servers.  At the very least, when comparing VMWare vSGA with Citrix and VGX, you are leaving out the required VMWare Horizon View package which is definitely not free.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 02, 2013, 12:28:26 am
If the OS is 64bit - why does it matter where the BAR maps?

It doesn't. What DOES matter is if the total IOMEM size is limited to <= 3GB, because I can easily see a situation where you might want a LOT more IOMEM than that. Say you have a motherboard with 7 PCIe x16 slots (e.g. EVGA SR-2). Say you have 7 K6000 GPUs, packing 12GB of VRAM each. Say you want to boost the direct BAR size to be at least 12GB so you can map all of VRAM directly into memory address space. On Nvidia cards the direct BAR size has to be a power of 2, which means 16GB per card. Times 7, that's 112GB of IOMEM range. If the BIOS just craps itself in a situation where sum(IOMEM) >  3GB you have a serious functionality problem, even though technically it shouldn't be a problem - the BARs in question are 64-bit addressable so mapping those 112GB of IOMEM above 4GB shouldn't be a problem at all.

This is not entirely correct.  I have not seen anywhere that VMWare is doing VGX as of yet, instead opting to stick with their vSGA.  There are some similarities but they are definitely not the same thing.  Citrix is the first to release NVidia VGX integration, likely stemmed from their partnership work with NVidia to create this and providing software for NVidias demo servers.  At the very least, when comparing VMWare vSGA with Citrix and VGX, you are leaving out the required VMWare Horizon View package which is definitely not free.

The difference between VGX and vSGA is largely semantic. They both essentially achieve the same thing. Granted, VGX is going to be somewhat more efficient because there could be less binary level translation going on, but in reality I don't think it's going to be that substantial, mainly because the overhead isn't that big in the first place. As an example of the overhead ball park, it'll be similar to the overhead that WINE incurs when translating DirectX calls into host's OpenGL calls, which is typically in single figure % points. The other thing to bear in mind is that the way it works isn't really revolutionary at all - you could home-brew something that does the same thing. You just run a headless Xorg server on physical GPU with a remote desktop connection capable of streaming real-time video. VNC/rdesktop is too slow for gaming grade streaming performance, but there are other protocols commonly used that are up to it, e.g. WiTop. It's not some magical new technology, things like this have been in very common use since the days of dumb X terminals 30 years ago. The only new thing is streaming video protocol optimized for performance with GPU based offloading codec.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 02, 2013, 11:42:25 pm
Good info! I was going to ask - 512K for both bios on K2 and 1 megaBYTE (256k x 4) for K1 - is that a normal size for uefi?

btw - grid K1 for $1800 (several) http://www.amazon.com/gp/offer-listing/B00CA5GCZ0/sr=8-1/qid=1386027459 (http://www.amazon.com/gp/offer-listing/B00CA5GCZ0/sr=8-1/qid=1386027459)

here's a grid K2 for $1500'ish : http://www.ebay.com/itm/NVIDIA-900-52055-0020-000-GRID-K2-8GB-Graphics-Card-by-nVidia-/321257272457?pt=LH_DefaultDomain_0&hash=item4acc6cf489 (http://www.ebay.com/itm/NVIDIA-900-52055-0020-000-GRID-K2-8GB-Graphics-Card-by-nVidia-/321257272457?pt=LH_DefaultDomain_0&hash=item4acc6cf489)

which is the actually more than  K2's/Tesla K10/K20 go for.

In case you want to buy one and hack away at it.

I'd trade my K2 for a K1 since I need many low-end vm's over [many] high end vm's. 16gb of GDDR3 would do me better than 8GB of GDDR5 for doing firefox/office eh.

VGX is wanted because you use nvidia drivers and NVIDIA bios, and i think that is the only way i'll ever be able to virtualize OSX [client/server] with full QE/CI graphics.

If you have an idea how to virtualize several server/client OSX vm's - i'm all ears, honestly I'd probably be happy with parallels if it supports ISCSI or FCoE/FC storage (thin) and tons of ram and remote access (VNC) with sound and some sort of GPU sharing tech?

I plan to run it on MAC PRO so it would be 100% legal as esxi 5.5 works fine.

The problem with using PASS-THROUGH VGA mode is the lack of vmotion and snapshot veeam backups. There is no VSGA(shared) driver for OSX so you end up with sVGA2 no QE/CI which is rather useless for a vm.

this is the HP card i'm talking bout :  (http://img.dooyoo.de/DE_DE/orig/2/8/1/1/9/2811990.jpg)

-- really good PDF on the situation with graphics virtualization by HP http://h20195.www2.hp.com/V2/GetPDF.aspx%2F4AA4-1701ENW.pdf (http://h20195.www2.hp.com/V2/GetPDF.aspx%2F4AA4-1701ENW.pdf)

so 4 Quadro K3000m PCI ID: 10de:11be <-- notice the id? Can you strap that?? :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 03, 2013, 10:59:28 am
Approximately 200KB/BIOS sounds about right (2 BIOSes on K2, 4 BIOSes on K1).

ION: There is now a wiki set up to make the information discovered in this epic thread more easily searchable and accessible (http://gpumod.wikia.com/wiki/Gpumod_Wiki).

It is early days, but more info will be summarized from this thread and put there to avoid the need for newbies to read through all 50-odd pages of this thread to find the one post containing the information that is relevant to what they are trying to do. Of course, the ongoing modding effort discussion continues here.

Those of you interested in this effort primarily for virtualization purposes may find this thread (http://www.gossamer-threads.com/lists/xen/devel/308722?do=post_view_threaded) of interest.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 04, 2013, 01:42:25 am
https://forums.geforce.com/default/topic/609099/nvidia-stop-garbage-about-shield-streaming-support/ (https://forums.geforce.com/default/topic/609099/nvidia-stop-garbage-about-shield-streaming-support/)

gordan - you see the thread here about BETA and shield? I think you may have been right about it being all in the drivers.

http://forum.xda-developers.com/showthread.php?t=2394478 (http://forum.xda-developers.com/showthread.php?t=2394478)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: tema on December 04, 2013, 11:00:58 am
Hi all again ;)
I successfully modified SPARKLE SXS4501024D5SNM GeForce GTS 450  1GB to Quadro 2000
board is reference nvidia gts 450 http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg (http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg)
upd:
gpu passthrough works fine.

Initial values are:
indexmeaningresistance
13 byte value Dnone
23 byte value C35k
34 byte values 8-fnone
44 byte values 0-725k

device / resistors table

device nameR1R2R3R4
gts 450none35knone25k
Quadro 200035knone5knone

furmark: http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616 (http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616)

Will it work with DDR3 GTS450? I need Quadro ability to show 10-bit color. Thx.
http://www.asus.com/Graphics_Cards/ENGTS450_DC_SLDI1GD3/ (http://www.asus.com/Graphics_Cards/ENGTS450_DC_SLDI1GD3/)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: echen1024 on December 05, 2013, 05:00:13 pm
Can you hack the ASUS GTX660 2Gb model? I would be interested in using a quadro.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: C_Coffie on December 05, 2013, 05:02:30 pm
Can you hack the ASUS GTX660 2Gb model? I would be interested in using a quadro.

I haven't found anyone that has successfully done it yet. I'm curious about this as well. If you are able to turn it into a quadro it would be a K4000.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 05, 2013, 10:09:04 pm
the gtx660 is like the K3000m only 1 bit off.

ASUS GTX 660 Device Id:    10DE 11C0

Seems like these guys are best shot:

11bf   GK104GL [GRID K2]   
11c0   GK106 [GeForce GTX 660]   
11c2   GK106 [GeForce GTX 650 Ti Boost]   
11c3   GK106 [GeForce GTX 650 Ti OEM]   
11c4   GK106 [GeForce GTX 645 OEM]   
11c6   GK106 [GeForce GTX 650 Ti]   
11c7   GK106 [GeForce GTX 750 Ti]   
11c8   GK106 [GeForce GTX 650 OEM]
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 06, 2013, 10:48:03 am
mrkrad, I guess you missed the post where I explained that soft-modding is ineffective on Kepler class cards (GKxxx GPUs).

My 780Ti arrives, and I can confirm that it is based on the exact same PCB as the Titan. Modding the 3rd nibble works the same way as it does on the 780 and the Titan, so you can make it into  K6000 easily.

Unfortunately, a quick visual comparison of the resistors I suspected of controlling the 4th nibble strap shows that they are in the same place on both PCBs, rather than at least one being in the alternate position (for nibble values >= 0x8). So no info on the 4th nibble strap location yet. Then again, given the 780Ti is cheaper than the Titan anyway and trivial to modify into a K6000, I imagine it's going to become the second easiest / most popular mod after the GTX680 to K10 (just remove one resistor off the back of the PCB).

Happy modding.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 06, 2013, 10:51:53 am
mrkrad, I guess you missed the post where I explained that soft-modding is ineffective on Kepler class cards (GKxxx GPUs).

My 780Ti arrives, and I can confirm that it is based on the exact same PCB as the Titan. Modding the 3rd nibble works the same way as it does on the 780 and the Titan, so you can make it into  K6000 easily.

Unfortunately, a quick visual comparison of the resistors I suspected of controlling the 4th nibble strap shows that they are in the same place on both PCBs, rather than at least one being in the alternate position (for nibble values >= 0x8). So no info on the 4th nibble strap location yet. Then again, given the 780Ti is cheaper than the Titan anyway and trivial to modify into a K6000, I imagine it's going to become the second easiest / most popular mod after the GTX680 to K10 (just remove one resistor off the back of the PCB).

Happy modding.

Which 780ti did you get Gordon? So by modding the 3rd Nibble we can turn it in to a K6000, what does the 4th nibble give us exactly?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 06, 2013, 11:00:43 am
Which 780ti did you get Gordon? So by modding the 3rd Nibble we can turn it in to a K6000, what does the 4th nibble give us exactly?

I got the EVGA base model and flashed it with the SSC BIOS. So I got the performance of the most overclocked EVGA card for the price of the cheapest EVGA card. 100% stable, OCCT-ed overnight. GK110 is a demon OC-er, with a bit of tweaking I'm sure it'll go a lot faster, but Kepler BIOS Tweaker doesn't seem to be quite up to the job of power limit modding on it. :( If anyone knows of a better tool, please, do share.

The 4th nibble would let us mod the 780 and Titan into a K6000 as well. Without the 4th nibble info, only the 780Ti is moddable into a K6000.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 06, 2013, 11:09:29 am
Which 780ti did you get Gordon? So by modding the 3rd Nibble we can turn it in to a K6000, what does the 4th nibble give us exactly?

I got the EVGA base model and flashed it with the SSC BIOS. So I got the performance of the most overclocked EVGA card for the price of the cheapest EVGA card. 100% stable, OCCT-ed overnight. GK110 is a demon OC-er, with a bit of tweaking I'm sure it'll go a lot faster, but Kepler BIOS Tweaker doesn't seem to be quite up to the job of power limit modding on it. :( If anyone knows of a better tool, please, do share.

The 4th nibble would let us mod the 780 and Titan into a K6000 as well. Without the 4th nibble info, only the 780Ti is moddable into a K6000.

Fantastic, lets hope the rest will follow your bravery and mod some more 780ti's. I am probably going to buy the same one you have.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 06, 2013, 11:33:07 am
Fantastic, lets hope the rest will follow your bravery and mod some more 780ti's. I am probably going to buy the same one you have.

It really isn't that big a deal. There aren't even any "warranty void" stickers over the screws on the card (well, on mine at least), so you don't obviously void the warranty by taking the heatsink off. Also, given you are soldering a relatively large 1206 resistor that is easy to both solder and unsolder, the risk of damage is minimal. Conveniently, length of the 1206 is the same as the distance between the pins you need to connect on the EEPROM.

Melt a tiny amount (and I do mean tiny amount) of solder on the ends of the resistor first. Make sure it is just on the ends and hasn't spilled toward the middle, you don't want to short the pin inbetween. Then just place the resistor so it's connecting the pins in question, and press down on each end of it for 10-15 seconds with a soldering iron.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 06, 2013, 12:14:25 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 06, 2013, 12:26:14 pm
I'm no better, I'm afraid. I have given up on soldering anything smaller than 1206 size manually.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 06, 2013, 12:35:14 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..

the best avice I can give is not to skimp on soldering iron. Get a good one with pointed tips so you can apply the tiniest of solder amounts.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 06, 2013, 01:03:26 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..
the best avice I can give is not to skimp on soldering iron. Get a good one with pointed tips so you can apply the tiniest of solder amounts.

Or go one better and get a hot air reflow iron. A decent one of those costs more than a Titan, though.

One other possible alternative is to get conductive glue.

But none of those preclude the requirement for very, very steady hands; a good night's sleep and no caffeine for 24 hours before attempting makes a noticeable difference.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 06, 2013, 01:10:39 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..
the best avice I can give is not to skimp on soldering iron. Get a good one with pointed tips so you can apply the tiniest of solder amounts.

Or go one better and get a hot air reflow iron. A decent one of those costs more than a Titan, though.

One other possible alternative is to get conductive glue.

But none of those preclude the requirement for very, very steady hands; a good night's sleep and no caffeine for 24 hours before attempting makes a noticeable difference.

+1 to conductive glue.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: makblast on December 06, 2013, 09:36:25 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..
the best avice I can give is not to skimp on soldering iron. Get a good one with pointed tips so you can apply the tiniest of solder amounts.

Or go one better and get a hot air reflow iron. A decent one of those costs more than a Titan, though.

One other possible alternative is to get conductive glue.

But none of those preclude the requirement for very, very steady hands; a good night's sleep and no caffeine for 24 hours before attempting makes a noticeable difference.

Hi
Very interesting, my 780ti is arriving tomorrow :-)
Have you looked at the nvidia-smi output? Especially the "compute mode =" and whether it can be changed e.g with -c "All On" option :-)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 06, 2013, 09:46:43 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..
the best avice I can give is not to skimp on soldering iron. Get a good one with pointed tips so you can apply the tiniest of solder amounts.

Or go one better and get a hot air reflow iron. A decent one of those costs more than a Titan, though.

One other possible alternative is to get conductive glue.

But none of those preclude the requirement for very, very steady hands; a good night's sleep and no caffeine for 24 hours before attempting makes a noticeable difference.

Hi
Very interesting, my 780ti is arriving tomorrow :-)
Have you looked at the nvidia-smi output? Especially the "compute mode =" and whether it can be changed e.g with -c "All On" option :-)

I run on XP64, and for some reason the XP64 driver bundle doesn't include the nvidia-smi utility.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 09, 2013, 01:56:39 pm
Just a little OT, but does anyone know a reliable way of modifying the BIOS on a GTX card so that the fan starts at 0 RPM?
I am building an HTPC that will run 24/7 and to prolong the life of the fan and keep the HTPC quiet under idle, I only want the fan to kick in when temps reach 40-45 degrees.
From researching other forums, it seems that the fan speed profiles are hard coded to the cards and keep the majority from going below 10% fan speeds. I tried kepler bios editor and set the minimum to 0% but my GTX 670 still runs at a minimum 10% fan speed.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Luke212 on December 10, 2013, 04:07:34 am
if its too hard to make a Titan a K20X, is it possible to make Titan a K40? K40 is the new 12GB 2880 shader Telsa. If the K40 4 bit Id is closer maybe it will be an easier mod?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 10, 2013, 10:52:42 am
If the 4th nibble is the same as a 780, 780Ti or Titan, then yes. Otherwise, no, not until the location of the 4th nibble strap is confirmed.
Currently, that means only 780ti -> K6000 is confirmed. I see no good reason to mod to a Tesla instead of a K6000, since Quadro feature set is a superset of the Tesla feature set.
Before asking questions like this, look through this:
ftp://download.nvidia.com/XFree86/Linux-x86/319.49/README/supportedchips.html (http://ftp://download.nvidia.com/XFree86/Linux-x86/319.49/README/supportedchips.html)
and find whether nibbles 1,2,4 match. If they do and the cards are all GK110 based, then the current method will work. Otherwise it won't.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: baconsteak on December 10, 2013, 12:44:06 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..
the best avice I can give is not to skimp on soldering iron. Get a good one with pointed tips so you can apply the tiniest of solder amounts.

Or go one better and get a hot air reflow iron. A decent one of those costs more than a Titan, though.

One other possible alternative is to get conductive glue.

But none of those preclude the requirement for very, very steady hands; a good night's sleep and no caffeine for 24 hours before attempting makes a noticeable difference.

I could easily solder anyone’s card if they were nearby me.

Those ultra pointed tips are a pain imo. I found that they loose heat when you touch the component and you have to have the heat turned up more. When its just sitting there it starts to oxidize unless you turn it back down. They just aren't a big enough heat sink and the temp control is all out of whack.

I use a hakko 936 with the 900M-T-B tip that came with it. I think they are around the $80 mark now. When I was working I preferred the chisel type D tips but they are easy enough with either. I used to do 0603s at work.

The key really is flux if you don't get it soldered right away before the flux in the solder evaporates. Get some no clean flux in a syringe tube and some fine tweezers.

My arms or hands shake a fair bit. I just hold them hard against the desk while I'm soldering.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: beckend on December 11, 2013, 07:02:51 am
Just wanted to let you know, I succeeded modding Palit Jetstream 4GB 680 GTX into the Tesla K10. Used the sharp end of a razorknife and removed the 4th resistor the dirty way.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: zizux on December 12, 2013, 04:01:35 pm
I've saved the bios off a GTX 480, then changed the device ID with nibitor to a 06D9 from 06C0 but it still shows up with the old device ID after flashing.

nvflash -5 does require me to type YES due to mismatch but I'm doing something wrong.

EDIT FIXED. Flashed using the --straps and rebooted and now its working fine.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 12, 2013, 06:19:45 pm
I've saved the bios off a GTX 480, then changed the device ID with nibitor to a 06D9 from 06C0 but it still shows up with the old device ID after flashing.

nvflash -5 does require me to type YES due to mismatch but I'm doing something wrong.

NiBiTor doesn't change the device ID strap, only the tag (the tag doesn't do anything, other than make nvflash refuse to flash the BIOS without the override). Next time please read and understand the writeups linked in this thread about how to carry out the modification before reducing the signal-to-noise ration on this thread.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: zizux on December 12, 2013, 08:02:30 pm
Ah I see where I messed up and now have a working one.  Now on to setting up a lab to test it with.

Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: beckend on December 12, 2013, 08:22:36 pm
So I had some problems with Tesla K10, I had the wrong memory size(29xxMB) and insufficient info in GPU-Z, and nonexistent sensors.
Maybe it suppose to be like that but drivers was kinda messed up too, got "no screen attached to the gpu" msg when going into Nvidia Control Panel.
So I removed the the 2nd resistor nibble also to make it a GRID K2, and now everything works as it should.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 12, 2013, 11:49:42 pm
So I had some problems with Tesla K10, I had the wrong memory size(29xxMB) and insufficient info in GPU-Z, and nonexistent sensors.

Sounds like you didn't reinstall the driver properly after you modified the card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kdot on December 13, 2013, 10:46:33 am
Please,can anybody make a video on replacing resistors
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: TheBay on December 13, 2013, 08:39:52 pm
It would be nice if you would offer a service of modding the cards :) Some of us have unsteady hands. Only good for nvflash strapping ..
the best avice I can give is not to skimp on soldering iron. Get a good one with pointed tips so you can apply the tiniest of solder amounts.

Or go one better and get a hot air reflow iron. A decent one of those costs more than a Titan, though.

One other possible alternative is to get conductive glue.

But none of those preclude the requirement for very, very steady hands; a good night's sleep and no caffeine for 24 hours before attempting makes a noticeable difference.

I could easily solder anyone’s card if they were nearby me.

Those ultra pointed tips are a pain imo. I found that they loose heat when you touch the component and you have to have the heat turned up more. When its just sitting there it starts to oxidize unless you turn it back down. They just aren't a big enough heat sink and the temp control is all out of whack.

I use a hakko 936 with the 900M-T-B tip that came with it. I think they are around the $80 mark now. When I was working I preferred the chisel type D tips but they are easy enough with either. I used to do 0603s at work.

The key really is flux if you don't get it soldered right away before the flux in the solder evaporates. Get some no clean flux in a syringe tube and some fine tweezers.

My arms or hands shake a fair bit. I just hold them hard against the desk while I'm soldering.

I find the Weller WSP80 is just the ticket with the tiny tip on it for SMD work.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ryanistheryan on December 13, 2013, 11:11:44 pm
Update:
As some of you that have been following this thread are aware, I've been having a rather bizzare problem with only DL-DVI working on my modifed GK104 based cards (680 and 690). It just occurred to me that the two cards I have happen to have on thing in common - they are both Gainward cards. Has anyone else successfully managed to get DL-DVI to work in a VM with a Gainward GTX680 Phantom 4GB or Gainward GTX690? Gainward 690s have a few strapping resistors in different places to the EVGA and other 690s, so it is plausible they made some tweaks that cause the problem. Does anyone have either of those cards working with DL-DVI outputs successfully?

On a separate note, I just learned that GTX780Ti has device ID 0x100A. K6000 is 0x103A. We only need to change the 3rd nibble (via oguz286's awesome mod). His mod is to use a 33K resistor to jack up the 3rd nibble from 0 to 2. On my Titan using an 18K resistor instead boosts the ID to 3. So to make a 780Ti to a K6000, simply apply an 18K resistor between VCC and SCLK and voila, job done. For extra points, solder a couple of wires between those pins, solder an 18K resistor on one of them, and a switch to connect them. Break the switch out somewhere accessible (extra extra points for making the switch easily and neatly accessible from the back of the card without obstructing the airflow too badly). Now you can switch between a 780Ti and a K6000 at a flip of a single switch.

Needless to say, the neatness of this means that I'll be acquiring a 780Ti as soon as I've ebayed my Titan.

Edit: Maybe I'll keep my Titan for a little bit longer, as if the PCB is the same (which it almost certainly is), it should be very obvious which resistors are configured differently for the 4th nibble. Watch this space.



Hey there gordon, I have been lurking this thread on and off since it was discovered.

I modded a Zotac GTX 680 into a K10, with hopes that I could get it to do GPU accelerated computation in this program called CST. CST does not have support for any consumer video cards for acceleration.

After the mod, it shows up at as K10 in windows, but trying to use the video out of the card results in a limited resolution of 1280x720, and using programs such as CST or even attempting to benchmark it with other software results in it not being recognized. Do you believe this a hardware issue or a manufacturer issue?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 13, 2013, 11:29:27 pm
I modded a Zotac GTX 680 into a K10, with hopes that I could get it to do GPU accelerated computation in this program called CST. CST does not have support for any consumer video cards for acceleration.

After the mod, it shows up at as K10 in windows, but trying to use the video out of the card results in a limited resolution of 1280x720, and using programs such as CST or even attempting to benchmark it with other software results in it not being recognized. Do you believe this a hardware issue or a manufacturer issue?

I have found that both my Gainward 680 and 690 only provide video output at SL-DVI modes from inside a VM (but they work fine with DL-DVI on bare metal). You'll find that on a typical monitor, SL-DVI only goes up to 1280x800. If you are having this issue on bare metal, however, that is unusual - I don't think anyone has seen that problem before. For example, my MSI 680 works fine, so I assumed this was a Gainward specific issue, since I seem to recall other people modifying Zotac cards without issues before.

Once you modified the card, does it reliably show up as a K10 on device manager and GPU-Z? Have you installed the Quadro driver (as opposed to the GeForce driver), and what version? I have been successfully using drover 320.92 Quadro driver. Does CST require a dedicated non-primary card for computation perhaps?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 13, 2013, 11:40:04 pm
you know that 1280 bug is documented by xen as a known issue even with grid
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ryanistheryan on December 13, 2013, 11:51:41 pm
Hey Gordon!

Thanks for the extremely quick reply, I know it isn't your job to provide support around this but I highly appreciate talking to another experienced user as I am still a student.

I have no issues with it popping up as a K10 with GPU-Z or Device Manager. I've used Quadro/Tesla drivers 307.45 (recommend version by CST) as well as the latest drivers available.  Have you had issues with different drivers? I am trying to reread all the threads from where I've left off here and there. I decided to test gpu acceleration with another program called cgminer (yeah I'm just dabbling with that stuff), and it correctly functions with my stock 560 ti, but thereafter says it says GPU 1 failure.

I have additions GPUs driving my screen, but as they were all nVidia based I didn't want to have driver conflict issues possibly, and that is when I realized the GTX680-modded-to-K10 would not go past 1280.

On page 17 verbigbad boy stated:
"I successfully modified
Zotac PCI-E NV ZT-60206-10L GT640 Synergy 2G 128bit DDR3 900/1600 DVI*2+mHDMI RTL
To NVIDIA GRID K1. It is working fine. passthough works too. BUT Device ID modification posible only after bios modification. Bios modification is needed only for specific vendors.
"

Do you think this would be an issue with this zotac? I'm going to search the thread for other zotac 680s done successfully. I'm not very proficient editing BIOSes and uploading them, I'd have to find a tutorial if that is the case. 

Side note, when looking through CST's guidelines for GPU acceleration, they show that the nVidia control panel in windows has a Tesla specific branch after stereoscopic 3D video settings. I don't have this available within my control panel.

Thanks for your help,

-Ryan
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mitiay on December 14, 2013, 12:47:43 pm
So, I was able to mod the titan into the k20xm.

I need mostly DP precision in EM simultaion and want to do the same mod.
Am I correct: all that needs to be done is changing the resistor 25k->40k and flashing the modded 128kb BIOS from k20xm?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 14, 2013, 02:13:52 pm
you know that 1280 bug is documented by xen as a known issue even with grid

Link to the ticket/errata?
I have pinned down the issue to SL-DVI vs. DL-SVI, and it only manifests on my Gainward cards GK104 based cards (e.g. my MSI 680 works fine). For example, if I use a SL-DVI monitor like IBM T221, I can run 3840x2400@16Hz over a single SL-DVI output, and that works fine from a VM.

I have no issues with it popping up as a K10 with GPU-Z or Device Manager. I've used Quadro/Tesla drivers 307.45 (recommend version by CST) as well as the latest drivers available.  Have you had issues with different drivers? I am trying to reread all the threads from where I've left off here and there. I decided to test gpu acceleration with another program called cgminer (yeah I'm just dabbling with that stuff), and it correctly functions with my stock 560 ti, but thereafter says it says GPU 1 failure.

I have additions GPUs driving my screen, but as they were all nVidia based I didn't want to have driver conflict issues possibly, and that is when I realized the GTX680-modded-to-K10 would not go past 1280.

On page 17 verbigbad boy stated:
"I successfully modified
Zotac PCI-E NV ZT-60206-10L GT640 Synergy 2G 128bit DDR3 900/1600 DVI*2+mHDMI RTL
To NVIDIA GRID K1. It is working fine. passthough works too. BUT Device ID modification posible only after bios modification. Bios modification is needed only for specific vendors.
"

Do you think this would be an issue with this zotac? I'm going to search the thread for other zotac 680s done successfully. I'm not very proficient editing BIOSes and uploading them, I'd have to find a tutorial if that is the case. 

Side note, when looking through CST's guidelines for GPU acceleration, they show that the nVidia control panel in windows has a Tesla specific branch after stereoscopic 3D video settings. I don't have this available within my control panel.

If BIOS modification were required, the card wouldn't have showed up as a K10 in device manager / GPU-Z, but it is easy enough to check. Download the bios using nvflash -b, and check the block verybigbadboy mentioned. You will also want to check the more recent Kepler UEFI header BIOS strap discussion more recently on the thread since there are only 5 device ID controlling bits in the strap which could be relevant to the device ID changing, and you don't want to disrupt the rest.

Modified cards don't get the extra features showing up in the control panel. It is not entirely clear at the moment why, but some of it is due to the BIOS. For example, flashing a K5000 BIOS onto a modified 4GB GTX680 will make the ECC control show up, but other features are still missing.

Also note that AFAIK you can't use the TCC mode on your primary display adapter.

So, I was able to mod the titan into the k20xm.

I need mostly DP precision in EM simultaion and want to do the same mod.
Am I correct: all that needs to be done is changing the resistor 25k->40k and flashing the modded 128kb BIOS from k20xm?

It may not work - you need to modify the 4th nibble value to match the Tesla card, and that hasn't been located yet. The drivers check the hard strap rather than the soft strap to enable features. Titan allegedly has full DP performance, but my Titan shows near identical figures for DPFP in CUDA-Z as my 780Ti, so either CUDA-Z isn't measuring it reliably or it is a myth that Titan has uncrippled DP performance.

The only full ID modification available at the moment is 780Ti to K6000, since those don't differ in the 4th nibble, so changing only the 3rd nibble is sufficient.

Also note that video outputs and configuration are set by the BIOS, so flashing a Tesla BIOS onto a GeForce card will disable all video outputs on the card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mitiay on December 15, 2013, 01:54:21 am

It may not work - you need to modify the 4th nibble value to match the Tesla card, and that hasn't been located yet. The drivers check the hard strap rather than the soft strap to enable features. Titan allegedly has full DP performance, but my Titan shows near identical figures for DPFP in CUDA-Z as my 780Ti, so either CUDA-Z isn't measuring it reliably or it is a myth that Titan has uncrippled DP performance.

The only full ID modification available at the moment is 780Ti to K6000, since those don't differ in the 4th nibble, so changing only the 3rd nibble is sufficient.

Also note that video outputs and configuration are set by the BIOS, so flashing a Tesla BIOS onto a GeForce card will disable all video outputs on the card.

Read the thread once again :) and found that the resistor mod which seemed to work is 33k between VCC and SCLK.

According to previous unlucky experiments, resistors controlling the 4th nibble should be located on the card's backside against the flash, right?
By the way, if softmod doesn't work then why original Titan BIOS contains FF FF FF 7F 00 14 00 80 at 0x1C, which, if I'm not mistaken, changes hardware coded 4th nibble from something (0, 1, 4 or 5) to 5?

Regarding the Titan's DP uncrippled performance, AFAIK it is activated by the driver which changes the card's BIOS so it turns on all DP FPUs and at the same time drops frequency to 732 MHz. Do you know if anyone made a comparison of "crippled" and "uncrippled" BIOSes?

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 15, 2013, 02:07:51 am
Read the thread once again :) and found that the resistor mod which seemed to work is 33k between VCC and SCLK.

To modify the 3rd nibble from 0 to 2. To modify it to 3 you need an 18K resistor.

According to previous unlucky experiments, resistors controlling the 4th nibble should be located on the card's backside against the flash, right?

That's what I thought but comparing a Titan to a 780Ti revealed no differences; specifically, none of the resistors are in alternate locations as one might expect given the ID differences.

By the way, if softmod doesn't work then why original Titan BIOS contains FF FF FF 7F 00 14 00 80 at 0x1C, which, if I'm not mistaken, changes hardware coded 4th nibble from something (0, 1, 4 or 5) to 5?

Not on all Titans. On mine there are no overrides. The soft strap will affect which driver gets installed (it affects the device ID), but it won't affect the feature set. Kepler GPUs seem to have a register that gets set by the hard strap, regardless of what the soft-strap says. If you change the soft-strap without changing the device ID, use GPU Caps Viewer and see what it says - you'll find that it reports a device ID as set by the hard strap, even though the device ID is overriden by the soft strap. The driver looks at whatever stores the hard strap value to enable/disable various features.

Regarding the Titan's DP uncrippled performance, AFAIK it is activated by the driver which changes the card's BIOS so it turns on all DP FPUs and at the same time drops frequency to 732 MHz. Do you know if anyone made a comparison of "crippled" and "uncrippled" BIOSes?

No idea. I'm running a fully delimited engineerion BIOS on my Titan, but I have no immediate use for DP performance so haven't investigated in detail.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: beckend on December 15, 2013, 11:34:52 am
So I had some problems with Tesla K10, I had the wrong memory size(29xxMB) and insufficient info in GPU-Z, and nonexistent sensors.

Sounds like you didn't reinstall the driver properly after you modified the card.

Actually I tested the card on 2 of my computers, I would be satisfied with the TESLA but clean the drivers multiple times and even reinstalled windows on my main rig would not help. However it worked instantly when modded to the GRID K2, and I have no idea why.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 15, 2013, 12:07:49 pm
Strange. Had you verified that it is coming up with the correct device ID in GPU-Z and GPU Caps Viewer?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kwikit on December 16, 2013, 02:35:51 am
Gordan,

I wanted to say you've been doing a heck of a job passing on the information. Kudos for that.

I ran into this site over the weekend, read all 57 pages, and am willing to try a few things on an EVGA GTX 780 SC w/ ACX.  Problem is, I'm not at all electronically savvy, so I need a little guidance.

I'm building 8 graphics workstations, and chose the 780 because some people in the group wanted to use Iray in 3dsmax, which uses the CUDA cores to render when present.

I was disappointed to learn, the 3D viewport performance in 3ds max 2014 is horrendous with these cards. To give you a baseline, the card in my current machine which is a Dell T1500 i7-870, with an AMD Radeon 4800, performs as well and marginally better than the 780 using the same exact scene / settings for comparison. I tested with an FX 580 as well, and those are 5 times slower than both the 4800 / 780. I suspect there is amazing performance available in the 780 if it can be unleashed, and the proper Quadro settings enabled.

Before I came to this site, I did edit the inf files, to no avail, and was researching soft modding the card, but quickly learned that likely won't lead anywhere. In my research, I found TechPowerUp, which had some hi-res photos of the bare video card sans any coolers.  I don't know if this helps, or if it's 100% accurate as some of the traces are quite faint especially around the EEPROM, but I lightened up the file in Photoshop and created a PDF with the trace lines highlighted. I think it's interesting there are 4 main trace lines going to the processor.  I haven't yet taken the time to open up my own card since I want to be sure I have the parts / tools to test / assemble the solution. When I do, I will try to take some higher res shots. http://www.techpowerup.com/reviews/EVGA/GTX_780_SC_ACX_Cooler/3.html (http://www.techpowerup.com/reviews/EVGA/GTX_780_SC_ACX_Cooler/3.html)

I'm inclined to add on resistors to convert the 780 to a Quadro 6000. I know, 18K resistor between SCLK / VCC...  I need to at least find the 4th nibble, but I'd also like to modify the 3rd nibble at the resistor and add on an appropriately sized resistor in parallel if that's viable.

What do i need to get started in testing? Multimeter? Variety of resistors to test, or a rheostat to try various resistors? But once I have a working solution with a rheostat, can i use the multimeter to determine the right resistor value to install permanently?  Given the size, I'm assuming i can order some 1/4w resistors of various ohms and that will be a good kit to work with, or that rheostat i mentioned.  If you could link me to a suitable multimeter / resistors and give me a few hints on how to proceed, I'll do the testing and report back.

What I need to know is, to test, I assume the card is installed in the slot and the PC powered up, so I can take measurements?  I'm mostly concerned about frying the card before I get the answer.
I plan to create a bootable USB Dos Disk, so I will use NVFLASH to check what value I'm getting as I attach / detach resistors or adjust the rheostat.

Just so you know, I think the 4 traces define the ID, and I think the Red trace is the 4th nibble, but I won't know till I try. I'm hoping I can get hold of everything by Christmas, so I have something to do when i get bored. :-)

Thank you for taking the time to read even if you can't help answer. I'll sort it out one way or the other.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kwikit on December 16, 2013, 12:23:14 pm
I ended up buying these as they looked to be the appropriate tools.

http://www.amazon.com/gp/product/B000EVYGZA/ref=oh_details_o00_s00_i00?ie=UTF8&psc=1 (http://www.amazon.com/gp/product/B000EVYGZA/ref=oh_details_o00_s00_i00?ie=UTF8&psc=1)

http://www.amazon.com/gp/product/B003UC4FSS/ref=oh_details_o00_s00_i01?ie=UTF8&psc=1 (http://www.amazon.com/gp/product/B003UC4FSS/ref=oh_details_o00_s00_i01?ie=UTF8&psc=1)

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 16, 2013, 12:44:12 pm
@kwikit

As has been mentioned on the thread before, viewport performance in 3DSMax appears to not be affected by the GPU much. It is single threaded and mostly CPU bound. ATI drivers are a little thinner which is why they have better performance in this application. I tested a genuine Quadro 2000 against a GTS450, and the same GTS450 modified into a Q2000, and there was on observable difference in viewport performance.

I am not sure if those resistors you bought are going to be suitable (I'm not sure they will fit under the big metal sandwich plate that covers the PCB) - but I guess it depends on what exactly you are trying to do. Are you planning to use them for a remote switch setup on a 780Ti like I described, to be able to toggle it between a 780Ti and a K6000?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kwikit on December 16, 2013, 01:35:29 pm
Gordan,

I read your assessment but I figured it was worth a test on 1 card, if i can do it before the others need to be exchanged for real quadro's. My understanding was that the quadro's do perform better in viewports than the mainstream cards but I am not sure I want to make that investment to find out. We actually picked up a quadro k4000 to test, just haven't opened it.

I know it's directx 11 that's driving the viewports, but I was under the impression that nvidia had optimized some code which is enabled on the quadro's to work through directx better. My aim is to try to get that feature enabled in the gtx 780. One way towards that aim is to make the driver believe the gtx is the quadro. Maybe it won't make any difference in which case, I may just end up pairing the gtx with a cheap lightweight gt or gts or other card that can run the viewports adequately and have the gtx as a coprocessor of sorts for the CUDA bit. Not what I want to do, so I may rethink the Quadro K4000 vs GTX 780 decision. I just don't want to open a $850 Quadro K4000 to find out it equally sucks in the viewports... then I'd want to scream bloody murder.

If the ID works out as I hope, I can always buy the right resistors... this pack contains a broad range of values so I grabbed it. By the way, I think my diagram of the traces is missing some interconnections, the image is playing light tricks, so I won't know for sure till i open my own card, but looking at Guz's site, his image seems to show a few more interconnects. And it makes sense one could connect the SCLK with VCC based on the traces... and I wonder if the other nibble can be tracked down by looking for a similar connection to a power line.
http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/ (http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/)

So anyone relying on my marked up image, be aware there are probably some missing connections and maybe even some erroneous connections shown in that diagram.

I am not sure I needed the multimeter, but it doesn't hurt having one in the toolkit. :-)

 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 16, 2013, 02:07:04 pm
I read your assessment but I figured it was worth a test on 1 card, if i can do it before the others need to be exchanged for real quadro's. My understanding was that the quadro's do perform better in viewports than the mainstream cards but I am not sure I want to make that investment to find out. We actually picked up a quadro k4000 to test, just haven't opened it.

I haven't seen any evidence of real Quadros performing obviously better on viewports, but if you find otherwise, please, do post some benchmark numbers that demonstrate the difference with a repeatable test.

If the ID works out as I hope, I can always buy the right resistors... this pack contains a broad range of values so I grabbed it. By the way, I think my diagram of the traces is missing some interconnections, the image is playing light tricks, so I won't know for sure till i open my own card, but looking at Guz's site, his image seems to show a few more interconnects. And it makes sense one could connect the SCLK with VCC based on the traces... and I wonder if the other nibble can be tracked down by looking for a similar connection to a power line.
http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/ (http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/)

For the 3rd nibble, a 1206 surface mount resistor is by far the best option - it is exactly the right size, and looks tidy.

IIRC johnjoe experimented with the resistors on the EEPROM side of the PCB and didn't find any that affect the 4th nibble. I did a visual check of the back of the PCB between a 780Ti and a Titan, and couldn't spot any resistors in that area that were in alternate locations.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: trr444 on December 19, 2013, 06:42:13 pm
guys, i did conversion of the 780ti, it recognizes as K6000 both in device manager, nvidia control panel and cuda-z but still there is no "workstation" context menu in the nvidia control panel.. i downloaded k6000 drivers fron nvidia but it did not help. i need mosaic to set up. also cuda-z performance is same in 780ti and k6000 modes, should be there any difference? whats wrong? please advice.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 19, 2013, 08:46:19 pm
There is no expected performance difference from modifying. You get TCC mode (of it's a secondary card) and VGA passthrough, and that's about it. I don't know about Mosaic, I only use XP and that doesn't support Mosaic anyway. Have you tried downloading the Mosaic app from Nvidia? I seem to remember you need that to make it work - if it is going to work. I seem to recall that gnif originally mentioned something about better multi-display support under Linux, but I never found I needed it as Linux/Xorg comes pretty well equipped to deal with multiple displays anyway (my primary Linux Xen dom0 card is an unmodified GeForce card running a T221 in dual-input mode).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: trr444 on December 19, 2013, 09:17:18 pm
thanks for reply. I did not find any mosaic tool, it is not available for download... NVIDIA manual says it is included in the NVIDIA Control Panel and once quadro card is in the system Mosaic settings become available in the Workstation context menu.I need Quardo to setup several  monitors as a single big screen, this is that Mosaic offers. Also, i tested performance with the SPECviewperf, and Catia-03 test show 23 mean value, that is a bit low for K6000.current results for even K5000 is 75. You sure card is working in Quadro mode and not just showing it is Quadro?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 19, 2013, 10:19:29 pm
There is no such thing as "Quadro mode". Some of the functionality of the non-Quadro cards is disabled by some other means, most probably a combination of the implementation of some of the GL primitives being cut out of the silicon (or not programmed into an FPGA, or something along those lines), plus a deliberately crippled software implementation of those GL primitives.

Modifying the card's device ID gets you the features the driver deliberately disables on GeForce cards, such as virtualization and TCC support (both of which are 100% purely driver features, there is no "hardware" part of the implementation for those features it's just driver deciding based on the device ID whether it'll let you have them).

Mosaic support is almost certainly a driver feature but it probably also covers vsynced output from multiple combined cards, syncing over SLI, which might actually require some extra hardware to do. If that is missing on GeForce cards, then the driver might just wholesale disable all Mosaic options.

In terms of stitching together multiple monitors, I have certainly run 3+ monitors stitched together under Linux into a single desktop using Xinerama (you have to disable randr extensions) - e.g. to run a T221 at full refresh rate, so there is no hardware limitation preventing that from happening per se. Perhaps gnif might shed some more info on the subject of Mosaic support, as I never quite fully understood what he was talking about when he was saying that modifying his 690 enabled extra multi-monitor flexibility - I just figured it was about some other feature that I never needed. As for Windows, I'm afraid I can't help much - to me Windows is just a somewhat thick bootloader for games that haven't been ported to Linux yet.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: beckend on December 20, 2013, 11:23:03 am
Strange. Had you verified that it is coming up with the correct device ID in GPU-Z and GPU Caps Viewer?

Yes, I always do.
Maybe I'm speaking from my ass here but the tesla mod might be flaky/unstable in my case, but I only tried only one version of the drivers.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 20, 2013, 12:01:09 pm
Strange. Had you verified that it is coming up with the correct device ID in GPU-Z and GPU Caps Viewer?

Yes, I always do.
Maybe I'm speaking from my ass here but the tesla mod might be flaky/unstable in my case, but I only tried only one version of the drivers.

It is plausible - as has already been mentioned several times, different cards exhibit different problems under various circumstances. Gainward cards have issues outputting DL-DVI when virtualized. IIRC verybigbadboy reported that one of his cards had issues with the default mod and he had to use 100K resistor in position 2 and no resistors in other positions. My Gainward 690 suffers from the EEPROM effectively becoming unreadable if the 3rd nibble is modified as per the original instructions. Other people have reported that just removing resistors causes an instability, while it works for others.

There are quirks, so perhaps we should start collating information on what works on which specific model, it looks like there are a lot of possible combinations.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrkrad on December 27, 2013, 01:52:24 pm
I'd bet $50 running OSX the same hacked card would perform better than (win/linux) :)

throw that quadro as video1 and the modded card as #2 btw

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: blackice504 on December 27, 2013, 04:06:30 pm
Just some advice.

Its one thing to hack the ID but I am sure that the video ram is ECC on Quadro where on the Geforce cards are not ECC, if this is the case those errors that can happen in ram or on the way to and from ram will not be corrected thus the data is not 100% accurate compared to a system with ECC ram, just like a Desktop can be used as a Basic Server but at the end of the day its just a desktop with server software, the real servers have ECC and all those other features that Servers come with.

Just the heads up but as I said I am not 100% on this.

what this means for rendering, I guess you could render something and it might have errors in the image and may spoil your work.

Notes, there also could be other things as well like different memory bus example 256bit vs 384bit this basically means the bus is wider thus more memory bandwidth. "if the clock and timings are the same"

Instruction sets can be different as well and that will have an impact depending on what your doing.

Me personally I would only try this on a SPARE card and research to make sure everything else hardware wise is the same specs.

There is also the possibility that this could work 100%.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 27, 2013, 04:47:00 pm
Its one thing to hack the ID but I am sure that the video ram is ECC on Quadro where on the Geforce cards are not ECC, if this is the case those errors that can happen in ram or on the way to and from ram will not be corrected thus the data is not 100% accurate compared to a system with ECC ram, just like a Desktop can be used as a Basic Server but at the end of the day its just a desktop with server software, the real servers have ECC and all those other features that Servers come with.

ECC on Nvidia GPUs is done in software - you get 8/10 storage overhead for ECC, but there is no difference in the actual RAM. You enable the ECC feature in the MC, reboot and your VRAM reduces and gets a bit slower. On modified GeForce cards this doesn't work. If you mod a 4GB 680 to a K5000 and flash the K5000 BIOS onto it, the option will appear in the control panel, but it won't actually do anything (RAM size doesn't shrink, RAM I/O doesn't slow down).

what this means for rendering, I guess you could render something and it might have errors in the image and may spoil your work.

For aircraft component design or nuclear simulations, that might be an issue. For most uses it's not really an issue.

Notes, there also could be other things as well like different memory bus example 256bit vs 384bit this basically means the bus is wider thus more memory bandwidth. "if the clock and timings are the same"

Quadro/Grid/Tesla parts generally have equivalent GeForce parts, and the spec of the GeForce part is at least as good as the pro counterpart, e.g. GTX480 beats the Quadro 6000 on everything but RAM size (1.5GB vs. 6GB), but it is clocked higher, has the same width memory bus, and it has more shaders (480 vs. 448)

Instruction sets can be different as well and that will have an impact depending on what your doing.

If that is the case, the driver glazes over it. While there is a difference in the exposed GL primitives (even after modification), it is also very evident that the software implementation of the missing GL primitives on GeForce cards is deliberately massively crippled.

Me personally I would only try this on a SPARE card and research to make sure everything else hardware wise is the same specs.

There is also the possibility that this could work 100%.

I guess you haven't noticed (size of the thread being a hint) that there are hundreds of people who have been modifying cards like this for things like virtualization with great success.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: blackice504 on December 27, 2013, 06:02:29 pm
Its one thing to hack the ID but I am sure that the video ram is ECC on Quadro where on the Geforce cards are not ECC, if this is the case those errors that can happen in ram or on the way to and from ram will not be corrected thus the data is not 100% accurate compared to a system with ECC ram, just like a Desktop can be used as a Basic Server but at the end of the day its just a desktop with server software, the real servers have ECC and all those other features that Servers come with.

ECC on Nvidia GPUs is done in software - you get 8/10 storage overhead for ECC, but there is no difference in the actual RAM. You enable the ECC feature in the MC, reboot and your VRAM reduces and gets a bit slower. On modified GeForce cards this doesn't work. If you mod a 4GB 680 to a K5000 and flash the K5000 BIOS onto it, the option will appear in the control panel, but it won't actually do anything (RAM size doesn't shrink, RAM I/O doesn't slow down).

what this means for rendering, I guess you could render something and it might have errors in the image and may spoil your work.

For aircraft component design or nuclear simulations, that might be an issue. For most uses it's not really an issue.

Notes, there also could be other things as well like different memory bus example 256bit vs 384bit this basically means the bus is wider thus more memory bandwidth. "if the clock and timings are the same"

Quadro/Grid/Tesla parts generally have equivalent GeForce parts, and the spec of the GeForce part is at least as good as the pro counterpart, e.g. GTX480 beats the Quadro 6000 on everything but RAM size (1.5GB vs. 6GB), but it is clocked higher, has the same width memory bus, and it has more shaders (480 vs. 448)

Instruction sets can be different as well and that will have an impact depending on what your doing.

If that is the case, the driver glazes over it. While there is a difference in the exposed GL primitives (even after modification), it is also very evident that the software implementation of the missing GL primitives on GeForce cards is deliberately massively crippled.

Me personally I would only try this on a SPARE card and research to make sure everything else hardware wise is the same specs.

There is also the possibility that this could work 100%.

I guess you haven't noticed (size of the thread being a hint) that there are hundreds of people who have been modifying cards like this for things like virtualization with great success.

as stated I just wanted to outline things to look out for as in many cases people miss differences especially in hardware as sometimes firmware or ID may work but not often.
But also stated I have not looked into this.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 27, 2013, 08:33:47 pm
Excellent work on this and thanks to everyone who provided information and got these hacks to work!

I have a few questions.  I have successfully modded the DeviceID of my MSI GTX770 to a Tesla K10 (but could not get DeviceID to change to 0x11BF for a Grid K2 using the 40k resistor at the 2nd resistor, even tried 100k.  My current mod only removed the 25k at 3rd resistor location, so its setup as NONE, 25k, NONE, NONE, respectively) and flashed it with my own modified BIOS (changing the DeviceID and fixing the checksum on a copy of my backed up BIOS)

It gets detected in GPU-Z properly:
(https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=73275;image)
But, it says its running @x16 1.1.  Is there a fix for that?

When I try to run nvidia-smi it says its in TCC mode (-dm 0 and -fdm 0 dont change it), but I'd like to get it into WDDM mode.  Is this possible?
I'd like to use WDDM mode to test the card's performance on the local Windows installation before I start setting up gpu passthrough, but the card doesnt seem to be working properly.  When I go into Screen Resolution, Advanced, it says the adapter type is Microsoft Basic Display Driver (I'm assuming because its in TCC mode), but my device manager says that I only have a Tesla K10 installed.

Also, has anyone else figured out what resistor to put to get it to change the third byte to B from 8 on the MSI cards?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 27, 2013, 09:15:54 pm
Your card isn't working properly - that much is obvious from GPU-Z output. The RAM size is wrong, and the clocks are reading as 0. I suspect if you check Device Manager it'll say there's a problem with the device. A common cause of this is that your BIOS checksum is wrong. Did you fix the checksum using Kepler BIOS Tweaker? NiBiTor doesn't understand UEFI header/footer on the BIOS so will probably get the checksums wrong. But you would be best off just flashing the original unmodified BIOS back onto the card without any modifications (apply appropriate overrides to get it to stick).

I have a MSI 680 (i.e. the exact same card) modified to a K10, and it works just fine for me.

Also note that there is nothing to be gained to modifying to anything else. The features enablable by the mod are TCC and virtualization, which you will get regardless of whether you mod to K10, K5000 or Grid K2. Stick with K10 as it is the simplest and most painless mod on the 680 that gets you all the benefits.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 27, 2013, 09:29:19 pm
The only reason I flashed the modified BIOS onto the card was because it was doing the same thing with the original BIOS and I thought that would fix it.  In Device Manager, there's no issues.  Yes I fixed the checksum using Kepler's BIOS Tweaker.  I just reflashed the BIOS and its doing the same thing, 0 clocks.

Any suggestions?

Thanks in advance
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 27, 2013, 09:41:35 pm
Which driver are you using? Is the card showing up as Tesla K10 in Device Manager, without any warnings on it? DM says it's working properly?

It is vaguely plausible that Nvidia might have updated their driver to make modified cards not work. Possibly a PR disaster waiting to happen (again - last time was when SLI magically started working on non-Nvidia chipset motherboards for Core i series CPUs when Intel unceremoniously refused to licence them for a QPI implementation because Nvidia didn't allow SLI to work on Intel's chipsets back in the X38/X48 days).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 27, 2013, 11:28:44 pm
I am using the latest drivers (331.82).  A funny thing just happened... The card came up as a GTX760 0x1187 and surprise... it worked... as a GTX760.  I took the card out and checked my solder joints and it came back up as a K10, and same thing, nothing works.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 27, 2013, 11:56:11 pm
Hmm... Can you check what GPU caps viewer says about the device ID?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 27, 2013, 11:58:06 pm
GPU caps viewer is acting strange:
(https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=73290;image)(https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=73292;image)

Update:  I tried 320.49 drivers... same results.  0s across the board
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 28, 2013, 12:16:50 am
Is the card the primary card in your system? Does the machine POST with it as the primary?
Two things to check:
1) your solder joints
2) UEFI header for device ID straps (discussed on this thread about 10 pages back)

Also, can you dump the BIOS out of the card in this state?

Can you try the Quadro/Tesla driver version 320.92?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 28, 2013, 01:05:59 am
Yes, its the only card in the system

Checked...
1) Solder joints are good
2) My Straps are correct: FF FF FF F7 00 00 00 80 at 0x1C... its unlocked, or are you talking a different part of the UEFI header?

I did dump the bios in this state, and it compares equally to my original backup.

When dumping the BIOS, it has the right DeviceID, but check this info in the text file.  Device Name still says GTX 770.

(https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=73313;image)
And still not correct info in GPUz
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 28, 2013, 04:04:36 am
Gordan, THANK YOU SO MUCH!!

SUCCESS!!  I have successfully modified MSI GTX 770 to an Nvidia Grid K2:


The process was to remove both 25k resistors at 1 and 3 spots AND doing a BIOS modification, changing the OR section of the strap to 00 3C 00 90
thanks to Gordan's post:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg316134/#msg316134 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg316134/#msg316134)

(https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=73346;image)(https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=73348;image)

My only question is that I noticed in Caps viewer, it says the DeviceID is 0x11AF.  With the BIOS modification forcing the bit to be high, will that be a problem with vga passthrough?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 28, 2013, 07:53:35 am
Unfortunately, that won't work. The driver checks the hard strap (what caps viewer shows). If this isn't on the driver's approved whitelist for virtualization, it won't enable the card from the VM. You need to unmod the 3rd nibble. If you are having random issues with 4th nibble resistors removed (and you have double checked your 3rd nibble soldering) you need the 40k resistor there to hard set the 4th nibble to 0xF.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex870 on December 28, 2013, 10:43:36 am
So has anyone found a suitable K6000 bios for their 780TI-18K yet?  I got the hardware strap to work fine according to the guztech recipe, and I can report adding 4" of wire wrap wire to an external switch causes no problems (i.e. parasitic) with the device ID either.  I'll post a few pics if ppl want - the soldering is a bit embarrassing though.

I can only find one K6000 bios so far and when I tried nvflash --version against it, it reports "PCI block chain corrupted".  So not sure about that.  But also, the reported memory size needs tweaking down to 3GB too.

--update

Looks like you don't need a bios update unless you want to enable TCC.  I'm now successfully running the card under ESXi 5.5 using pass through.  The quadro drivers are loaded in the guest OS.  (thanks to mosmo for cluing me in on this)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 28, 2013, 06:44:05 pm
The issue is that I haven't been able to get the 3rd byte to B on the hard strap at all. I would like it to be a grid because I will be testing shared vgpu using xen and the k1 or k2 are the only cards supported.  If I put the 25k resistor back it changes it to 8 and if I put a 40k or 100k it changes to A.  Any ideas how to get it to B?

Thanks again for all your help gordan
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 28, 2013, 06:53:08 pm
IIRC it should also work on Tesla cards - probably worth a shot before you waste any more of your time.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: snotz on December 29, 2013, 12:46:42 am
All the documentation I've read says K1 or K2 only, so I'd rather try to figure out how to get the 3rd byte to a B in the hard strap.

Also, you noticed what happened in the drivers when I set it to a Tesla, so I'm not sure if there's a way for the drivers to detect the hacked cards, or not, but the K2, the way the card is currently set, seems to work OK on native Windows.

Is there anything you can suggest I can try with the resistors, or should I experiment?

Update: I noticed my card has two extra resistors by the EEPROM that aren't in the pics shown for the 680 mod.  I then noticed pics online for this board are version 3.0 which matched the pics, mine is version 4.0.  They changed the board!  The two resistors are very low... 6ohm (not even 1k) and are labeled R779 and R780. Should I try to jump one of them and remove the resistor?

I will try to take a pic but my camera is poor quality.

Update2: I added the 25k ohm resistor back and made it a Tesla K10, having the same issues as before.  Now, I modified the BIOS AND strap to make the DeviceID 0x1184, with success... it installed the driver for the GTX 770, and is fully operational on bare metal Windows 8.1.  This finding tells me that the K10 (which doesnt have any display outputs) was changed in the driver to not link the DVIs to the GPU (The DVIs came up as Microsoft Displays, see above).  Changing the soft strap allowed the GTX 770 driver link the DVI to the GPU, fully enabling the card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ijsf on December 29, 2013, 02:52:08 pm
Just wanted to give you guys a heads up on the modifications you're doing on these cards. I see the knowledge I tried to share in my earlier thread on the NVIDIA forums has been put to good use. Honestly, I did expect them to nuke the thread instantly though, but it still seems to be there.

Either way, as oguz286 from Guztech has probably already mentioned, we've successfully done yet another GTX780 to K20 modification. I was primarily involved with the reverse engineering of a series of BIOS ROMs, this was an unexpected but mandatory step due to the PCB configuration differences between the two cards (RAM chip configuration, notably).

Part of the success was in decompiling the ROM script opcodes into readable form, which we did for a number of ROMs, and figuring out which opcodes were responsible for setting up the RAM block configuration. Lots of thanks to the guys over at the open-source nouveau NVIDIA driver there. I'm pretty certain other features such as PCIe 3.0, ECC, double precision floating point and copy engines are also contained inside the opcode values, but our mission was accomplished as soon as our CUDA kernels started working.

Can't help but say though that sooner or later these guys will be switching to built-in fuses..
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 29, 2013, 04:10:03 pm
ijsf, good to see that you have made an appearance. :)

I am not as confident as you that some of the features are in fact purely BIOS driven. For example, if you flash a K5000 BIOS onto a suitably modified 4GB 680, the ECC settings become selectable, but verifiably don't do anything. Secondary copy engine also doesn't become available, which implies that both of those features are already disabled in the silicon. As for PCIe 3.0, I'm reasonably confident the reason your modified 780 isn't working in 3.0 mode is because it's hardware device ID doesn't match the actual device ID (check what GPU caps viewer reports the device ID as - it will show the hard-strapped ID, not the soft-strapped one). It is the hard-strap that makes the driver decide whether to make certain features work, such as PCIe 3.0.

On my MSI 680 I had a similar problem when soft-modding into a K10. Soft-modded, the Tesla driver "worked" fine, but PCI passthrough wasn't working and the card was always running in PCIe 1.1 mode. When I switched from soft-strap mod to hard-strap mod, passthrough started working and PCIe went into 3.0 mode.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ijsf on December 29, 2013, 09:12:50 pm
Note that the GTX780 to K20 simply isn't possible without hardware strap/resistor modifications, so the card is a combination of hard and soft strap modifications.

By the way, we never did get to flash a genuine or even modified K20 BIOS into the GTX780 because the board configurations were simply too different. We ended up modifying the original GTX780 BIOS, specifically the soft straps, and the opcodes writing to the corresponding board configuration registers, in order to change the RAM block.

As far as I remember, the K20 doesn't ship with PCIe 3.0 enabled. It would make sense that one or more GPU registers would control this functionality in terms of cost effectiveness, but I didn't really look for it while I was at it.

Anyway, research from Nouveau suggests that there are number of fuses on these cards that indeed (permanently) disable an array of these features. These features do have corresponding control bits in GPU registers, as long as the fuses aren't gone. Not sure if these are irreversible or efuses.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 30, 2013, 12:00:32 am
I'm pretty sure it is the driver slowing down the 780 to PCIe 1.1 because the hard-strap isn't matching. My 680/K10 had the same issue when soft-modded. When I switched from soft-mod to hard-mod, it went into PCIe 2.0 mode. Keplers require a hard-mod to be properly effective.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jager on December 30, 2013, 09:26:55 am
What about hacking driver to enable those blocked features? There is this Different SLI driver version of nvlddmkm.sys(most recent is 320.18, autopatcher for newer ones). Hacked code is after driver code itself and there is modifications done in couple places in original code that checks SLI compatibility, these modification points to added code.

PS.It seems that those Quadro only settings is still not available on control panel after BIOS mods too?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 30, 2013, 11:49:47 am
Hacking the driver would, indeed, be the ideal solution, a-la DifferentSLI. If you look at the link to the Xen list a few pages back, I suspect that guy did something similar to neuter a check in the driver for whether to allow virtualized operation or not. Unfortunately he never published the patch or the process to patch future drivers.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vicardomax on January 07, 2014, 04:15:44 am
Hi all,

Recently I've just bought a Asus GT640-2GD3 thinking that the PCB and resistors placement should be the same as 1GD3 but apparently it's not. I've tried to locate the R1 - R4 eg R543 resistor but I cannot find it on the board. Could you help me out here please to identify the resistors to change this to Grid K1? Thanks a million in advance. I've attached the images as well :) Do kindly let me know if it's not sufficient :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: tallnerd1985 on January 13, 2014, 07:03:59 am
So here is a weird scenario to try out with anybody here that has GTX card modified into a Quadro with a virtualization setup for multiple VMs with VGPU enabled. I know the Keplar based Nvidia cards have a technology called GameStream, formally GRID, that can take any approved games or Steam Big Picture mode and pipe it a Nvidia Shield to play games. I wonder if someone can test this on their modded cards and see if multiple VMs can utilize this function.

I know not everyone can get their hands on a Nvidia Shield but there is a Android and PC app being developed here at http://forum.xda-developers.com/showthread.php?t=2505510 (http://forum.xda-developers.com/showthread.php?t=2505510) that works just like the Nvidia Shield and replicates its functions on either another PC or any current Android phone/tablet/TV Console.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on January 13, 2014, 01:53:33 pm
So here is a weird scenario to try out with anybody here that has GTX card modified into a Quadro with a virtualization setup for multiple VMs with VGPU enabled. I know the Keplar based Nvidia cards have a technology called GameStream, formally GRID, that can take any approved games or Steam Big Picture mode and pipe it a Nvidia Shield to play games. I wonder if someone can test this on their modded cards and see if multiple VMs can utilize this function.

I know not everyone can get their hands on a Nvidia Shield but there is a Android and PC app being developed here at http://forum.xda-developers.com/showthread.php?t=2505510 (http://forum.xda-developers.com/showthread.php?t=2505510) that works just like the Nvidia Shield and replicates its functions on either another PC or any current Android phone/tablet/TV Console.

I pass through my 780ti modded to K6000 to a windows 8.1 vm. Geforce Experience does not support Quadro cards so it wont work.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: tallnerd1985 on January 14, 2014, 05:50:00 pm
So here is a weird scenario to try out with anybody here that has GTX card modified into a Quadro with a virtualization setup for multiple VMs with VGPU enabled. I know the Keplar based Nvidia cards have a technology called GameStream, formally GRID, that can take any approved games or Steam Big Picture mode and pipe it a Nvidia Shield to play games. I wonder if someone can test this on their modded cards and see if multiple VMs can utilize this function.

I know not everyone can get their hands on a Nvidia Shield but there is a Android and PC app being developed here at http://forum.xda-developers.com/showthread.php?t=2505510 (http://forum.xda-developers.com/showthread.php?t=2505510) that works just like the Nvidia Shield and replicates its functions on either another PC or any current Android phone/tablet/TV Console.

I pass through my 780ti modded to K6000 to a windows 8.1 vm. Geforce Experience does not support Quadro cards so it wont work.

If maybe the card was modified to a GRID K1 or K2, would that possibly work since that was the sole purpose of the Grid technology?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on January 17, 2014, 10:34:01 am
This is just deliberate incompatibility between GeForce and Quadro introduced so that you can't game on a Quadro and can't virtualize GeForce. There is a device ID whitelist in the driver based on which it decides whether it's going to boot up the GPU correctly or fail with a code 10.

If you want remote gaming, I suggest you look at Kainy. It has clients for Windows, Linux and Android, and will do the same thing.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Sigmoid on January 17, 2014, 03:35:23 pm
Well it's not quite that you cannot game on a Quardo, more like you cannot use the "advanced" gaming gimmicks. Honestly, I wouldn't be missing the functionality of streaming to an nVidia shield. ;) (I wouldn't consider buying one in the first place, to be honest. xD I'm quite alright with my trusty XBox360 controller.)
(By the way I don't know if anyone offered this solution, but the reason GeForce doesn't do surround on Linux is not that they don't think much of Linux. It's quite the opposite. They consider Linux a "professional" platform, ie. the people who want surround on Linux are architects, engineers, etc. working at some design lab running CAD/CAM, and they should buy the more expensive "professional" card.)

Anyway, I was wondering what a Tesla card can do, ie. what do you gain from modding your GeForce to a Tesla, as opposed to a Quadro?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on January 17, 2014, 03:40:14 pm
AFAICT there is no advantage to Quadro over Tesla, over and above that it is easier to mod in some cases (only one resistor pair to mod instead of 2). I have a 680 modified into a K2 and another modified into a Tesla, and haven't observed any difference in functionality between the two. Both work virtualized which is the only real reason to modify in the first place.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: sisteczko on January 21, 2014, 08:07:19 pm
I'd like to enjoy smooth VGA Passthrough with modded GeForce GTX 680. I've found on local auction Gigabyte model GV-N680OC-2GD (http://www.gigabyte.com/products/product-page.aspx?pid=4178#sp (http://www.gigabyte.com/products/product-page.aspx?pid=4178#sp)), and I'd like to buy it, if I can have hope to find a place of the resistor, which when removed, would turn this card into Tesla K10.

You know, clueless removing random resistors from the card would hardly do any good ;-)

Thank you for your help.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on January 21, 2014, 08:51:05 pm
Go to page 1, post 1, find the link that says 680 has also been hacked. Click on it. Look at the photo in that post. Remove the resistor 3 marked in the photo. If that works fine (it does on my MSI GTX680), you won't have to add a 40K resistor in position marked 2, which means you won't have to remove the heatsink, since resistor 3 is on the back of the PCB.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: airthimble on February 08, 2014, 01:48:35 am
Has anyone investigated if a 780 ti modded to a K6000 has the increased DP performance?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: skandal on February 19, 2014, 11:03:21 am
hello ..
sorry for the mistakes but I'm using a translator to write.

I have a ZOTAC gtx 650ti (gk106 - 11c6) can be changed by changing the resistance in the
Quadro k4000?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: karolos71 on February 19, 2014, 11:09:25 am
Hello Kwikit

Why instead building 8 workstations for irey 3ds Max, just build one containing at least 8 graphic cards...
vmware horizon 5.3 and use for example gtx 580 softmoded to tesla M2090, or 680 softmoded ...
for iray it does not matter if the card is connected by 16x pcie or 8x, 4x ,1x ... because all computation made inside the card
I tried and it works well ...
I'm going to waw on Saturday and we can talk about it at midday or later...
It's cheapest solution to use horizon view 5.3 passthrough on softmoded cards
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: karolos71 on February 19, 2014, 03:19:07 pm
Hello Skandal
It looks possible from my point
As both card are the same family and very close numbers and if you going to use it for passthrou vmware or xen but  I haven't tested
If you change only numbers should pass...
Please let me know how it works
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on February 19, 2014, 06:58:14 pm
Why instead building 8 workstations for irey 3ds Max, just build one containing at least 8 graphic cards...
vmware horizon 5.3 and use for example gtx 580 softmoded to tesla M2090, or 680 softmoded ...

Soft-modding doesn't work on 5xx series and later. 4xx series is the latest you can soft-mod. 580, despite it being very similar to the 480, cannot be soft-modded for virtualization passthrough.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: karolos71 on February 19, 2014, 11:18:25 pm
I read that someone flashed 580 to tesla M2090 and it pass on xen ...
That's all I need
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on February 19, 2014, 11:37:43 pm
You read wrong. They flashed it to a Tesla but to enable the TCC mode.

You can soft-mod the 580 into either a Quadro 7000 or a Tesla M2090, but doing so will not work for passing it to a VM. I did extensive testing with my 580 before I sold it. 480 is the last card that is soft-moddable for VGA passthrough. Modifying the 480 also gets you the dual asynchronous DMA engines, which soft-modding a 580 does not. So if you are purely after a compute job card with non-trivial amounts of bus I/O, 480 is probably still the way forward. For some loads the 480 has also been reported to be considerably faster than the 680.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex870 on February 22, 2014, 01:35:37 pm
Has anyone investigated if a 780 ti modded to a K6000 has the increased DP performance?

My 780Ti->K6000 is in a VMware ESXi server, so I can run a Win 7 x64 benchmark in that configuration if you like.  I have Sisoft Sandra on the guest already btw.  If you (or others) have an unmodded card, we can compare figures.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SansNombre on February 23, 2014, 02:00:04 am
Newbie question: I am running Solidworks on my PC, but am using a DirectX card (7970 GHz version), and am running relatively slow for that application. I would love an OpenGL card, but the costs . . .

Recently I created a short 13 second video for a client that I had rendered for photorealism and it took 4 hours to process, so I have to do something to speed it up, as I can't have the PC on that process for half the day.

So if I purchased a 680GTX and made the mod described here, how would my Win7 x64 OS view the hardware? As a 680 for DirectX applications and as a K5000 for OpenGL-driven software? Or do you have to select one of the options somehow?

I appreciate the information.

Good work here.

Thanks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: suchipi on February 23, 2014, 02:44:44 am
I'm in the same situation as skandal, with a 650Ti and wondering if it can be modded into a Quadro K4000 (for Xen VGA Passthrough). Has anyone tried? Is anyone willing to try on my card and ship it back (I could pay you)?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: zeroxxorez on March 03, 2014, 09:45:56 pm
Hi all! First off, amazing work! This is slightly off topic,  but I could really use a hand :-)

I bought a dud gigabyte 670 gtx OC with a bios issue, which I managed to fix by shorting pins 1 and 8 on boot, removing and flashing bios with -4 -5 -6 command. Innitally this worked, but after restarting, the subsystem Id is reading 0000 0000.

Long story short, does anyone have any idea how to correctly set subsystem ID? I can write to the bios fine but for some reason its not correctly setting the subsystem ID...

Thanks in advance!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Luke212 on March 06, 2014, 10:11:15 pm
is anyone going to mod a titan black? it has a pci id of 10DE 100C. is this easier to mod than titan?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: combsbj on March 12, 2014, 01:42:36 am
MSI NVIDIA GeForce GTX 650 1GB GDDR5 PCI Express 3.0 Graphics Card N650-MD1GD5/OC

Any chance someone can help me locate the appropriate resistors?

I think I need to replace a 25k with a 35K to identify as a K1...

GTX 650 : 10DE:0FC6    c = 25k
Grid K1 : 10DE:0FE6    e = 35k

This is for vDGA w/ View.  Esxi 5.5 allows passthrough just fine, and it shows correctly in VM.  Just can't enable PCoIP without Quadro driver...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 12, 2014, 01:55:34 am
Really? Nvidia have modified their drivers to allow passthrough with GeForce cards?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: combsbj on March 12, 2014, 02:04:53 am
No, VMware ESXi allows it to be passed through.  It shows in the VM as a gtx 650 as it should.  It shows correctly in GPU-Z as well. But, I cannot do anything with it. View client will only use it if the quadro driver is loaded.  I'm not aware of any other remote desktop client that can use it either.  I thought Splashtop maybe, but so far no luck.

Alternatively, I have a Quadro FX 4400 and ESXi will not even let me enable PCI passthrough for it at all.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 12, 2014, 03:30:31 am
Ah, I see. Yes, this is indeed the normal symptom. You can pass the card through as a normal PCI device, but the driver inside the VM will refuse to initialize it if it's device ID isn't in the whitelist.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: The_Moves on March 14, 2014, 09:39:12 pm
So has anyone done a GTX 760? From reading most of this thread, it is basically a no - is it just because no one has tried? I have an EVGA 760 that I can't use as i'm messing with ESXi and GPU Pass-through. I ended up buying a GTX 465 and converting it to a Quadro 4000 - works great in Windows 7 with NVIDIA drivers installed and I can play Crysis 2 on moderately high settings. Not nearly as smooth as running my system bare metal with my GTX760. Originally, the reason I converted my GTX 465 was to use it with OS X as a VM, but havn't been able to get the Display to initalize - here I will attempt to get the Q4000 passed through to a linux VM and working, then maybe i'll understand how to do it in OS X.

Should I try to get some 10/15x pictures of my GTX 760 and splice them together? Would that help people looking at the card? Does removing the heatsink void the warranty?

I did find this picture, and it appears that the required resistors are near the top right heatsink screw:

http://images.anandtech.com/doci/7103/NVIDIA_GeForce_GTX_760_Back.jpg (http://images.anandtech.com/doci/7103/NVIDIA_GeForce_GTX_760_Back.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 14, 2014, 09:53:10 pm
GTX760 is a rebadged GTX660, which is a GK104 same as 670 and 680. There is a good chance the PCB is similar enough that the resistor locations are the same. I'd say you should compare it with the photos already posted about modifying the 670 and 680 cards, the chances are the relevant parts will be the same. If your card's device ID is 0x1185 or 0x1187 you should be able to just remove the resistor for the 4th nibble and turn it into a K10.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: The_Moves on March 14, 2014, 09:58:00 pm
My goal is to use it for GPU Passthrough, so I was under the impression I would need a GRID K1 or GRID K2? Or even a K500 since it is a GK104 - per wikipedia.

Is the TESLA K10 capable of GPU Passthrough? I don't really need or have a desire for vSGA Shared Graphics, just dedictated GPU to a VM which I will connnect to a monitor
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 14, 2014, 10:04:34 pm
Tesla, Quadro, Grid, they are all (except the cheap low end NVS models) white-listed in the driver to let it initialize the card despite detecting it is running in a VM. I'm using a GTX680 modified into a K10 on one of my machines.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Raim on March 14, 2014, 11:26:29 pm
I set microswitch with resistor 18k in 780ti and changed memory size in BIOS from Quadro.
I parse BIOS dump with NVBIOS( Thanks to Gordan for the hint with Gainward 2Gb and 4Gb. ) and found a difference between 780ti and Quadro in R[0x11e200] and R[0x11e204].
One can eliminate it and get 3Gb with Quadro BIOS.

But double precision performance in CUDA-Z not changed. May be it hard strapped, or cut from crystal, or as in Titan case: "Full speed FP64 is disabled by default on GTX Titan. FP64 can be enabled in NVIDIA control panel.", but Quadro not show this option...


 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 15, 2014, 12:23:26 am
Cool, any chance of a a hex diff for the Q6000 BIOS to adjust the memory to 3GB?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Raim on March 15, 2014, 01:06:03 am
Here is HexDiff image.

And parsed ROM from 780ti
0xa8ab: 8f 00 e2 11 00 04 02                           RAM_RESTRICT_ZM_REG_GROUP   R[0x11e200] 0x04 0x02
0xa8b2:                                                   R[0x11e200] = {
0xa8b2: 00 90 cf 01                                          0x01cf9000
0xa8b6: 00 90 cf 01                                          0x01cf9000
0xa8ba: 00 90 cf 01                                          0x01cf9000
0xa8be: 00 90 cf 01                                          0x01cf9000
0xa8c2: 00 90 8f 03                                          0x038f9000
0xa8c6: 00 90 8f 03                                          0x038f9000
0xa8ca: 00 90 8f 03                                          0x038f9000
0xa8ce: 00 90 8f 03                                          0x038f9000
0xa8d2:                                                   }
0xa8d2:                                                   R[0x11e204] = {
0xa8d2: 00 90 55 02                                          0x02559000
0xa8d6: 00 90 55 02                                          0x02559000
0xa8da: 00 90 44 02                                          0x02449000
0xa8de: 00 90 44 02                                          0x02449000
0xa8e2: 00 90 55 02                                          0x02559000
0xa8e6: 00 90 55 02                                          0x02559000
0xa8ea: 00 90 55 02                                          0x02559000
0xa8ee: 00 90 55 02                                          0x02559000
0xa8f2:                                                   }

and not modified  Quadro
0xa8c6: 8f 00 e2 11 00 04 02                           RAM_RESTRICT_ZM_REG_GROUP   R[0x11e200] 0x04 0x02
0xa8cd:                                                   R[0x11e200] = {
0xa8cd: 00 90 cf 01                                          0x01cf9000
0xa8d1: 00 90 cf 01                                          0x01cf9000
0xa8d5: 00 90 cf 03                                          0x03cf9000
0xa8d9: 00 90 cf 03                                          0x03cf9000
0xa8dd: 00 90 cf 01                                          0x01cf9000
0xa8e1: 00 90 cf 01                                          0x01cf9000
0xa8e5: 00 90 cf 03                                          0x03cf9000
0xa8e9: 00 90 cf 03                                          0x03cf9000
0xa8ed:                                                   }
0xa8ed:                                                   R[0x11e204] = {
0xa8ed: 00 90 55 02                                         0x02559000
0xa8f1: 00 90 55 02                                       0x02559000
0xa8f5: 00 a0 66 02                                          0x0266a000
0xa8f9: 00 a0 66 02                                          0x0266a000
0xa8fd: 00 a0 55 02                                          0x0255a000
0xa901: 00 a0 55 02                                          0x0255a000
0xa905: 00 a0 55 02                                          0x0255a000
0xa909: 00 a0 55 02                                          0x0255a000
0xa90d:                                                   }
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Raim on March 15, 2014, 08:07:01 am
Compare the hard strap resistor position on Quadro and 780. As you can see minimum two resistors position changed. May be 18k mod not fully convert 780ti to Quadro.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 15, 2014, 08:50:04 am
Now that is quite interesting. I don't suppose you actually have a K6000 to measure the resistances on it?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Raim on March 15, 2014, 07:56:49 pm
This photo is part of
http://www.coolingconfigurator.com/upload/pictures/Nvidia-Quadro-K6000-12GB-GDDR5---PCB.jpg (http://www.coolingconfigurator.com/upload/pictures/Nvidia-Quadro-K6000-12GB-GDDR5---PCB.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on March 18, 2014, 11:01:03 pm
is anyone going to mod a titan black? it has a pci id of 10DE 100C. is this easier to mod than titan?
I'd be interested to know as well. Will have a Titan Black in my hands sometime next week.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Raim on March 19, 2014, 05:17:46 pm
I'd be interested to know as well. Will have a Titan Black in my hands sometime next week.
Can anyone read the Titan card's strap.
Getting the card's strap is done by peeking at 0x00101000. The strap is an hardwired register that gives some knowledge upon the specific card. It is set by the gpu manufacturer and cannot be extracted from the vbios.
The instruction is from https://github.com/pathscale/pscnv/wiki/TestingTimings#get-your-cards-strap

Ubuntu terminal
Code: [Select]
sudo apt-get install git libpci-dev libpciaccess-dev libxml2-dev cmake flex bison libx11-dev libvdpau-dev libxext-dev
git clone http://github.com/envytools/envytools/
cd envytools
cmake .
make
cd ..
sudo ./envytools/nva/nvapeek 0x00101000 > nv_strap_peek.txt

Please post the generated file nv_strap_peek.txt
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 19, 2014, 06:27:01 pm
I am about 90% certain the strap you speak of is set by the resistors on the PCB - what we have been hacking here. The soft strap also exists which can be set by vbios, but that is nowdays used by the likes if Grid cards to present a different personality to the driver in the VM than what is given by the hard strapped device ID.

Still, it is perhaps worth an extra check to see if this is the same as the hard strap set by the potential divider (resistors on the PCB).

Either way, I think the way forward in the medium term is patching Xen/KVM/QEMU to neuter the method the Nvidia driver uses to check whether it is running in a VM. That would make modding deprecated and irrelevant.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Raim on March 19, 2014, 08:11:33 pm
I am about 90% certain the strap you speak of is set by the resistors on the PCB - what we have been hacking here. The soft strap also exists which can be set by vbios, but that is nowdays used by the likes if Grid cards to present a different personality to the driver in the VM than what is given by the hard strapped device ID.

Yes, when I added the pull up resistor,  the strap register changed.
bit 28 DEVICE_ID bit 4
bit 30: DEVICE_ID bit 5

My aim is to see what the difference in this register between a Titan and 780ti.

The link to document about strap register
https://github.com/envytools/envytools/blob/master/hwdocs/io/pstraps.rst
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 19, 2014, 08:20:44 pm
I think you'll find the value of the register in both cases is the same as the card's PCI device ID (unless you changed the device ID via the soft strap). The driver checks the value of the register, rather than the PCI device ID, hence why soft-modding no longer works on Kepler class cards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on March 21, 2014, 10:53:40 am
Just wanted to report back that I've been running an EVGA Superclocked 780ti with resistor for a few months now. Absolutely no issues passed through under 5.5/5.1 ESXi.
I went one step further and bought the back-plate and ACX cooler for the Titan. I had to dremmel the cooler heatsink and plate to fit the 780ti, but I managed it :-)
Now all we need is some clever sod to either mod ESXi or the Nvidia drivers so that we can use non-ref 780ti with our hypervisors.

Thanks to this forum and Gordon in particular, I have learn't a fair bit. Keep it going chaps!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 21, 2014, 11:02:02 am
I have to say I am unimpressed by just about all the non-reference coolers like the ACX. The reference design is actually really, really good - not only does it ensure good cooling of the card, it also makes all of the hot air get straight out of the case via the grille in the back plate.

In contrast, the coolers like the ACX dump all the hot air straight back into the case, which both reduces the cooling effectiveness (you are cooling with pre-heated recycled air) and makes everything else inside the case run hotter. This is a problem both with running multiple GPUs and power hungry overclocked CPUs.

Oh, and the resistor-across-the-EEPROM mod should work on non-reference 780Tis as well.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on March 21, 2014, 11:21:03 am
I have to say I am unimpressed by just about all the non-reference coolers like the ACX. The reference design is actually really, really good - not only does it ensure good cooling of the card, it also makes all of the hot air get straight out of the case via the grille in the back plate.

In contrast, the coolers like the ACX dump all the hot air straight back into the case, which both reduces the cooling effectiveness (you are cooling with pre-heated recycled air) and makes everything else inside the case run hotter. This is a problem both with running multiple GPUs and power hungry overclocked CPUs.

Oh, and the resistor-across-the-EEPROM mod should work on non-reference 780Tis as well.

I agree with the hot air inside the case issue, but with adequate exhaust, it should not be an issue for most. I have two top, on bottom and one rear all 140mm Noctua fans. They shift the hot air out of the case brilliantly. Also, whilst the ref cooler has improved, it's still very noise (to me) on high GPU load.

I did forget to mentio though that my EVGA 780ti is now producing a louder coil whine. I am not sure when this started and it may have always been there but nonetheless, it's starting to seriously annoy me.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 21, 2014, 11:36:14 am
I am switching to watercooling for the CPUs, but leaving my GPUs with Titan type reference coolers as they are. The GPUs are easily staying under their (95C) thermal limits (subject to not pushing the TDP past 125%) at full load (e.g. litecoin mining), but under similarly full load with only a 25% OC, my X5650 Xeons are incapable of staying below their 81C TCase limit.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: isaiah on March 22, 2014, 01:44:34 pm
 i read some post..

 so....

 can moded 680 to k5000.. and can unlock some feature only quadro have..

 but no adventage in open gl performance...

 am i understand right?



 and what is exactly 'some feature quadro only have'??
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 22, 2014, 01:57:07 pm
You understand right. The features that become unlocked are the ones that are purely up to the driver to allow, such as correct functioning when used virtualised (e.g. Xen PCI passthrough or Xen VDGA/VSGA). It also supposedly unlocks some multi-monitor features (this was OPs original requirement).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: isaiah on March 22, 2014, 02:29:44 pm
You understand right. The features that become unlocked are the ones that are purely up to the driver to allow, such as correct functioning when used virtualised (e.g. Xen PCI passthrough or Xen VDGA/VSGA). It also supposedly unlocks some multi-monitor features (this was OPs original requirement).

 thanks a lot..

  :( to me most imortent thing is open gl.. so i am dispointment....
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 22, 2014, 03:16:32 pm
What specific OpenGL requirements do you have? There are only a very small number of primitives that are disabled on the GeForce cards. Also, if you are using Linux, you may find that the open source nouveau driver performs better since it isn't deliberately crippled for non-Quadro cards - it's probably worth a try.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: isaiah on March 23, 2014, 11:29:32 pm
What specific OpenGL requirements do you have? There are only a very small number of primitives that are disabled on the GeForce cards. Also, if you are using Linux, you may find that the open source nouveau driver performs better since it isn't deliberately crippled for non-Quadro cards - it's probably worth a try.

 only maya viewport.

 can it improve under linux,nouveau driver environment ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 24, 2014, 07:29:27 am
No idea, but it's certainly worth a try.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on March 31, 2014, 10:57:01 pm
Hello.

I am trying to mod Galaxy GT640 to Grid K1 so I can test some vGPU (maybe at least passthrough)

I am trying to locate R1~R4

device name   R1   R2   R3   R4
GT 640   25k   none   10k   none
GTX 650   25k   none   35k   none
Quadro K600   none   40k   none   15k
GRID K1   none   40k   15k   none
K2000   none   40k   none   35K

So I should be able to find one 25k ohm and 10k ohm

I was able to locate R1 since there were only one resistor which shows 25k (and actually connected to pin6 SCLK)

But I cant find R2, R3, R4

R2 and R4 is empty so I dont know how to locate, for R3, there are like 5 candidate of R3 with 10k ohm.

Can anybody explain me details of how to locate R2, R3, and R4 with ohmmeter??

Thanks
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Raim on April 04, 2014, 05:57:26 pm
Can anybody explain me details of how to locate R2, R3, and R4 with ohmmeter??

R-s should be connected to SCLK, SI or SO , to pull up(Vc) or down(Gnd).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nmeatg on April 07, 2014, 05:22:15 pm
A while back someone asked about modding a GTX660 (GK106 based) into a K4000. I've done this on an EVGA GTX660 (part number 02G-P4-2662KR) but should be similar on other GTX660. Be careful there are some GTX660 that use the GK104 and are a different design. This mod is for GTX660 boards with an original PCI ID of 11C0 being modded to a K4000 ID of 11FA

This mod requires removing the heatsink to access the topside of the board. See pictures for resistor locations

R3H on topside of board controls the 3rd nibble. On a GTX660 it is 25K ("C"). Removing it gives "F" . On other boards some folks have reported leaving an open causes issues and a 40K resistor is needed. I didn't have that problem

R4H and R4L on the backside of the boards controls the 4th nibble. Remove upper resistor R4L (5K on GTX660 = "0") and add 15K at low resistor R4H for "A"

Reassemble heatsink before testing. With the mod the board now works in Xen GPU passthrough. It's also way faster than the real K4000
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: powerhouse on April 08, 2014, 03:32:55 pm
A while back someone asked about modding a GTX660 (GK106 based) into a K4000. I've done this on an EVGA GTX660 (part number 02G-P4-2662KR) but should be similar on other GTX660. Be careful there are some GTX660 that use the GK104 and are a different design. This mod is for GTX660 boards with an original PCI ID of 11C0 being modded to a K4000 ID of 11FA

This mod requires removing the heatsink to access the topside of the board. See pictures for resistor locations

R3H on topside of board controls the 3rd nibble. On a GTX660 it is 25K ("C"). Removing it gives "F" . On other boards some folks have reported leaving an open causes issues and a 40K resistor is needed. I didn't have that problem

R4H and R4L on the backside of the boards controls the 4th nibble. Remove upper resistor R4L (5K on GTX660 = "0") and add 15K at low resistor R4H for "A"

Reassemble heatsink before testing. With the mod the board now works in Xen GPU passthrough. It's also way faster than the real K4000
Thanks for posting your instructions. I could get a EVGA GTX 660 model 02G-P4-3061-KR. Do you think that would work? I would use it for VGA passthrough, to replace my Quadro 2000.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nmeatg on April 08, 2014, 10:28:43 pm
I haven't been able to find a clear picture of the backside of the 02G-P4-3061-KR so can't be sure, but that looks like it might be a different board (which would likely mean different strap positions)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: powerhouse on April 09, 2014, 01:59:21 pm
I haven't been able to find a clear picture of the backside of the 02G-P4-3061-KR so can't be sure, but that looks like it might be a different board (which would likely mean different strap positions)
Thanks for your reply! Unfortunately I couldn't find any meaningful picture of the card. The spec sheet shows only minor differences between your card and the 3061:

Spec02G-P4-3061-KR02G-P4-2662-KR
Base clock:9801046
Boost clock:10331111
Texture Fill Rate:78.4 GT/s83.68 GT/s
Except for the different GPU clock, it's most outstanding difference is the use of 2 ACX coolers (fans). EVGA advertises lower noise and better cooling with these fans. Any idea where to find more information or a picture?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nmeatg on April 09, 2014, 06:48:39 pm
I couldn't find a backside picture of the 02G-P4-3061-KR. Best was a 3/4 front shot at http://br.evga.com/PRODUCTS/IMAGES/GALLERY/02G-P4-3061-KR_XL_4.jpg (http://br.evga.com/PRODUCTS/IMAGES/GALLERY/02G-P4-3061-KR_XL_4.jpg) . From that picture the board looks like it stops at 3/4 length (like my 02G-P4-2662-KR), the few component visible are in the same position (but that's very weak evidence), and the pcie holddown tab is labeled "EVGA091 Rev1.0" vs "EVGA091 Rev1.1" on my 02G-P4-2662-KR. Other specs do match

It's a gamble whether that's the same board

As for the ACX cooler - I just don't like it. It recirculates air around inside the case because the air exhausts from the sides of the board, whereas the reference cooler exhausts out the back of the chassis

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nmeatg on April 09, 2014, 10:10:43 pm
And there was a question about modding an EVGA GTX760 (GK104 based). There are two slightly different board designs selling under the same part number 02G-P4-2762-KR. One was easy to mod, the other I haven't located the strap on (yet). They were bought within a few months of each other. Check the picture to see if the resistor arrangement looks the same - this is near the top heatsink mount. The other design has a unpopulated SOIC8 footprint so quite obviously different. If you have a matching card ...

I wanted to mod the GTX760 (1187) to a K520 (118A), but you can also mod to a K10 (118F). R4L and R4H control the 4th nibble of the ID. On a GTX660 upper resistor R4L is 40K ("7"), remove it and you get "F" for K10. Adding 15K at lower resistor R4H gives "A" for K520

With the mod the board works with Xen GPU passthrough
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: powerhouse on April 10, 2014, 05:57:28 am
I've checked some more options. I could also get the Zotac 660 or the Zotac 760. Both look like they match your photos. Here the links to the photos:

ZOTAC GeForce GTX 660 - ZT-60901-10M - http://www.zotacusa.com/geforce-gtx-660-zt-60901-10m.html (http://www.zotacusa.com/geforce-gtx-660-zt-60901-10m.html)

ZOTAC GeForce GTX 760 AMP! Edition - ZT-70402-10P - http://www.zotacusa.com/geforce-gtx-760-zt-70402-10p.html (http://www.zotacusa.com/geforce-gtx-760-zt-70402-10p.html)

I was wondering if spending the additional money (~45% more) for the 760 would really be worth it? Any thoughts on performance gains of the 760 over the 660 after modding it?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nmeatg on April 11, 2014, 05:20:54 pm
The mod doesn't alter the performance of the card. The performance difference between the EVGA GTX660 and EVGA GTX760 I have is ~12% on passmark 3D test. Be aware that the pictures may be out of date - I bought two of the GTX760 from the same place with the same part number and same pictures and got two different designs. If you're modding the GTX660 you'll need to remove the heatsink - that was simple for the reference blower, I don't have any first hand knowledge of removing the Zotac heatsink
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: telis79 on April 12, 2014, 02:18:39 pm
Hi, i have a KFA2 / Galaxy GTX 680 Ex Oc 4096mb. I bought it 2 days ago. I disapointed when i noticed that in 3ds max with vray RT  my renders had lot of noise (no clear).  I check on web and i realized that the driver of gtx doesn't work properly when the Gpu and the cuda are used for rendering. Only with Quadro k5000!

Can i please send you the photos of my card and you  guide  me how to modify this card to Quadro k5000? Is realy important for me this card to work properly with rendering because that is the only reason i bought it.

ps. i tried to find the resistors  by my self  without any  knowledge . i just used a photo from this forum with a similar card (gtx680 2gb  gigabyte)  and tried to guess the resistors. I know you propably think i am stupid!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: karakarga on April 24, 2014, 09:12:13 am
I have dual Zotac GTX670 cards with 4GB.

On one of them, I have tried the Quadro K5000 modding.

:rant: --->  NO SUCCESS  <---  :rant:

Well as mentioned earlier, the GK104 chip has variations!

gtx680   --> GK104-400-xx
gtx670   --> GK104-325-xx (on my chip GK104-325-A2)
gtx660ti --> GK104-300-xx

Probably, chips inside laser cut! So playing with resistors did not help me.

Maybe the modding needs a GTX680 (writing GK104-400-xx)

Graphics card manufacturers may put various chip versions on their cards, there are already overclocked GTX670's, maybe on them GK104-400 chip might be present!

So, if you don't have this chip, it seems modding to K5000 is not possible!  :wtf:


Note: By the way, according to http://www.techpowerup.com/gpudb/565/quadro-k5000.html (http://www.techpowerup.com/gpudb/565/quadro-k5000.html)

The Quadro K5000 chip carved as:  GK104-355-A2 so,

GTX680   --> GK104-400-xx
GTX670   --> GK104-325-xx (on my chip GK104-325-A2)
GTX660ti --> GK104-300-xx
K5000     --> GK104-355-A2 (the difference might, because of the earlier PCI-X rev.2)



And voila...  >:D

Again according to http://www.techpowerup.com/reviews/NVIDIA/GeForce_GTX_690/4.html (http://www.techpowerup.com/reviews/NVIDIA/GeForce_GTX_690/4.html)

GTX690 --> GK104-355-A2
K5000   --> GK104-355-A2

Therefore the modding might run much easily on GTX690!  :-DD


Popular nVidia GPU's In Detail:

TeslaK10 --> No Picture Found!
Grid K2    --> No Picture Found!
K5000     --> GK104-355-A2
GTX690   --> GK104-355-A2
GTX770   --> GK104-425-A2
GTX680   --> GK104-400-A2
GTX670   --> GK104-325-A2
GTX660ti --> GK104-300-KD-A2
GTX760   --> GK104-225-A2
Titan       --> GK110-400-A1
Titan B.   --> GK110-430-B1
GTX780   --> GK110-300-A1
GTX780ti --> GK110-425-B1





 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: RoNiNk on April 24, 2014, 10:26:03 pm
Hi all. I modified my gtx690 but it didnt work out for me. windows recognise one chip as k5000, quadro drives sucessfully installed but windows couldnt start device because device reported problem (code 43). I google this problem and tried different approaches to solve this problem but non of them worked for me. So I want do undo changes in my videocard but I dont know what resistors I should install.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 25, 2014, 04:03:28 pm
Try an older driver - it's possible Nvidia changed the driver to more thoroughly check the card. Are you getting code 43 on both GPUs?

Many people have successfully modified 670s into K10s, K5000s and K2s. I had a 680 modified into K2 and still have a 680 modified into a K10.

I am not convinced hardware changed recently since 6xx cards haven't been made in a while.

Edit:
Let me guess - Gainward GTX690? They use a slightly different strapping arrangement. Changing the resistors for the 3rd nibble degrades the signal from the EEPROM to the point where it can't be read. That can manifest as the problem you are seeing. Convert it to Tesla K10 instead. You will still get working VGA pass through. You can find the original resistor values on a photo a few pages back. You may be able the get away with just removing the resistor for the 4th nibble, that usually results in it reading as 0xF.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ddummy on April 25, 2014, 08:19:18 pm
Hi all, I am new to Nvidia card hacking. I wanna to use my gtx780Ti on a Xeon Xen hypervisor which is using ECC ram. Is that possible to use vga passthrough on that machine after I convert the gtx780Ti to K6000? If possible, would you mind to provide a detail instruction on how to do the conversion?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 25, 2014, 08:30:55 pm
Yes, I run such a setup. Look back a few pages for a diagram/info about converting a 780 into a Tesla K20c. You need to solder in a 33KO type 1206 resistor across two of the pins on the EEPROM.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ddummy on April 25, 2014, 09:08:26 pm
between SCLK and Vcc?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 25, 2014, 09:26:41 pm
I believe so.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Allso on April 26, 2014, 11:06:37 pm
If I were to change my 670 to a k5000 would that allow me to see 10 bit colors in programs such as photoshop and premiere that does not use the windows API?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: turdor on April 29, 2014, 10:05:43 am
Is GPU Affinity works on moded K5000, K6000 (Win7 64) ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 29, 2014, 10:15:23 am
The GPU affinity feature did show up  as available in GPU Caps Viewer on my 680 modified to K2, but I've no idea whether it actually worked, didn't have anything to properly test it with.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: NEOAethyr on April 29, 2014, 04:18:25 pm
Hi dudes, I modded my 680 lightning some time ago to the grid k2, just by popping off 2 resistors.

Worked fine back then, these days though there's newer drivers that block the ability to have the k2 to use dual link dvi timings.
It's stuck with single link timings.
There's a new bios for the k2 to fix this and I managed to get my hands on it.
I even managed to get the ram amount change from 4 gigs to 2 gigs thanks to this thread yet again :).

However I have one more obstacle, the k2 bios has no display output.
Anyone happen to know how mod this into the bios?

I've also got a 2nd card just sitting collecting dust ready to be modded.
But I don't wanna mess with it until I can get past this prob.

Latest usable driver for the modded k2 is 319.92.
320.xx and above all have the single link dvi timing problem.
Sucks because I got a 144hz monitor, if I use reduce timings I can get it around I think it was 68hz max lol.

If anyone wants the real grid k2 bios just say so.
It's actually one of 2 bios'es, since the real k2 is a dual pcb and dual bios card.
Came from ibm.

I've seen mention about the k5000 having the same abilities as the k2, is that true?
If that is the case I should figure out how to mod my cards into the k5000 instead.

Right now I'm kind of sick of this issue.
I've been wanting to sli my cards since last dec.
I tried the different sli patch that doesn't work for trying to sli a k2 with a 680 lol.
Though I did not try sli'ing the 680m with the 680, I didn't learn how the soft straps worked until recently (I can mod my k2 into the 680m with soft straps, but that doesn't fix the dvi timing issues).
Though I've known about them since the 6800 ultra and 6600 gt's.

Anyways to put it simply, need a mod to re-enable display's on a card that originally should not have them to begin with.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 29, 2014, 04:28:12 pm
Interesting. I found that SL DVI problem manifests on Gainward cards but not on others, with the same drivers.
If you have a driver and BIOS that work, though, why exactly would you even bother with a newer ones that don't? What exactly do you expect it to gain you?

K5000 has the same GPU as the K2, but it's a single GPU card. K2 is a dual GPU card. Note that to make the K2 BIOS work on a 680 you will also have to modify another part of the BIOS as I seem to recall I documented somewhere on this thread months ago.

There is nothing to be gained from modding to K5000 over K2. I just mod the ID to Tesla K10 on the 680s because that means only 1 resistor has to be changed rather than 2. It comes down to whether the device ID is white-listed in the driver - either it is or it isn't. If it is, it'll work in a VM, of it isn't it won't. There is nothing else to be gained from BIOS modding, unfortunately, so you might as well stick with the simplest option.

Forget SLI if you mod into Quadro/Grid/Tesla.

You CANNOT soft-mod Kepler cards. It won't work. Device ID will change as far as the PCI bus is concerned, but the value the driver checks is set in a register in the GPU which can only be set by hard-modding. Soft-modding only works up to the Fermi 4xx series cards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: NEOAethyr on April 29, 2014, 04:56:46 pm
I don't expect to gain much, I just wanna update my drivers lol.
And the sl-dvi prob actually affects all k2's, it's right in the driver readme...
It requires a bios update, which I have, it's just not usable to me without the ability to display an output.

I would of modded it back but I can't find my original resistors.
I'de have to pop off the ones on the new card just to get values from them with my dmm, then order new ones and a new soldering iron and solder both cards...
At that point I might as well figure out what resistors are needed for the k5000 mod and go with that.

I mean I could sli, if I modded my 2nd card.
But I'de essentially be stuck with the same driver for life.
It's more of a prob in linux then it is in windows right now.
In windows at least my current games work ok'ish enough, in linux that driver ver is just a little bit to old to be of use.
And yeah it effects the same exact drivers in linux then it does in windows.

If I do update my drivers, I'll be stuck at 60hz for life and that is an absolute nogo for me, I'll be dropping frames on ntsc captures...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 29, 2014, 05:06:31 pm
Again - what is the gain of the newer drivers? Is there is a clear and obvious bug you are trying to work around or are you slaving to version numbers?
Interesting re: K2 bug. Good info. My last GTX680 is modified into Tesla K10 because it was easier, so I guess that's why I hadn't noticed the problem. My daily use cards nowdays are 780Ti modded to K6000 so I guess I missed that problem by luck.

You aren't seriously talking about re-using the original resistors are you???

The resistor values are documented on the first few pages of the thread.

Sounds to me like the easiest thing to do is to mod your card(s) to Tesla K10 and avoid both the BIOS modding and driver bug issues.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: NEOAethyr on April 29, 2014, 05:37:46 pm
I'm checking out all the driver vers to find out when this problem originaly occurred.
I'm currently using 319.92, reason I wanna update it is because it's about a year old now.

Anyways it looks like the latest ver I can get my hand =s on without the prob might be 320.49.
I have not actually checked it though.

320.86 I know is affected, and it looks as if 320.78 is affected as well but I haven't checked.
I'm just going by what the readme's say this sec for those untested drivers.

I don't think it needs the edid forced because it can still read it from the monitor.
I'm gonna try this program called nvidia pixel clock patcher, it might take me a day to get around to trying it.
If that doesn't work, I'm try my hand at hex editing the driver and see if I can't figure out what changed.

I just get ver 320.49 downloaded and I'm gonna try that.

Um and in the driver readme's the issue is laid out as:
Multi-Monitor Support on GRID
Multi-monitor support on GRID boards K1
and K2 requires the following VBIOS
versions:

GRID K1:
80.07.AF.00.00
or later

GRID K2:
80:04:BA:00.00
or later

I read back when that people were having trouble getting past single link speeds in there virtual machines and this was the fix for it.
So I assume the fix and problem is one in the same.

Tesla k10 might be a solution, I haven't checked in a while which needs which resistor config but whatever is the easiest :).
These smd's, I've never seen them so small before, the ones on my card are sooooo tiny.

And thanks for the replies anyways :).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 29, 2014, 05:58:04 pm
Tesla K10 is 0x8F for the last byte of the ID. 680 is 0x80, so all you need to do is remove the resistor for the 4th nibble when modifying from 680 to K10. I have an MSI 680 modified K10 here and it works just fine while driving my IBM T221 in 2xDL-DVI mode.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: NEOAethyr on April 29, 2014, 06:22:43 pm
Cool, that sounds great :), I may try that.
I gotta take this card apart soon anyways to map out the resistors again, I totally lost the info.

Anyways that driver 320.49 didn't work, it had own probs..

But the latest pixel clock patch worked, kinda.
http://www.monitortests.com/forum/Thread-NVIDIA-Pixel-Clock-Patcher?page=1 (http://www.monitortests.com/forum/Thread-NVIDIA-Pixel-Clock-Patcher?page=1)

It allowed me to get up to 96hz with cvt reduced timing.
92hz I think was the limit without reduced blanking.
Much better then before :).
But still, not a real fix.

My monitor was actually complaining about the cable lol (after that patch at the higher refresh rates), obviously the 2nd link isn't working.

But yeah, the tesla k10 seems to be the way to go then.
It'll be easy for my 2nd card (unmodded), but my 1st, I'll have figure out the resistor value and buy a new one.
Replacing one resistor is sure a heck of alot easier then doing 2 :).

And thanks for the help, I think that's what I'm gonna do.

I just wanna ask this, the tesla k10 supports virtualization/passthrough?
I know it's gotta be in the topic somewhere but it's so big now..
(I got the mobo and cpu for it)


Edit:
In the mean time I should compare my cables to check to see which one clocks the highest in single link mode ^^.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 29, 2014, 06:29:21 pm
Yes, last I checked Tesla K10 supports both VGA passthrough and ESXi's VSGA virtualization.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: haxvn on May 01, 2014, 08:35:04 am
Hi Gordan,


i have modded my gtx 680 telsa k10 by remove 4th resistor: my card isnot working but gpuz card detect telsa k10 (i am using second vga to boot my computer). what should i do?

thanks
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 01, 2014, 09:10:38 am
First of all verify the device ID with GPU-Z and GPU Caps Viewer. They should both show the device ID is 0x118F.

Second, check the soft strap in the BIOS. This is documented relatively early in the thread. See this post by verybigbadboy:
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332)

If that checks out as well, see if you can dump out the BIOS using nvflash. Make sure it looks correct, isn't 0 bytes in size, and check it with KBT to make sure it is complete and the checksum matches (use KBT for checksum verification/repair, NiBiTor is ancient and doesn't support newer BIOSes).

If you cannot read the BIOS, it means the signal from the BIOS is too attenuated with the resistor removed and you'll have to put a 40K resistor into the alternate location for the 4th nibble. I have not seen this happen on any of my cards when modding to Tesla K10, but other people have reported it. I have, however, seen it happen when modifying the 3rd nibble on a Gainward GTX690, so it does happen on some cards.

Another thing worth trying is an older driver, as mentioned by NEOAethyr above - it is plausible Nvidia have done something recently to prevent modified cards from working.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: villalvilla on May 01, 2014, 11:15:23 am
Hi guys,

I'm new on this forum. I wanted to hard mod my EVGA 2GB GTX680 into grid K2. I've read on this forum that resistors 1 and 3 should be removed, and that 40k resistors should be soldered into 0 and 2 slots. My problem is this: Which is the correct size and model for the smd resistors? Where can I buy them? It's beeing a little mess for me to identify/buy the correct resistors.

Thanks a lot for your great work!

Regards,
Miguel
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 01, 2014, 11:50:36 am
The type you need is 402.
They are tiny and you will need very steady hands and either a hot air re-flowing soldering iron, or if you are lucky and very good, you can get away with an electric one with a tiny tip.

Also, depending on what you plan to do with the card, converting to a Tesla K10 might be easier and just as effective. You only need to modify one resistor, and if you are lucky you can potentially get away by only removing the relevant resistor on the back of the card without fitting a 40K to it's alternate location. I have an MSI 680 modified in this way.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: villalvilla on May 01, 2014, 06:08:44 pm
Hi Gordan!

Thanks so much for your feedback! It is really really helpful!
The problem with the tesla k10 is that I need it for vmware virtualization (horizon view), and the grid k2 optimizes sooo much this kind of computing. If I would need it for other purposes, I had selected tesla k10.
I will try to take photos of the process and upload them here to help other people with the same problem.

I've taken a look at the GTX680 hack that other user uploaded to this forum, and the board is identical, so I think that it will be easy to follow your indications!

Thanks again and I will tell you how it gone!

Regards,
Miguel
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 01, 2014, 06:14:15 pm
I'm pretty sure last time I checked Tesla K10 was fully supported for VSGA/Horizon View. As is Quadro 5000, 6000,  K5000, K6000, most (all?) Teslas and all Grids.

Put it this way - mod 4th Nibble to 0xF, and you have a Tesla K10. If that doesn't work for you, you can then look at pulling off the heatsink and modifying the 3rd nibble to 0xB. Note that you can also mod the 3rd nibble up by using a 1206 size resistor between SCLK and VCC on the EEPROM chip. Much easier to solder.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: haxvn on May 03, 2014, 09:03:14 am
First of all verify the device ID with GPU-Z and GPU Caps Viewer. They should both show the device ID is 0x118F.

Second, check the soft strap in the BIOS. This is documented relatively early in the thread. See this post by verybigbadboy:
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg213332/#msg213332)

If that checks out as well, see if you can dump out the BIOS using nvflash. Make sure it looks correct, isn't 0 bytes in size, and check it with KBT to make sure it is complete and the checksum matches (use KBT for checksum verification/repair, NiBiTor is ancient and doesn't support newer BIOSes).

If you cannot read the BIOS, it means the signal from the BIOS is too attenuated with the resistor removed and you'll have to put a 40K resistor into the alternate location for the 4th nibble. I have not seen this happen on any of my cards when modding to Tesla K10, but other people have reported it. I have, however, seen it happen when modifying the 3rd nibble on a Gainward GTX690, so it does happen on some cards.

Another thing worth trying is an older driver, as mentioned by NEOAethyr above - it is plausible Nvidia have done something recently to prevent modified cards from working.

I have followed steps:
1. remove resistor on 3rd resistor - 4 nible (back of board)
2. add 40k resistor on 2nd resistor - 4 nible (in front of board)
3. check soft strap is okie: 02 10 10 82 FF FF FF 7F 00 00 00 80
4. update bios by change device id 80 11 to 8F 11 (check sum okie)

result:
CPUZ can detect 118F
GPU Cap viewer cannot working

the card can display on mb without UEFI bios.

i try to change value in soft trap -> nvflash can detect to other card 780mx.

I think i need change correct soft trap for Tesla K10, hope you can help me correct soft trap for Tesla k10 then i will try

Thanks



Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 03, 2014, 11:26:04 am
Soft-strap modifying is ineffective - the driver WILL NOT initialize a card in the VM if the hard-strapped ID is not in the whitelist. Soft-strapping only works up to Fermi 480 cards, not on Kepler cards. If your soft-strap in the UEFI header is blank (FFFFFF7F 00000080), there is no need to touch it at all under any circumstances.

Have you tried WITHOUT adding the 40K resistor on position 2? On most cards no resistors in positions 2 and 3 will read as 0xF on the 4th nibble. I have a 680 modified to a Tesla K10 that way and it works just fine.

Can you elaborate on what you mean by "GPU Cap viewer not working"? I also don't understand why you are even referring to UEFI motherboards. If the card worked on the motherboard before, it will work after modification. If it didn't work before, it won't work after the modification either. Most 680 cards do not come with UEFI enabled in the BIOS.

Also, you don't need to change the device ID in the BIOS, as per your point 4 - that doesn't actually do anything useful (but it does no harm, either).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: haxvn on May 03, 2014, 11:33:17 am
Have you tried WITHOUT adding the 40K resistor on position 2? On most cards no resistors in positions 2 and 3 will read as 0xF on the 4th nibble. I have a 680 modified to a Tesla K10 that way and it works just fine.

-> i tried without adding the 40k -> no working

i have 02 mainboard with and without UEFI bios
Mother board with UEFI bios : the card don't working after hard modded
Mother board without UEFI bios: the card is working after hard modded

:(

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 03, 2014, 11:38:08 am
Right, so what you are saying is that the modified card doesn't work with UEFI BIOS but does work with a legacy BIOS.
Did the card work with UEFI motherboard BIOS before being modified?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: haxvn on May 03, 2014, 12:13:51 pm
Right, so what you are saying is that the modified card doesn't work with UEFI BIOS but does work with a legacy BIOS.
Did the card work with UEFI motherboard BIOS before being modified?

-> yes, it worked with UEFI MB Bios before modifed :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 03, 2014, 12:18:32 pm
Can you flash the original BIOS back on and see if that makes it work in UEFI mode? UEFI requires the BIOS to be cryptographically signed, and the moment you modifed the BIOS that signature will no longer be valid.

It is also plausible that UEFI crypto check verified the device ID, which also, obviously, won't match any more. I don't think anyone tried running these on UEFI motherboards.

Is there a particularly strong reason why you have to use UEFI instead of the legacy BIOS?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: haxvn on May 05, 2014, 12:39:28 pm
Hi Gordan,

My new computer is MSI X-Power II using X79 chipset and UEFI Bios :)

I found some thing may you liked:

step 1. my nvidia gtx 680 is hard modded with 40k at 4th nibble at front of board

step 2a. mod firmware with device id 118F - Telsa k10 and 0x1C FFFFFF7F 00000080 (as default, you can see on pic01.png: all applications detect telsa k10

step 2b. mod firmware with device id 118F - Telsa k10 and 0x1C FF2FFC7F 00480080 (as default, you can see on pic02.png: all applications detect Geforce K2 USM

Hope you can help 0x1C is Telsa K10, K5000, GTX 680, i will try to find out UEFI MB BIOS read device id based on EFI Vga or not

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: villalvilla on May 06, 2014, 08:42:31 pm
Hi guys!

I'm writing justo to confirm that everything worked as expected with my evga gtx680!!! Nos it is modded to a grid k2!!!


Thanks a lot for your great feedback!!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: angerthosenear on May 07, 2014, 02:41:18 pm
Hi guys!

I'm writing justo to confirm that everything worked as expected with my evga gtx680!!! Nos it is modded to a grid k2!!!


Thanks a lot for your great feedback!!!

Which resistors did you change? Did you have to swap out two resistors (which is what I'm thinking) or do something else?

I'm planning to do the same thing, but with a 690 (of which I only see it converted to Quadro or Tesla). I don't mind doing the extra solder work for the Grid card.

Thanks for any input.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: karakarga on May 08, 2014, 12:19:08 pm
Last time I have tried 670 to Quadro K5000 modding,  :o

Lately I have also tried 670 to 680 modding!

Again,  :-- it didn't run! This time, it didn't give me any notification sound (with K5000 modding it alerted, 1 long 3 short beeps), the system go into post with black screen, silently...

Unfortunately, I have moved into original design, and now, it works being 670 again!  8)

Before closing, I have soldered 3 piece of low height 4V 100uF tanatlum capacitors, to Ram power supply area! There were only 2 solid caps present for 16 piece of Ram's. Actually, those 2 are also the same for 2 GB cards, which have only 8 piece of Ram chips.

And added 6 piece of R+ signed Kemet 10V 100uF tanatalum capacitors to the outside area for better power regulation for the GPU!  >:D Originally there were 9 solid caps, now they work in paralell...

I have done this tantalum part soldering to my second SLI unit too!

So, there is nothing left to do more for me else.

Bye folks...  :) 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: villalvilla on May 08, 2014, 05:25:07 pm
Hi guys!

I'm writing justo to confirm that everything worked as expected with my evga gtx680!!! Nos it is modded to a grid k2!!!


Thanks a lot for your great feedback!!!

Which resistors did you change? Did you have to swap out two resistors (which is what I'm thinking) or do something else?

I'm planning to do the same thing, but with a 690 (of which I only see it converted to Quadro or Tesla). I don't mind doing the extra solder work for the Grid card.

Thanks for any input.

Hi angerthosenear,

I've made this changes:

resistor 0: solder new 40k resistor
resistor 1: removed it
resistor 2: solder new 40k resistor
resistor 3: removed it

I'm experiencing some problems with passthrough mode in vmware view 5.3... I added k2 hardware in passthrough mode and then added that hardware to a virtual machine (as external pci). Windows XP testing machine detected it, but once I halted virtual machin to change network configuration, vmware server took sooo long to shutdown that virtual machine and had many stability problems. Once it reacted, passthrough hardware disappeared, and also the nvidia k2 dissapeared from hardware inventory in the host.

Any ideas guys?

Regards,
villa
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: villalvilla on May 09, 2014, 12:18:43 pm
Hi again Guys,

I'm experiencing many problems with Grid k2 modded card and VMWare passthrough. I've read in some other forums that (maybe) a vbios update should be doen on my hard-modded video card for things to work as espected for this video card. Is this true?

Thanks,
Villa
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: angerthosenear on May 09, 2014, 04:29:50 pm
Hi guys!

I'm writing justo to confirm that everything worked as expected with my evga gtx680!!! Nos it is modded to a grid k2!!!


Thanks a lot for your great feedback!!!

Which resistors did you change? Did you have to swap out two resistors (which is what I'm thinking) or do something else?

I'm planning to do the same thing, but with a 690 (of which I only see it converted to Quadro or Tesla). I don't mind doing the extra solder work for the Grid card.

Thanks for any input.

Hi angerthosenear,

I've made this changes:

resistor 0: solder new 40k resistor
resistor 1: removed it
resistor 2: solder new 40k resistor
resistor 3: removed it

I'm experiencing some problems with passthrough mode in vmware view 5.3... I added k2 hardware in passthrough mode and then added that hardware to a virtual machine (as external pci). Windows XP testing machine detected it, but once I halted virtual machin to change network configuration, vmware server took sooo long to shutdown that virtual machine and had many stability problems. Once it reacted, passthrough hardware disappeared, and also the nvidia k2 dissapeared from hardware inventory in the host.

Any ideas guys?

Regards,
villa

Is resistor 1,2,3,4 from top to bottom as in the main post (in picture 2)? Or some other picture in this thread?

Thanks for the response. Not sure about your current issue however, I'm not versed in VM stuff at all so can't help there.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dodgygeeza on May 10, 2014, 09:18:17 pm
Hey everyone, has anyone here attempted to mod the EVGA GT640 4GB? I've been reading the thread about how the GT640 can be converted into a Grid K1 (which would be great to use with VMware), but from looking at the pictures people have posted it seems as if the board layout is somewhat different. I've removed the heatsink to get a full view of the board, but I still can't locate where the correct resistors are...

Has anyone here tried with this card before? or does anyone here have any idea where the correct resistors might be? I'd really like to get this card converted given its perfect for a 1u sever that is tight in space, and the 4GB RAM means it should play nice with vSGA as well :-) I can post some high-res pictures online if people want to take a look.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: djthrottleboi on May 11, 2014, 05:02:08 am
Has anyone attempted to mod a 780 into a titan? i want to see if i can get fp64. I want to use it in windows though. also my linux distro is solydk 64bit.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: villalvilla on May 12, 2014, 06:25:38 am
Hi guys!

I'm writing justo to confirm that everything worked as expected with my evga gtx680!!! Nos it is modded to a grid k2!!!


Thanks a lot for your great feedback!!!

Which resistors did you change? Did you have to swap out two resistors (which is what I'm thinking) or do something else?

I'm planning to do the same thing, but with a 690 (of which I only see it converted to Quadro or Tesla). I don't mind doing the extra solder work for the Grid card.

Thanks for any input.

Hi angerthosenear,

I've made this changes:

resistor 0: solder new 40k resistor
resistor 1: removed it
resistor 2: solder new 40k resistor
resistor 3: removed it

I'm experiencing some problems with passthrough mode in vmware view 5.3... I added k2 hardware in passthrough mode and then added that hardware to a virtual machine (as external pci). Windows XP testing machine detected it, but once I halted virtual machin to change network configuration, vmware server took sooo long to shutdown that virtual machine and had many stability problems. Once it reacted, passthrough hardware disappeared, and also the nvidia k2 dissapeared from hardware inventory in the host.

Any ideas guys?

Regards,
villa

Is resistor 1,2,3,4 from top to bottom as in the main post (in picture 2)? Or some other picture in this thread?

Thanks for the response. Not sure about your current issue however, I'm not versed in VM stuff at all so can't help there.

Hi Anger,

The photo you are asking for is this:

https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=43392;image (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=43392;image)

It is in this forum on page number 6. You can also find the description from the first page on this forum, where the author talks about GTX680 already modded, on the first post.

Hope it helps,
Villa
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Allso on May 15, 2014, 03:57:33 pm
I keep reading in this thread that there is no advantage to quadro over tesla yet I cant seem to find any info anywhere whether or not a tesla card will allow me to use 10 bit color like a quadro card. Perhaps some of you experts can tell me if this is the case or not, so I dont do a useless hack?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on May 15, 2014, 07:17:32 pm
I was successful in soft-modding a Fermi GT440 3GB (OEM) HP part # 631078-001 that I had bought a while back -- http://www.ebay.com/itm/371054989914 (http://www.ebay.com/itm/371054989914) into a Quadro 2000. I used the tutorial here: http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/ (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

Here is a screenshot of the card running a PrimeGrid task on the GT440 (OEM) soft-modded into a Quadro 2000 running on a Windows 7 x64 VM:
(http://i.imgur.com/GGudSzWs.png) (http://imgur.com/GGudSzW)
You can see I also enabled TCC mode via nvidia-smi on next reboot. Not shown here, but TCC mode works, and PrimeGrid continues the computations.

I was also able to soft-mod a PNY GT430 into a Quadro 600, but later realized that:
1) TCC mode isn't supported
2) Quadro 600 isn't multi-OS capable, so the same code 43 error pops up in the Win 7 x64 VM.
So, basically, that mod was useless, so I undid it.

My platform is a Gigabyte X58A-UD3R v2.0 motherboard with Fh1 BIOS version (VT-d enabled in BIOS via Alt+F1) with an Intel Core-i7 930 CPU with ESXi 5.5 U1 (patched with ACHI & NIC drivers). I was also successful in doing passthrough with an AMD Radeon HD 6770 card with no modifications required on the same system.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: choPer on May 22, 2014, 11:06:57 pm
greetings to all :)
my problem a little bit specific but maybe someone help me ? :-//
i have a gtx770m card from dell with 1028 05AA vendor id and it's not working in my laptop (doesn't post) but gtx 770m clevo version (with the same pcb layout and 10DE 1008 vendor id) working perfect. Flashing bios from clevo didn't help too.
any ideas ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SoNic67 on May 29, 2014, 12:14:10 pm
I just registered here to say thank you to everyone that posted modding information on this thread.
I just soft-modded my GTS 450 into Quadro 2000 - now is basically a higher clocked Quadro. Changed the straps and the name of the card in the BIOS to say Quadro 2000 (for tidiness).
nvflash --index=X --straps 0x7FFC2FFF 0x10006000 0x7fffffff 0x00000000
After that I saved the BIOS with GPU-Z, correct the name with a hex editor and corrected the checksum with NiBiTor. Flashed back with nvflash.

I tested it at work with Cadalyst C2017 and final 3D result was 804 - while a Quadro 600 gets 705 and a Quadro K2000 gets 828 (those two are "real" cards that I could test). Don't have a real Quadro 2000 around to compare.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on May 29, 2014, 01:17:33 pm
Hello there,

i have read whole tread but will do it again... too much info :))

Just few questions...

What is best gpu to modify ( i mean with smallest amount of modifications as possible ) to GRID K2? what manufacturer? with 4gb?
evga 680gtx 4gb?

Does it work as vGPU so 2 - 4 vm-s can share it?


Would it be possible to run couple of xen virtual machines with steam and games on it, then stream it using steam to low powered clients aka laptops with steam?

Thanks

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 29, 2014, 01:26:31 pm
Easiest to modify? GTX 4xx cards - they can be modified using the software strap in the BIOS, e.g. GTX480 -> Quadro 6000. This is VSGA capable.

For Kepler class cards, the easiest are:
680 - remove 1 resistor off the back off the card to make it into a Tesla K10. Don't modify it into a Grid K2 if you plan to use the video output on the card, it will only work in SL-DVI mode, unless you get an updated Grid K2 BIOS, modify it to add output port initialization, and even then it only works with very recent drivers (see discussion on this recently). K10 just works with no further modifications.
780Ti - Add an 18K resistor on the EEPROM pins, as discussed more recently on the thread - big resistor and easy to solder. This turns it into a Quadro K6000

All of the above should work just fine with VSGA.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on May 29, 2014, 01:52:54 pm
thx for quick and nice answer :)

i am xen noob... sry
but what is VSGA ? so i can share 1gpu to 2-4 vm-s? with full
3d support?

i thought only vgpu does that?

aka one 680 with 4gb as grid k2 -> 2vgpu with 2gb to each vm

edit:

i just searched about vsga, you mean vmware? its only dx9 i need 11


and i am ok with no output on gpu cause i will stream vm output with steam over network just for windows games... to linux clients
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 29, 2014, 02:34:39 pm
I'm a Xen user, too, but I use straight PCI passthrough. GPU sharing is a relatively recent project on Xen, and it is not mature and stable AFAIK. VSGA is VMware's GPU sharing, and that has been around for a while. VSGA works with Quadro 5000, 6000, K5000, K6000, Tesla K10, and Grid K1 and K2. I don't know what  the requirements are for Xen's GPU sharing.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on May 29, 2014, 03:04:14 pm
this is without passthrough in xen... u just have 3 modes for gpu 512mb, 1gb or 2gb frame buffer with full dx11 and it requries GRID K2 / K1... and u have nvidia drivers in client machine not vmware....

anyway back on topic..

i read that one guy just poped off 2 resistors off gigabyte 680gtx 2gb to get grid k2?  is that the simple one and is it the same for 4gb? i want to avoid soldering and have 4gb grid k2  :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 29, 2014, 03:35:03 pm
Yes, popping off two resistors worked for me without replacing them. Other people found they had to replace them to make it work. It varies. I use straight PCI passthrough for my multi-seat gaming/workstation Xen system (3 GPUs), so cannot really offer any advice on shared GPU solutions.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on May 29, 2014, 03:38:52 pm
Ok thank you again for your answers.

I'll go with evga or gigabyte 680 4gb so we will see how that goes  >:D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SoNic67 on May 29, 2014, 07:06:59 pm
Nobody has yet been able to restore the missing GL primitives on GeForce cards. Cross-flashing the BIOS, in the one case where it actually works (Q2000 BIOS onto a GTS450), doesn't seem to achieve anything obviously useful in this regard; then again, Q2000 and GTS450 are very, very similar, much more so than other GeForces are to their equivalent Quadros, with maybe the exception of a K5000/GTX680 4GB variants - in that they have the same amount of VRAM. I haven't tried flashing a full strap-adjusted K5000 BIOS onto my GTX680 yet - it is on my ever-growing TODO list. :(

In case of the GF106 GPUs (GTS450/Q2000) I suspect the missing functionality is cut out of the GPUs before packaging, and if that is the case, the chances of restoring this are non-existant.

Note, however, that modifying a GTS450 into a Quadro 2000 does produce some performance benefits - Maya scores, although still far behind a real Quadro 2000, go up by around 40% after modifying the card.

I just did mod my GTS450 into Q2000 and I am curious if you know what OpenGL primitives are missing. I can compare it eventually with "real" Quadro 600 or Quadro K2000.
However, note that newer AutoCAD and Revit software, on Windows 7&8 (x64), use DirectX11 to process the 2D and 3D, not OpenGL.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: thunderbolt on May 30, 2014, 12:30:31 am
Hi,

sorry for my bad english it´s not my native.

i modded a GTX 770 to a Tesla K10 ( single chip) with the help of this great thread.

i own one of the new GTX 780 6GB Version and i have a nvidia titan black.

Device ID from the GTX 780 6GB is 1007
Device ID from the Titan Black 6GB is 100C

i checked the resistors around the chip.

(http://vps1931.directvps.nl/GTX780-1.jpg)

so for  the gtx 780 the 45K is 15K in my Case, 28,5k is 30k in my case and 25K is 25K
so for  the titan black the 45K 35K in my Case, 28,5k is 30k in my case and 25K is 25K

the screenshot is a 780 3GB ID 1004, can anyone check this resistor on a GTX 780ti Dev ID 100a must be 20K or 25K

so could the missing 4 nipple this resistor ?

1004 = 45K
1007 = 15K
100C = 35K

http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/ (http://www.guztech.nl/wordpress/index.php/2013/11/researching-nvidia-gpus-geforce-gtx780-and-gtx-titan-to-tesla-k20-and-tesla-k20x/)

the guy say, you can reach 101F via softstrap

Quote
Thus the first five bits of the device ID can be set in the firmware, meaning that the device ID could be set to values between 0×1000 and 0x101F without modifying any hardware.

so 101F is a Tesla K20. I need only the TCC option, to render via remote, can i eaiely mod the GTX 780 DEV ID 1007 to 1027 ( K40st) or did i get memory problems ?

can anyone confirm this ?

kind regards thunderbolt
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 30, 2014, 08:40:53 am
Soft strap modding doesn't work on Keplers, at least not for VGA pass through purposes. There is a register that can only be set by the hard strap. If that register doesn't match a white listed ID, drover will refuse to initialise the card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: thunderbolt on May 30, 2014, 10:07:14 am
so i modded today my GTX 780 1007 with the 33K resistor.

now i have a K40st id 1027

update, used to original bios from the GTX 780 and modify the following

DE 10 07 10 Block 794 - 797 to DE 10 27 10

and

DE 10 07 10 Block 7FA20-FA23 to DE 10 27 10

update the checksum and reflash the bios. What i have todo now ?


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 02, 2014, 01:04:27 pm
There shouldn't be anything else to be done. If you have verified that the PCI device ID and the device ID as reported by GPU Caps Viewer both report the same, that's all you can do.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: thunderbolt on June 02, 2014, 01:37:37 pm
i cant select the k40 in gpu caps viewer, i flashed the original bios back to the k40.

i use this card without any modification on the bios. with TCC it works without problems. is there a problem with the memory size ?

nvidia-smi shows me the correct size, the other tools not

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 02, 2014, 03:34:34 pm
Memory size isn't going to be the problem. I don't know why it doesn't work with 3DS - I'm not a 3DS user so I don't have any ideas.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: thunderbolt on June 02, 2014, 04:37:51 pm
no you did not understand, all works flawless, i only want to make sure, that the gtx 780 (K40st) can use the full 6GB of ram. nvidia-smi reports the right size, atm no error so far.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 02, 2014, 04:45:34 pm
The memory size is set in the MCH register on the cad by the binary payload in the BIOS. The BIOS the card ships with will do the right thing to initialize it, and the data in these registers can then be read back by the driver, which will act accordingly. Don't worry about it, if GPU-Z is showing the correct memory size, it's fine.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oerg866 on June 05, 2014, 03:40:14 am
Hi there!

First of all, great work!

I have decided to virtualize my windows system, and I wanted to mod my Palit Jetstream GTX 670.

I have removed the R2 resistor. It does not give any picture when booting, but it gets detected in device manager with DEV_118F (Tesla K10) when used as a secondary card. I get an error code 28 when trying to install a driver for that card though.

Do I need to do anything else beside this? I'm kind of reluctant as the PCB is not 100% based on the reference design.

Do I need to edit the firmware for the system to work again? I have an UEFI BIOS. Motherboard is a GIGABYTE GA-X79-UD5.

Cheers!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: LanStateMap on June 05, 2014, 04:36:23 am
I have ASUS GTX660-DC2-2GD5 http://www.techpowerup.com/gpudb/b1927/asus-gtx-660-directcu-ii.html (http://www.techpowerup.com/gpudb/b1927/asus-gtx-660-directcu-ii.html)
I trying to mod it to K4000 like this https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg421274/#msg421274 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg421274/#msg421274)

The original ASUS GTX660-DC2-2GD5 Device ID 11C0
K4000 Device ID is 11FA
1. Remove upper resistor R4L 5K and add 15K at low resistor R4H give Device ID 11CA
2. Remove R3H on topside give me 11EA
I try to add 40K to R3H result is the same 11EA

Original Asus bios is not locked:
08 e2 00 00 00 06 00 00 02 10 10 82 ff ff ff 7f
00 00 00 80

What do you think?
Why i can't get F on 3rd nibble.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: thunderbolt on June 05, 2014, 07:18:31 am
Hi there!

First of all, great work!

I have decided to virtualize my windows system, and I wanted to mod my Palit Jetstream GTX 670.

I have removed the R2 resistor. It does not give any picture when booting, but it gets detected in device manager with DEV_118F (Tesla K10) when used as a secondary card. I get an error code 28 when trying to install a driver for that card though.

Do I need to do anything else beside this? I'm kind of reluctant as the PCB is not 100% based on the reference design.

Do I need to edit the firmware for the system to work again? I have an UEFI BIOS. Motherboard is a GIGABYTE GA-X79-UD5.

Cheers!

hi a tesla K10 is a pure number crunching card. There are no options for opengl or directx. Pure cuda power. You cant use this card as pimary vga adapter. Lets say it´s a grafic coprozessor. You have to mode this to a VGA K2 or a K5000.

gtx 670, Device Id: 10DE 1189 with 1536 cores.
tesla k10, Device Id: 10DE 118F
quadro k5000, Device Id: 10DE 11BA
vgx grid k2, Device Id: 10DE 11BF
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 05, 2014, 07:47:21 am
Modified cards won't work with UEFI motherboards.

A GTX680 modified into a Tesla K10 works just fine as a primary or secondary card on bare metal, and works just fine with secondary pass through card with monitor output in a VM. I have one.

A real K10 has no video outputs, but that has no influence on whether a modified 680 will have working outputs. Video outputs are configured by the BIOS payload.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oerg866 on June 05, 2014, 11:24:14 am
Modified cards won't work with UEFI motherboards.

A GTX680 modified into a Tesla K10 works just fine as a primary or secondary card on bare metal, and works just fine with secondary pass through card with monitor output in a VM. I have one.

A real K10 has no video outputs, but that has no influence on whether a modified 680 will have working outputs. Video outputs are configured by the BIOS payload.

Okay, that makes sense. But shouldn't I be able to install the drivers for it? I will install linux with xen and see how that goes.

Will I have DirectX acceleration under Windows when run with passthrough?

Cheers!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 05, 2014, 11:28:08 am
Okay, that makes sense. But shouldn't I be able to install the drivers for it?

Not if the BIOS didn't initialize the card. UEFI has crypto signatures, and AFAICT if it notices the device ID of the card isn't what is expected, it won't work.

Will I have DirectX acceleration under Windows when run with passthrough?

Yes.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oerg866 on June 05, 2014, 11:30:01 am
Okay, that makes sense. But shouldn't I be able to install the drivers for it?

Not if the BIOS didn't initialize the card. UEFI has crypto signatures, and AFAICT if it notices the device ID of the card isn't what is expected, it won't work.

Will I have DirectX acceleration under Windows when run with passthrough?

Yes.

Wow that was fast! Thank you :)

Fingers crossed! I read somewhere I can mod the card's firmware for it to work on UEFI boards again, but that's for another time to figure out :D

Thanks a lot! Going to tinker with xen now.

Cheers!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 05, 2014, 11:34:26 am
Fingers crossed! I read somewhere I can mod the card's firmware for it to work on UEFI boards again, but that's for another time to figure out :D

The only thing you could do is flash the card with the UEFI firmware of the card it's modified to, e.g. hard-mod to Quadro K5000 and flash K5000 firmware onto it. That will probably work, but I never tried it (I don't have any UEFI motherboards). I can confirm, however, that a 4GB 680 works fine with the K5000 firmware (although doing so doesn't gain you anything additional functionality, apart from maybe UEFI compatibility which I had no way to test).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oerg866 on June 05, 2014, 06:01:22 pm
Well, so far so....good?

I have managed to install xen (debian 7.5) but I still cannot get the card to generate video. It is passed through like this:

pci=['01:00.0']

and

gfx_passthru=1

Before starting the VM I do modprobe xen-pciback and modprobe pci-stub and I use the script providing "remove_device" to disable the nouveau drivers for it.

Here's my full config:

Code: [Select]
kernel = "/usr/lib/xen-4.1/boot/hvmloader"
builder='hvm'
memory = 4096
vcpus=4
name = "win7"
vif = ['bridge=xenbr0']
disk = ['phy:/dev/vg0/win7,hda,w','file:/home/oerg866/OSs/en_windows_7_professi$
acpi = 1
device_model = 'qemu-dm'
boot = "d"
sdl = 0
serial='pty'
vnc = 1
vnclisten=""
vncpasswd=""
gfx_passthru = 1
pci=['01:00.0']

The VM starts up but it doesn't generate video on the GTX670 @ K10. I am using the HDMI output, if that helps...

If I disable the gfx_passthru thing, it shows up in device manager as Standard VGA Controller but with a code 10 error (device cannot start) ...


OK here we go: http://img.ctrlv.in/img/14/06/05/5390b3a02b99c.png (http://img.ctrlv.in/img/14/06/05/5390b3a02b99c.png)

I was able to install the drivers, but I cannot select a monitor or anything :/

Cheers!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 05, 2014, 06:24:36 pm
Well, so far so....good?

I have managed to install xen (debian 7.5) but I still cannot get the card to generate video. It is passed through like this:

pci=['01:00.0']

and

gfx_passthru=1

That should be gfx_passthry=0. Primary passthrough doesn't work (it never did, except with extensive patches that haven't made it into any releases).

Before starting the VM I do modprobe xen-pciback and modprobe pci-stub and I use the script providing "remove_device" to disable the nouveau drivers for it.

You need to make sure this happens BEFORE the card is ever tainted by any drivers in dom0. The card needs to be claimed by xen-pciback before nouveau or nvidia kernel drivers load. Blacklist those drivers, make sure they aren't in initrd. Then, make sure xen-pciback is loaded early during startup. On RH that would mean putting a suitable script in /etc/sysconfig/modules/. I have no idea what the Debian equivalent method is.

The VM starts up but it doesn't generate video on the GTX670 @ K10. I am using the HDMI output, if that helps...

I only ever tried DVI but it shouldn't make any difference.

If I disable the gfx_passthru thing, it shows up in device manager as Standard VGA Controller but with a code 10 error (device cannot start) ...


OK here we go: http://img.ctrlv.in/img/14/06/05/5390b3a02b99c.png (http://img.ctrlv.in/img/14/06/05/5390b3a02b99c.png)

I was able to install the drivers, but I cannot select a monitor or anything :/

You need to disable gfx_passthru and install the driver, but most importantly, you have to make sure nothing in dom0 touches the card, especially nouveau.

You will also probably need to add something like this to your /etc/modprobe.d/xen-pciback.conf:
options xen-pciback permissive=1 hide=(01:00.0)(01:00.1)

Also, make sure you pass both the GPU and it's audio device through.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oerg866 on June 05, 2014, 06:28:57 pm
OK, thank you. I will make sure of that.

Although it makes me wonder why gfx_passthru even exists and is so widely documented....

By the way, how would I do that if my *primary* graphics card also uses nouveau or another nvidia driver in linux?

About the audio device, I have tried that and it makes xm create windows.cfg crash with an error 23 (invalid argument). A workaround was to omit the 2nd device as it supposedly gets passed through automatically...

Cheers!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oerg866 on June 05, 2014, 06:57:12 pm
I have now done it using this guide:
http://forums.linuxmint.com/viewtopic.php?f=42&t=112013&start=120#p711782 (http://forums.linuxmint.com/viewtopic.php?f=42&t=112013&start=120#p711782)

I have installed the drivers and rebooted. And, well, the card works, no errors or anything, but I still cannot select a monitor, nor can I launch the control panel, as it tells me "You are not currently using a display attached to an NVIDIA GPU"....
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 05, 2014, 08:04:33 pm
Error 23 is a long fixed bug. You are either running a version of Xen that hasn't been fixed, or your hypervisor and user space are mismatched. Or the packages you are using are just broken.

You need to make sure xen-pciback loads and claims the devices you are passing through BEFORE the nvidia driver loads. Once pciback claims the devices you are passing through, you can load nvidia/nouveau and any other drivers.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: oerg866 on June 05, 2014, 08:11:20 pm
Error 23 is a long fixed bug. You are either running a version of Xen that hasn't been fixed, or your hypervisor and user space are mismatched. Or the packages you are using are just broken.

You need to make sure xen-pciback loads and claims the devices you are passing through BEFORE the nvidia driver loads. Once pciback claims the devices you are passing through, you can load nvidia/nouveau and any other drivers.

I believe I have already done that according to the guide I linked above. I have chekced and it says driver module: pciback. Can I verify this somehow?

Cheers,
Oerg866
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 05, 2014, 08:18:23 pm
If you have the modprobe config set correctly, you should be able to just modprobe xen-pciback, no need to use xl to make devices assignable. Thus, if you just have your script modprobe xen-pciback, then load the nvidia driver, you can just check lspci -vvv and see what driver is bound to the device.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Luke212 on June 06, 2014, 11:06:12 pm
i cant select the k40 in gpu caps viewer, i flashed the original bios back to the k40.

i use this card without any modification on the bios. with TCC it works without problems.

Does your 0x1007 card converted to K40 now have full double precision performance? Also, a 0x1007 card should not be upgradeable to K40 because its only a 780 and not a Ti -  so it doesnt have the full amount of shaders.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 07, 2014, 05:56:58 am
The number of shaders doesn't seem to matter, only the underlying GPU model matters. As long as it is a GK110, it doesn't matter if its a 780, 780Ti or a Titan.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: WillV on June 08, 2014, 01:37:50 am
Has anyone popped the two resistors off a Gigabyte 680 card and come up with 11AF?  I saw earlier a 10k caused an A and complete removal was B but I am seeing complete removal give me an A.  Any thoughts or suggestions about what I am missing?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 08, 2014, 05:36:29 am
Complete removal usually causes flapping between 0xA and 0xB on the 3rd nibble.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: WillV on June 08, 2014, 04:22:00 pm
I must have missed that and focused too much on the "pop them off and there you go" stuff.  So by "flapping" do you mean a bouncing back and forth between because after multiple trials, its a rock steady A for a result.  Also, what is the path from this point towards changing it to a B if removal wasn't the answer?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 08, 2014, 08:04:34 pm
You have to solder in a suitable resistor as per the instructions early in the thread.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Angeluszero on June 14, 2014, 03:57:55 pm
Hi guys,

I have a Quadro K4000. Is it possible to mod it into it's consumer counterparts? And if yes, will I gain any gaming performance?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 14, 2014, 04:47:57 pm
There is no gaming performance to be gained. Quadros are as good at gaming as GeForces. Standard overclocking procedures apply. Clock for clock, gaming performance will be the same.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SoNic67 on June 16, 2014, 12:36:27 am
Hi guys,

I have a Quadro K4000. Is it possible to mod it into it's consumer counterparts? And if yes, will I gain any gaming performance?
WHY? Just sell it and get a gaming card if that's what you are looking for. You get some $500-600 on ebay.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bcunje on June 23, 2014, 01:33:32 pm
Thanks for the help guys.  Using some of the information from this thread, I was able to fully convert a GT755M Ultrabay (Removable Graphics) GPU into a GT750M by simply replacing resistors and reflashing!  I was then able to use the GT750M to natively SLI my laptop and pump out some serious graphics performance.

Here's a link to the guide:
http://forum.notebookreview.com/ideapad-essential/753225-sli-ing-y410p-gt750m-gt755m-natively-no-driver-mods.html (http://forum.notebookreview.com/ideapad-essential/753225-sli-ing-y410p-gt750m-gt755m-natively-no-driver-mods.html)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on June 30, 2014, 04:40:40 am
Ok thank you again for your answers.

I'll go with evga or gigabyte 680 4gb so we will see how that goes  >:D

heeh... i did mod on 680 4gb, palit jetstream... and it works kinda..

my goal was to find out will it work like real GRID K2 so i can share gpu to multiple vm-s.

without mod with qemu-git on latest debian it works flawless...

with gird k2 ID, i can run it with grid k2 drivers,even with desktop ones, but restart, shutdown, POST screen doesn't work... but when gpu works it works same like 680gtx, in games, streaming hw encode... etc... with both drivers with id GRID K2...

so pretty much card works with GRID K2 id... so next i wanted to try to share it...

on xen-server 6.2 latest - with any GRID K2 host driver... it detects it normally, but when i try to start vm with shared gpu... i got 3 lines in dmesg like...
its init and binding gpu, taking ownership  and then nothing... xen-center crashes with error iomem... vgpu exited unexpectedly...
passing it like single card works sometimes...

on native windows 2012 R2 hyper-v installing with any GRID host driver crashes host (kernel i guess, mouse shows here and then with bsod sometimes, on keyboard numlock blinks)... all 3 outputs have some problems like black/white screen blinking and black/green snow (lol)...

last epic try:
qemu with win 2012r2 vm with grid passed... i can make driver and hyper-v to work but i don't have gpu listed in hyper-v  options (maybe cause of passtrough, so it doesn't detect it like phy gpu) :(


question...

so next step would be updating bios? would that help? is it possible to recover bios if it fails?

did anyone managed to get it to work like real grid? is it even possible?

thx 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 30, 2014, 11:42:54 am
my goal was to find out will it work like real GRID K2 so i can share gpu to multiple vm-s.

without mod with qemu-git on latest debian it works flawless...

Using qemu-git with what, exactly? KVM? Xen?
Are you saying that you can pass the GTX680 to a VM without modifying it onto a Quadro/Tesla/Grid?

with gird k2 ID, i can run it with grid k2 drivers,even with desktop ones, but restart, shutdown, POST screen doesn't work... but when gpu works it works same like 680gtx, in games, streaming hw encode... etc... with both drivers with id GRID K2...

Again, with what hypervisor? What do you mean by "restart, shutdown, POST screen doesn't work"?
If you mean that you don't see the POST screen in the VM on the GPU output, then this is normal. You will only get the SeaBIOS POST screen if the card is passed through as the primary (VGA) card. This means that QEMU has to dump the BIOS out of the card and side-load it for SeaBIOS to initialize. I have never seen this work on any hypervisor.

Restarting, shutting down and starting up again works just fine for me using Xen, with no GPU crashes.

Desktop and Quadro/Tesla/Grid drivers are actually the same if the version is the same. Quadro/Tesla/Grid drivers get tested much more thoroughly, hence why they are released much less frequently, but the binaries should be the same between those and the desktop drivers of the same version.

so pretty much card works with GRID K2 id... so next i wanted to try to share it...

There's should be a "pretty much" in there. I've used this setup extensively with Xen with no unexpected issues at all. If you mod to a Grid K2, your video outputs will be limited to SL-DVI modes. If you read a few pages back, this seems to be a known firmware/driver bug. If you want to fix it you will need to take your chances and flash the Grid K2 firmware onto your 680 (if your 680 is 4GB you shouldn't need to edit the firmware for RAM size, as discussed a few further pages back), but IIRC the K2 has no physical video outputs, so you will lose the use of those, and you'll only be able to use the card for GPU sharing with video output going out to a remote client.

on xen-server 6.2 latest - with any GRID K2 host driver... it detects it normally, but when i try to start vm with shared gpu... i got 3 lines in dmesg like...
its init and binding gpu, taking ownership  and then nothing... xen-center crashes with error iomem... vgpu exited unexpectedly...
passing it like single card works sometimes...

I think it would be particularly useful to be able to compare the results against what happens with a real Grid K2. Xen GPU sharing is still sufficiently experimental that you could be dealing with a software bug or hardware compatibility issue. Can you confirm you use a different GPU as the dom0 primary?

on native windows 2012 R2 hyper-v installing with any GRID host driver crashes host (kernel i guess, mouse shows here and then with bsod sometimes, on keyboard numlock blinks)... all 3 outputs have some problems like black/white screen blinking and black/green snow (lol)...

Again, this could be related to the known Grid K2 firmware/driver bug.
There is no way installing the driver should be crashing the host unless there is a failrly epic software bug in play.

last epic try:
qemu with win 2012r2 vm with grid passed... i can make driver and hyper-v to work but i don't have gpu listed in hyper-v  options (maybe cause of passtrough, so it doesn't detect it like phy gpu) :(

I'm pretty sure nobody ever tested nested virtualization like this, nor do I think anyone expects it to even remotely work.

so next step would be updating bios? would that help? is it possible to recover bios if it fails?

You could try. Worst case, you should always be able to re-flash the BIOS by attaching SPI lines directly to the EEPROM chip. I believe there is a discussion 20 or so pages back here about doing it using a Raspberry Pi. But you should only need to do that if the BIOS cross-flash fails. Because Grid K2 is a multi-GPU card, it will come with 2 BIOSes. You should probably use the primary BIOS from the K2 and you will need to edit the bus device arrangement. I think I wrote a post about where this is in the BIOS many months ago on this thread. Otherwise you won't be able to flash the BIOS onto the card.

did anyone managed to get it to work like real grid? is it even possible?

I haven't even heard of anyone who managed to get a real Grid K2 to work with anything but ESX, and even that is mostly from marketing material hearsay. Incidentally, ESX let's you do GPU sharing with a Grid, Tesla, and even some Quadros (Fermi 5000/6000).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on June 30, 2014, 07:25:21 pm
with kvm... sry.

with xen-server i could pass grid as single whole gpu ... but got crash with vgpu... iomem exited unexpectedly....

ah well after reading all this couple of times... i think i am gonna give up on this mod and just use 680gtx with kvm

flashing bios is too much for me...

thanks for your extended answers sir gordan :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 30, 2014, 08:25:34 pm
Hold on - you can pass an Nvidia card _unmodified_ in KVM and it works fine? Seriously? When did that happen??
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: h1386343 on July 01, 2014, 04:03:49 am
Sorry, I do not want to derail the thread, but would it be possible to override a vanilla 780's 1004 DeviceID into vanilla's Titan 1005 one by using hard/soft straps? If such could be accomplished perhaps 4-Way SLI could unofficially be possible again despite Nvidia's effort to lock it out. A friend of mine alreadt has a Tri-SLI Galaxy HOF non-reference setup and he would really like to test such thing with another more card he got back from RMA.

Cheers.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 01, 2014, 07:12:01 am
Nobody has yet identified the resistors controlling the 4th device ID nibble on the 780/780Ti/Titan boards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on July 01, 2014, 07:53:01 am
Hold on - you can pass an Nvidia card _unmodified_ in KVM and it works fine? Seriously? When did that happen??

YES... i think with kernel 3.6  :) couple months ago

i am testing it for last month with 2-3-4 gpus in same machine... not a single problem with passing nvidia card...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on July 01, 2014, 08:05:22 am
one stupid question :)

would it be possible to run for example debian with latest kernel, with xen supervisor then install nvidia-vgx-grid driver for xen-server kernel 2.6? and then somehow cut gpu in vgpu-s like in real  xen-server? is xen supervisor for debian same like one in xen-server?

thx
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on July 01, 2014, 09:04:59 am
one stupid question :)

would it be possible to run for example debian with latest kernel, with xen supervisor then install nvidia-vgx-grid driver for xen-server kernel 2.6? and then somehow cut gpu in vgpu-s like in real  xen-server? is xen supervisor for debian same like one in xen-server?

No.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on July 08, 2014, 04:49:34 pm
Hold on - you can pass an Nvidia card _unmodified_ in KVM and it works fine? Seriously? When did that happen??

YES... i think with kernel 3.6  :) couple months ago

i am testing it for last month with 2-3-4 gpus in same machine... not a single problem with passing nvidia card...

Well that is interesting. I guess to test this, one must install Ubuntu or similar and install KVM package?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on July 09, 2014, 04:14:42 pm
Yeah... arch, debian and ubuntu works almost out of the box depending on host (i)gpu (you may need 1 or 2 patches....)
qemu-kvm 1.7+ or 2.0+ is safe bet i think...

check arch forum for kvm vga passthrough...

GL :)


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Firephyz on July 13, 2014, 07:11:18 am
Hey. So I just stumbled across this forum post and discovered the dirty things Nvidia has been doing to make money. What I wonder now is turning a Geforce card into a Quadro or even a Tesla advantagous in the field of scientific computing and such? Will a GTX 690 modded into two Quadro K5000's allow for unlocked floating point utilization and even error correction memory? And would modding the card further into a Tesla K10 remove support for Opengl? I would suspect that if the floating point caps and the Opengl support are induced by a specific driver (geforce vs quadro vs tesla driver) that these mods would indeed do these things I mentioned, so long as you then get the correct drivers.

And just another question, what could a GTX 780, reference pcb, be modded into? I know it has the GK110 microarchitecture, GK110-400 I think. The Tesla K40 has a GK110b architecture so I suppose it can't be modded into a K40. I can't really find much info on the K20 or K20X, only that they also have a GK110-??? chip. Anyway, thanks for your replies.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Nindustries on July 13, 2014, 03:56:36 pm
Could someone post/PM a detailed process on how I need to convert my ASUS GTX 660 Ti DirectCU II to a Grid K2? (Same as a 780)
Or just indicate on a picture what resistors I need to remove and where to insert the 40K resistor.
(I read most of the posts in this thread and found the conversion table, but still not sure where to do anything.)

I'm not very proficient in electronics, that's why I'd like someone to write it out more briefly for me.  :palm:

Thanks guys.


Not at home atm, so can't supply pcb pictures. Google images: https://www.google.be/search?site=&tbm=isch&source=hp&biw=1600&bih=811&q=asus+gtx+660+ti+directcu+ii&oq=asus+gtx+660+ti&gs_l=img.3.1.0i19l2.144490.147238.0.149088.15.13.0.2.2.0.127.1200.7j5.12.0....0...1ac.1.48.img..1.14.1205.48wTR9xU07Y&gws_rd=ssl (https://www.google.be/search?site=&tbm=isch&source=hp&biw=1600&bih=811&q=asus+gtx+660+ti+directcu+ii&oq=asus+gtx+660+ti&gs_l=img.3.1.0i19l2.144490.147238.0.149088.15.13.0.2.2.0.127.1200.7j5.12.0....0...1ac.1.48.img..1.14.1205.48wTR9xU07Y&gws_rd=ssl)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Stefan Cologne on August 12, 2014, 02:42:06 pm
Hi,
has someone changed a EVGA GTX690 into a K10? As I´ve seen, they should have the same chip.

Greetings from Cologne,
Stefan
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Stefan Cologne on August 13, 2014, 02:58:49 pm
I forgot:

I ment, if it´s possible to mod the card, so that both GPU´s are working!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Stefan Cologne on August 13, 2014, 03:54:34 pm
Or...

has anyone found a solution to get a K20? Which gtx-card could be modded?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gosheto on August 13, 2014, 08:38:28 pm
Hello,

I successful mod my GTX770 (Palit GTX 770 Jetstream 2 Gb) to Nvidia GRID K2.
Many thanks and credits to @gordan and @verybigbadboy!   :-+
Work setup are - 40K none 40K none, no vBIOS changes, using 80.04.C3.00.55 from techpowerup.com
Card work on bare metal Windows 8.1 x64, score Unigine Valley Benchmark 2000~2015 points (normal result for this card).
Both DVI links work.
VMWare esxi passthrough (vDGA) work - tested on VMware vSphere Hypervisor 5.5 Update 1 and VMware vSphere Beta2 6.0.0
I think that vSGA does not work, now I testing.
So I have question, what driver to use .. current version for GTX770, or driver for GRID K2?
Does GRID driver unlock any additional features?
GTX driver report enabled PhysX computing, GRID driver "disable" this feature.
Both drivers report in GPU-Z that Bus Interface to work at PCI-Express x16 v1.1 mode?!?!?


15.08.2014 - The card lost possibility to boot in “Ultra fast boot” mode. The VBIOS of main discrete VGA card support UEFI GOP, and I using it before modification, now it can not support “Ultra Fast Boot” and “CSM Disable”. VBIOS is untouched, using 80.04.C3.00.55 from techpowerup.com


More info will be added soon...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 15, 2014, 08:21:40 pm
I ment, if it´s possible to mod the card, so that both GPU´s are working!

Yes.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: woken on August 20, 2014, 04:21:46 pm
Hey guys, can someone tell me how to mod my evga GTX 780 6gb into a grid k2 card?  With this I can use sVGA, vGPU, remotefx with no problems right?

Basically I want 1 graphics card to be shared across multiple virtual machines at the same time
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 21, 2014, 08:02:32 am
You cannot do this with a 780 because the GPU is completely different to the K2.
It is also not clear whether anyone has successfully managed to get this to work with a modified card.

I would suggest you get a cheap GTX470 or 480, modify that with a BIOS strap patch into a Quadro 5000 or 6000, and try it with that. If that works, then you can start looking at modifying a 680 into a Tesla K10 and try using that (according to the documentation Quadro 5000, 6000, Grid K2, and Tesla K10 are all supported for VSGA.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amin_eshgh on August 22, 2014, 11:04:52 am
Hi I want to know that a quadro k5000 aslo can be used as VGPU in Remote Fx?
How can i shared it with 3 computers ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on August 22, 2014, 12:02:28 pm
I suggest you look through VMware's documentation on ESXi VSGA.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ziomario on August 22, 2014, 04:36:29 pm
Hello to everyone. I would like to know if I can activate the VGA Passthrough on Xen with this graphic card :

Gigabyte GV-N660OC-2GD NVIDIA GTX 660 (PCI-e, 2GB, GDDR5 memory, DVI, HDMI, DisplayPort, 1GPU)

thanks.
Title: GTX 660
Post by: Patribus on August 24, 2014, 04:54:01 pm
Hello, first of all: I'm amazed with this hack! I never thought this would be possible.

Well, the thing is, I'm using a GTX 660 / Device ID 10DE - 11C0 (Gigabyte ID 1458 - 354E) (NOT Ti!!!) and would like to change it to a K4000 (?). I'm working with professional 3D software which needs a Quadro Card for a very specific function. But I do not have the money for that.

I went through the whole forum and found very little about this card.
> https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg342828/#msg342828 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg342828/#msg342828)
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg421274/#msg421274 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg421274/#msg421274)

Does some one worked with a the same card as mine?  Is there a step-by-step instruction how to do it?

Which other cards are known to work for sure? I do not have a problem to by another one if I know that it can be hacked.

Cheers


PS: isn't there a wiki where all this information is being gathered?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amin_eshgh on August 28, 2014, 07:58:19 am
Hi "Patribus" think may it is  possible to do but you should  be successful with 650 it boost

Hello Gays
I want to Flash my Bios of gtx 770 i modded it to quadrok5000 now i want to edit it's boot section of bios or flash it's bios with a quadro k5000 bios I download
http://www.techpowerup.com/vgabios/129867/nvidia-quadrok5000-4096-120817.html (http://www.techpowerup.com/vgabios/129867/nvidia-quadrok5000-4096-120817.html)
with nvflash_windows_5.165 i try but it say
PCI subsytem ID mismatch

id : 10de:1184:196e:1033
id : 10de:11BA:10de:0965
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Patribus on August 28, 2014, 08:04:56 am
Hi think may it is  possible to do but you should  be successful with 650 it boost

Some link to instructions page?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amin_eshgh on August 29, 2014, 11:58:09 am
I said that because 650 ti boost have same hardware like k4000 but 660 have more shader
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Patribus on August 29, 2014, 02:03:48 pm
sorry, but can you explain waht you mean with "more shader"?

best regards
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amin_eshgh on August 31, 2014, 02:16:44 am
My mean is that your card should have 928 core but 660 have 980 core
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Patribus on August 31, 2014, 08:39:44 am
But which Quadro card would correspond to the 660 one than?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kzyswd on September 04, 2014, 01:37:01 am
I want to make one thing clear. Quadro cards usually has lower clock speed and such, which makes it slower in gaming compared to Geforce but makes up with the "better" driver for certain applications. Since hacking a Geforce into Quadro doesnt change its hardware, does it mean it will have the same gaming performace as before it was hacked, but with increased performance for professional applications?
In other words, will a hacked GTX 690 + qudaro driver still performs the same as original Gtx 690 in gaming, but will also perform as well or even better in professional application compared to K5000 ??
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Therion on September 05, 2014, 10:34:42 am
Hello

I have discovered this thread a while ago... since I had success soft modding an GTX470 into an Quadro and using it via VGA Passthrough/ESXi 5.5 I also wanted to try the hard mod version.
I got my hands on an GTX680 (Gainward board) and tried to remove the resistor on the back, I seemed to have success.
The card identifies now as Tesla K10 - however on my  first try yesterday I wasnt able to load any drivers, I tried 337.xx GeForce (WHQL), 331.xx GeForce (WHQL) and also some Quadro-Tesla-Grid 331.xx.
With the modded GTX470 this is working fine (running on Win7 x64 with 337.xx driver).
The error code is always 10 (unable to start the device).

Any ideas, could it be an ESXi only problem?
Or would you say I did break the card?
I'll try it again either today or in a couple of days (depending on my time...).
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: pluger on September 05, 2014, 04:13:50 pm
Hi all again ;)
I successfully modified SPARKLE SXS4501024D5SNM GeForce GTS 450  1GB to Quadro 2000
board is reference nvidia gts 450 http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg (http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg)
upd:
gpu passthrough works fine.

Initial values are:
indexmeaningresistance
13 byte value Dnone
23 byte value C35k
34 byte values 8-fnone
44 byte values 0-725k

device / resistors table

device nameR1R2R3R4
gts 450none35knone25k
Quadro 200035knone5knone

furmark: http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616 (http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616)


Today, i do this hard mod with Gygabyte NVIDIA GTX 650 4gb overclocked version(GV-N650oc-4GI), i convert to Nvidia Quadro K2000, the pcb is the same that any (gtx 650), i remove the Resistor number 1 with value 25K. For the resistor number 2, i bought a smd resistor 0402 +-5% 39K OHM (similar to 40k ohm resistor) its works, i recomend to buy a smd flux and desolder to made more symple this hard mod. For the resistor number 3, i remove it, and then i put this resistor in the resistor 4 place. This graphic card don't need any bios mod with hex edit, only desintall any old graphic card driver, and install a clean quadro driver.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amin_eshgh on September 06, 2014, 12:50:23 pm
congratulation Pluger  >:D
Kzyswd : no because in quadro driver Physics is remove.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: maxpoz on September 06, 2014, 04:19:09 pm
hello,
it's possible to hack my 560ti to use a quadro driver?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Patribus on September 07, 2014, 11:36:03 am
Hello, my question again: is there some Wiki where an overview of the mods is available? IT is really diffucult to maintain the overview in a forum like this one.

And if not, should we start one?

Best regards
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: ngphucok on September 09, 2014, 02:16:33 am
Hi all again ;)
I successfully modified SPARKLE SXS4501024D5SNM GeForce GTS 450  1GB to Quadro 2000
board is reference nvidia gts 450 http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg (http://www.ixbt.com/video3/images/ref/gts450-scan-back.jpg)
upd:
gpu passthrough works fine.

Initial values are:
indexmeaningresistance
13 byte value Dnone
23 byte value C35k
34 byte values 8-fnone
44 byte values 0-725k

device / resistors table

device nameR1R2R3R4
gts 450none35knone25k
Quadro 200035knone5knone

furmark: http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616 (http://www.ozone3d.net/benchmarks/furmark_192_score.php?id=120616)

Hello , can you please check the value again ?  If it is None 35K None 5K, then what is the device supposed to be? I read up in the Nvidia Device ID list.  Quadro 2000 suppose to be 0308 right ?  Btw, I tried to mod like you with the PNY GTS450 but for some reason it turns out to be 0DDC which is unrecognized as anything.  Btw, do we need to change any BIOS? if so, can you please show me how? Thanks a lot ... !!!


Looking to hear from you soon.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dreadkopp on September 11, 2014, 10:29:11 pm
aloha community!

i am very interested in modding a Nvidia Card into a Grid k2 to share it with multiple VMs.

What i want to do is to use the rig (xeon 5650 6C/12T@3,8Ghz+24gb DDR3 Ram + hopefully false Grid k2) as a Host for multiple Windows instances  which i'd like to share to some old notebooks (using gigabit ethernet) for gaming purpose. So for the next LAN for example nobody needs to bring its full rig and stuff but just its notebook and everybody gets still good performance (using 1C/2T+ 4GB Ram + 1/4 Grid k2 + domU in own hdd or on SSD).

is this doable or is the performance via gigabit ethernet too slow?

Also i read that this mod works with GTX 680 2 GB.

Since a GTX 770 is cheaper and basically the same card in specs i wonder if the mod would still be possible with GTX 770?


Also i'd like to know how the modded card performs when shared fully to just one domU?

is it even possible or is the Grid k2 "divided" into separate parts which i share to multiple VMs?

if it is that way, had anyone tried to solder a switch to the resistors? if i get it correctly you 'just' need to remove two resistors at the gtx 680. that way it should be possible to solder a little switch to choose between 45k and ?. that way when the machine is shutdown i could just switch between the 'different' cards. when starting with the gtx 680 i boot into the hdd my windoze or linux domU is located at. (which will propably result in issues with the driver(?))

hope you guys can help me!

i really like to get that discount of about 1800€ on a Grid k2 :P
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amin_eshgh on September 12, 2014, 12:46:41 pm
ngphucok : read this page correctly  :palm:
dreadkopp : read this forum more  :clap:  + for best performance your notebooks should have 1Gbps Lan
maxpoz : NO :-BROKE
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dreadkopp on September 12, 2014, 10:19:43 pm
sorry, two pages ago someone modded his gtx 770 to grid k2 ...

so i will get one soon, if necessary someone can help me to detect the correct resistors?

Greetings!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: joe500 on September 16, 2014, 02:30:49 pm
Hello,
first thank you all for this very helpful thread! :-+

I was able to hardmod my GTX 770 to a Tesla K10.

(http://abload.de/img/k10hpkq6.gif)

But none of the temperature sensors are working now, and I can't access the Nvidia controll panel(there is no display attached to the gpu :palm:)
Should I flash a K10 bios, to get all the stuff working? I also can't play any game |O
Maybe someone can help me solving these problems :-+


EDIT: Made it a Grid k2 and all works perfect now!!! Thank you all so much!!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: axero on September 19, 2014, 08:10:30 pm
...
EDIT: Made it a Grid k2 and all works perfect now!!! Thank you all so much!!!

How does this perform in GPGPU benchmarks? Is the double precision float numbers comparable to a real K2 or is the performance still crippled? You can find such a benchmark in Aida64 under Tools -> GPGPU Benchmark
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Patribus on September 20, 2014, 11:07:49 am
Hello everyone,

for those who have time,

I started a Wiki to gather all the info in this forum in a struktured way.

The wiki is still kompletely empty, I'll start filling in out in the next few weeks, mainly with all the info related to the GTX 660 card (which is the one I have).

PLEASE FEEL FREE TO EDIT THIS WIKI
located at http://aidivn.wikia.com (http://aidivn.wikia.com)

TO be honest, I still did not check how the permissions settings are, but I'll change them step by step, so everyone can have access to edit.

Well, that's it for the moment.

Best regards

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: NiHaoMike on September 20, 2014, 11:24:58 pm
Any idea if the new 980/970 would be hackable?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: vacaloca on September 22, 2014, 05:01:00 am
I don't believe there are any professional model cards with GM204 chips, so my guess is GTX 970 and 980 can't be converted to anything else.

Would this be doable? Interested in TCC... From:
NVIDIA_DEV.1380 = "NVIDIA GeForce GTX 750 Ti"
NVIDIA_DEV.1381 = "NVIDIA GeForce GTX 750
To:
NVIDIA_DEV.13BA = "NVIDIA Quadro K2200"
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ngphucok on September 22, 2014, 07:31:03 pm
ngphucok : read this page correctly  :palm:
dreadkopp : read this forum more  :clap:  + for best performance your notebooks should have 1Gbps Lan
maxpoz : NO :-BROKE

What do you mean ? Can you please tell me what did I read incorrectly?  Last Week, I tried to put on the VR 1k - 100K in the forth bit; however, the Device ID seems like it doesn't change when I turn to 5K or 60K.  Do I need to modify the BIOS firmware in order to make it work?

Thanks a lot for your advise !
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: pradawny on September 25, 2014, 10:19:50 pm
Hello,

Due to the limited space around the single pcie x16 slot, I'm thinking about purchasing GTX 760 "MINI" card. I found two models:

1) ASUS DirectCU Mini - GTX760-DCMOC-2GD5
2) MSI N760 2GD5/OC ITX

I wonder if someone has already managed to convert one of these "MINI" GTX 760 cards into the Grid K2? Looking at the attached pictures it seems that the resistors have been placed somewhere else.

Alternatively, what card would you recommend for virtualization purposes (vDGA / vSGA), which does not require a lot of soldering and would fit into the Intel S2600CP4 mainboard (graphics lenght is limited by memory slots ). It would be great if the card wouldn't be too loud.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: justanothercanuck on September 27, 2014, 11:26:04 pm
Looks like the days of softmods might be over...  :-//

"NVIDIA Alerts Nouveau: They're Starting To Sign/Validate GPU Firmware Images"
http://www.phoronix.com/scan.php?page=news_item&px=MTc5ODA (http://www.phoronix.com/scan.php?page=news_item&px=MTc5ODA)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: philyd on October 04, 2014, 01:01:55 am
hey guys, made an account especially for this :)
so i've read  :blah: through most of the forum and decided im keen  :scared: to get my fingers into my MSI 660Ti Power Edition and turn it into a k5000. I mainly need it for ansys  :bullshit: and cad at home: unlocking would mean i could start using the card to solve, instead of having to use the cpu  :palm:

 From what ive read, i still havent been able to identify the resistors. would be awesome if anyone has any clues as to where they are. ive attached pics of where i think they might be  :-// .
Correct me if im wrong, but i can just use the same resistor values as for the 680, correct?
If there is still any mystery about the 660ti, id be willing to donate the card, if anyone wants to give it a shot :)

thanks guys, you're amazing  ;D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: deej78 on October 06, 2014, 07:15:48 pm
Hi Guys. I found this forum searching for 'Hack GTX 780 into quadro' on Google. Is it possible to hack a GTX 780 into anything? I was just about to buy a Quadro anyway so I don't mind trying. If someone can guide me through what I need to do.

Thank You

Daniel
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: joe500 on October 08, 2014, 04:31:58 pm
Hello,
now that I have a gtx770 @ Grid K2 I tried some virtualisazion scenarios:

1. XenServer with XenDesktop: VDGA works, but with VSGA the VM's dont start.
2. ESXi with Horizon View VDGA: works, but no  VSGA.
3. Remote FX: I can enable Remote FX in the Win 8.1 Enterprise VM. Also a little bit of VRam(165 Mb) is allocated by the VM. Sadly there is no difference in performance between software gpu and the fake Grid K2.

The Host is a Windows Server 2012 with i5-3550 and 16Gb of Ram
The VM is a windows 8.1 Enterprise

Do I need to modify the bios or flash a modified bios from a K2 Grid to my moded Gtx 770 to get the full performance/features?
Please help me with this problem :-+
 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Vladimir on October 09, 2014, 06:52:40 am
Hi everybody!
Thanks for great work and a lot of usefull information!

Successfully hacked two cards only with Nvflash:
Palit GTS 450 to Quadro 2000 - Works with passthrough in Esxi 5.5 and in Xenserver 6.2 and in Xen 4.4
Inno3D GT 9800 to Quadro FX2800M - Works with passthrough in Xenserver and Xen, and does NOT work in Esxi (fails with BSOD)

Third card - Palit GTX 660 2 gb, tried to mod it to a K4000 ID of 11FA.
Resistors was replaced in accordance with THIS (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg421274/#msg421274) post.
On this Palit pcb in area of flash chip the same as on EVGA GTX 660.
I had no 15K resistor so I put 16K. And it's looks ok. The 4th nibble is A.
But..
1. 3rd nibble is buggy: Mostly it's F, but sometimes (eg. after xen host reboot) it became "E". And even if I put 40K resistor in R3H on topside.
2. Passthrough does not work. Tested in Xen when ID was ok - 11FA. In device manager there is yellow triangle - error code 43.

Any suggestions?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: joe500 on October 09, 2014, 10:38:50 am
@axero

sorry for the late reply. Here are my results using 332.76 quadro driver on a win server 2012 R2:

(http://abload.de/img/gpgpup3y4v.png)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SoNic67 on October 10, 2014, 01:47:05 pm
Would this be doable? Interested in TCC... From:
NVIDIA_DEV.1380 = "NVIDIA GeForce GTX 750 Ti"
NVIDIA_DEV.1381 = "NVIDIA GeForce GTX 750
To:
NVIDIA_DEV.13BA = "NVIDIA Quadro K2200"

I am interested in this too... Both have the GM107 chip, so in theory would be doable.
750 Ti has the full core count (640:40:16), like the K2200. But the 750 Ti is 1/4 of the price of K2200.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: rcarlos243 on October 16, 2014, 05:46:25 pm
I have an MSI GTX 780 3GB OC Twin Frozr (Revision B1 chip) core config: 2304:192:32(12 SMX) GK110

is it possible to convert it to Quadro K5200 as it has the same core config: 2304:192:32(12 SMX) GK110 but has 8GB VRAM
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SoNic67 on October 16, 2014, 11:20:48 pm
Take a picture of the back, to compare it with the K5200... Area close to the chip.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: rcarlos243 on October 17, 2014, 03:48:25 am
Take a picture of the back, to compare it with the K5200... Area close to the chip.

i dont know where to look at

(http://www.techpowerup.com/reviews/MSI/GTX_780_TF_Gaming/images/back.jpg)

(http://i60.tinypic.com/2ezqmq8.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SoNic67 on October 17, 2014, 03:16:09 pm
You need to show exactly just the central region that I showed - around chips U504, U505 and the four screws for the cooler.
It seems that your board is missing one of them...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: rcarlos243 on October 18, 2014, 03:17:31 am
You need to show exactly just the central region that I showed - around chips U504, U505 and the four screws for the cooler.
It seems that your board is missing one of them...

i have no idea where the chip stuff you're talking about.

http://oi60.tinypic.com/2lux6au.jpg (http://oi60.tinypic.com/2lux6au.jpg)

http://oi62.tinypic.com/iqwihh.jpg (http://oi62.tinypic.com/iqwihh.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bingo34 on October 20, 2014, 09:38:24 am
o/ all

post is very interesting.

I search to soft mod a gtx 470, and it's difficult for me, i'm french and my english is bad.

So i read 73 pages of this topic, but i dont understand how i change straps and device id on my gtx 470.

I take this subject : http://www.davidgis.fr/blog/index.php?2013/09/18/969-xen-430-vga-passthrough-gtx-480-soft-moded-to-quadro-6000 (http://www.davidgis.fr/blog/index.php?2013/09/18/969-xen-430-vga-passthrough-gtx-480-soft-moded-to-quadro-6000)

And this : http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/ (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

I want soft mod my gtx 470 evga>quadro 5000 for use passthrough esxi/xen passthrough.

I don't know how i must begin...

I have my bios gtx470, i download bios quadro 5000, i open this file with and heximal editor, then i compare 2 bios.

After i'm blocked.

How i find device id on heximal editor?
What's strap i must changed?
I think that my problem is how i undertand langage english.
I don't undertand what is "little endian"?

thank you for answer.

Regards,

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Vladimir on October 22, 2014, 03:12:45 pm
Hi everybody!
Thanks for great work and a lot of usefull information!

Successfully hacked two cards only with Nvflash:
Palit GTS 450 to Quadro 2000 - Works with passthrough in Esxi 5.5 and in Xenserver 6.2 and in Xen 4.4
Inno3D GT 9800 to Quadro FX2800M - Works with passthrough in Xenserver and Xen, and does NOT work in Esxi (fails with BSOD)

Third card - Palit GTX 660 2 gb, tried to mod it to a K4000 ID of 11FA.
Resistors was replaced in accordance with THIS (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg421274/#msg421274) post.
On this Palit pcb in area of flash chip the same as on EVGA GTX 660.
I had no 15K resistor so I put 16K. And it's looks ok. The 4th nibble is A.
But..
1. 3rd nibble is buggy: Mostly it's F, but sometimes (eg. after xen host reboot) it became "E". And even if I put 40K resistor in R3H on topside.
2. Passthrough does not work. Tested in Xen when ID was ok - 11FA. In device manager there is yellow triangle - error code 43.

Any suggestions?

Successfully hacked brand new MSI GTX N660 Gaming OC edition to Quadro K4000.
Works with passthrough in Xen 4.4
Now i have tripple-headed virtual gaming PC  O0
And only one is sad: previously installed 3-screen multiseat system on my Linux Mint 17 x64 Qiana does not work with Xen because of proprietary drivers (multiseat needs proprietary drivers and Xen needs nouveau) :wtf:
Now I am installing ubuntu server with Xen.

Answering my own post:
1. To fix 3-rd nibble to "F" put pull-up resistor 40k (or less) between flash VCC and ADC input for 3-rd nibble (see picture).

2. Palit GTX 660 was returned to owner. He was worried and did not want to try again to remake it. So I can not check if it works in Xen. I am sure that the pull-up resistor would correct 3rd nibble on it too.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Scramblejams on October 24, 2014, 04:30:59 am
Hi Vladimir,

previously installed 3-screen multiseat system on my Linux Mint 17 x64 Qiana does not work with Xen because of proprietary drivers (multiseat needs proprietary drivers and Xen needs nouveau) :wtf:

Could you explain that statement a bit? I'm planning on doing VGA passthrough to a Linux VM and I didn't think Xen needs nouveau. Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Vladimir on October 24, 2014, 03:12:34 pm
Could you explain that statement a bit? I'm planning on doing VGA passthrough to a Linux VM and I didn't think Xen needs nouveau. Thanks!

Xen needs nouveau drivers if You want to run gui (http://askubuntu.com/questions/226279/ubuntu-12-04-as-xen-dom0-with-gui) (gnome, kde etc.) on Dom0. There was 3-seat multiseat system with three xorgs running for three users on my PC with Linux Mint. My idea was to use Linux Mint as base system, and if one user needs to run windows guest in xen for gaming, he can just run script to log off, stop his xorg process, unbind VGA card from nvidia's driver, bind it to pciback driver, add his USB controller for his mouse and keyboard to pci-assignable list, and then start windows guest. And after shutdown windows guest - automatically bind all devices back to dom0 and start xorg again. But it looks like there is no way to do this on multiseat system.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Scramblejams on October 24, 2014, 08:59:43 pm
Xen needs nouveau drivers if You want to run gui (http://askubuntu.com/questions/226279/ubuntu-12-04-as-xen-dom0-with-gui) (gnome, kde etc.) on Dom0.

Didn't know that, thanks for your explanation.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: insect152 on November 05, 2014, 06:55:45 pm
I would be extremely interested to learn how verybigbadboy was able to convert his 680 into a VGX/GRID K1

Just remove resistor 1 and 3 showed on picture in my first post and you will get grid k2

Also now I am trying to modify gts450 to quadro 2000. But I have a problem with getting 4th symbol. I think it is possible to modify almost all nvidia cards which have counterparts. Gts450 have similar way to setup device id.

I think gt200 series can be modified too, I looked at died gt240 and I think I know where are right resistors.

What i need to convert my gtx 680 to a grid k2 simply by removing those 2 resistors, nothing else ? I don't need to solder anything right ?

Sorry im new here and i just want to confirm after a 73 pages thread  :-\
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: drpc on November 11, 2014, 09:31:08 am
Asus gtx680 directcu 2 Need help for resistor location. They have there own pcb and the layout is different with other brands.

I can not make sure where is the resistor for hardID control.

I have Multimeter and electric iron.

Any information will be appreciated.

luyi.  If you are in suzhou, China. We can have a meet.

P.S.

And the back side details of aroud GPU area.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 11, 2014, 10:11:09 am
Asus gtx680 directcu 2 Need help for resistor location. They have there own pcb and the layout is different with other brands.

I can not make sure where is the resistor for hardID control.

I have Multimeter and electric iron.

Any information will be appreciated.

luyi.  If you are in suzhou, China. We can have a meet.

P.S.

And the back side details of aroud GPU area.

Top right side near the heatsink mounting hole.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: drpc on November 11, 2014, 10:43:54 am
Quote
Top right side near the heatsink mounting hole.

Thank you very much, dear Gnif, blue or red area?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 11, 2014, 11:03:21 am
Quote
Top right side near the heatsink mounting hole.

Thank you very much, dear Gnif, blue or red area?

Blue, you need to learn a little about what you are doing here, the red area is clearly wrong as these are sufrace mount capacitors.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: drpc on November 11, 2014, 11:08:37 am
Quote
Top right side near the heatsink mounting hole.

Thank you very much, dear Gnif, blue or red area?

Blue, you need to learn a little about what you are doing here, the red area is clearly wrong as these are sufrace mount capacitors.

Yep? thank you very much. I will check the value tomorrow.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: drpc on November 12, 2014, 02:02:45 am
I got the value:like this

top 5K 5K 5K 45K
down   45k

Dear gnif, any suggestions?

I had killed my GPU, If you don't have enough knowledge about electronic. please don't like me as a GPU KILLER.....
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 13, 2014, 07:53:43 am
I started a Wiki to gather all the info in this forum in a struktured way.

The wiki is still kompletely empty, I'll start filling in out in the next few weeks, mainly with all the info related to the GTX 660 card (which is the one I have).

PLEASE FEEL FREE TO EDIT THIS WIKI
located at http://aidivn.wikia.com (http://aidivn.wikia.com)

TO be honest, I still did not check how the permissions settings are, but I'll change them step by step, so everyone can have access to edit.

There is already a wiki for it, but nobody seems to have bothered populating much into it:
http://gpumod.wikia.com/wiki/Gpumod_Wiki (http://gpumod.wikia.com/wiki/Gpumod_Wiki)

Looks like the days of softmods might be over...  :-//

"NVIDIA Alerts Nouveau: They're Starting To Sign/Validate GPU Firmware Images"
http://www.phoronix.com/scan.php?page=news_item&px=MTc5ODA (http://www.phoronix.com/scan.php?page=news_item&px=MTc5ODA)

The days of softmods finished with the GTX480. Everything after that had to be hard-modded anyway. And there is no point in chasing bleeding edge drivers with anything but a bleeding edge card.

For those of you wanting to use VSGA type solutions, there are known bugs in the Kepler firmwares, and only the latest firmware for the K2 works properly. All the GeForce cards have firmwares where the bugs aren't fixed, so it probably won't work. You could cross-flash a K2 firmware (after you have edited the memory size initialization block) onto a GeForce, but you will lose all video outputs on the card, and I don't think anyone has tried this.

If you want to play with VSGA you may be better off with a GTX480 modified into a Quadro 6000. If that doesn't work, later cards probably won't work either.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 14, 2014, 12:54:44 am
I got the value:like this

top 5K 5K 5K 45K
down   45k

Dear gnif, any suggestions?

I had killed my GPU, If you don't have enough knowledge about electronic. please don't like me as a GPU KILLER.....

Read through this thread fully, there are heaps of tips on how to do this. If you are asking such questions perhaps you should not be performing this modification.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 17, 2014, 05:01:15 pm
Anyone got a 980? I would be interested to know if the 780ti resistor on EPROM mod would turn this card in to a K80?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 18, 2014, 12:29:48 am
Anyone got a 980? I would be interested to know if the 780ti resistor on EPROM mod would turn this card in to a K80?

I do not believe so, nobody I am aware of has this card yet and is willing to hack on it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 18, 2014, 07:46:06 pm
Anyone got a 980? I would be interested to know if the 780ti resistor on EPROM mod would turn this card in to a K80?

I do not believe so, nobody I am aware of has this card yet and is willing to hack on it.

I am willing if there is a chance that it my work. I hacked my 780ti to K6000 so comfortable soldering on to the pcb if required.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on November 20, 2014, 10:30:30 am
Just quick update for u guys... i have gtx680, i am using it for vga passthrough with kvm, and with some patches, you can SOFTMOD it to pro counter part and it works with latest geforce/quadro (both) drivers in virtual machine.

here is patch and how to use it:
https://bbs.archlinux.org/viewtopic.php?pid=1475170#p1475170
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 20, 2014, 10:45:30 am
I seem to recall that there are now patches for QEMU that neuter the drivers' ability to detect it is running in a VM anyway. Between the no-snoop patch and passing through the CPU ID from the hardware (as opposed to reporting the CPU as something like QEMU) the driver can't detect it's running in a VM so it boots up the unmodified GeForce card just fine.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 20, 2014, 10:51:20 am
I seem to recall that there are now patches for QEMU that neuter the drivers' ability to detect it is running in a VM anyway. Between the no-snoop patch and passing through the CPU ID from the hardware (as opposed to reporting the CPU as something like QEMU) the driver can't detect it's running in a VM so it boots up the unmodified GeForce card just fine.

Interesting. So, in terms of a 980 running in vmware and/or KVM we can still softmod to get them working, or that hasn't been tested yet?
I have just forked out on 2 x R9 280x on a C612 platform so that I can 4K game under ESXi 5.5u2.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 20, 2014, 11:05:46 am
No, you no longer need to do any modding, there are patches available that prevent the driver from detecting it is running in a VM which makes everything work without any modifications to the card, software or hardware.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 20, 2014, 11:08:01 am
No, you no longer need to do any modding, there are patches available that prevent the driver from detecting it is running in a VM which makes everything work without any modifications to the card, software or hardware.

Excellent, thanks for the heads up!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: slis on November 20, 2014, 11:08:42 am
Geforce cards can work unmodified in kvm, but after 340 drivers you can't use hyperv enhancements, with softmod and mentioned patch to grid k2/quadro u can use hyperv (better performance) with latest drivers aka 344. Anyway i thought you guys want to know that u maybe can use your geforce as quadro in vm-s without soldering. :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 20, 2014, 11:24:48 am
It's always good to have extra options.
Nvidia's crippleware practices annoy me sufficiently that I am only using their products until ATI get their drivers sorted out to the point where their products are usable for me. Then again, I've been waiting for this to happen for years, but hope springs eternal...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: pasha4ur1 on November 21, 2014, 02:01:21 pm
Hello, people!

I need your help. I want to convert MSI GTX 460 v2 Hawk into Quadro 4000m
(http://habrastorage.org/files/01b/e59/aa5/01be59aa552d4ebb84c25dd65b515afa.jpg)
(http://habrastorage.org/files/9b1/cad/0ee/9b1cad0ee87c4300a8170d1de2a5175b.png)

my BIOS http://pasha4ur.org.ua/GF104.rom (http://pasha4ur.org.ua/GF104.rom)

Please, help me with commands for flashing. I broke my head while read about bytes here
http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/ (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

And I found
Quote
Hi hishamkali,

you made a mistake…
you use the string from gtx480…
this work for me on a GTX460 (0E22)
nvflash –index=X –straps 0x7FFC3FC3 0x10006428 0x7FF1FFFF 0x00020000

bye

Will it work better in Adobe Apps? Will I can adjust clocks and fans? Games will work too?

Thx for help
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: pasha4ur on November 25, 2014, 08:06:11 pm
up
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 26, 2014, 06:51:37 pm
Can the titan z be modded like the 780ti?
price of the titan z is down to 999 today.
I modded my 780ti by soldering the resistor on the eprom and curious if the same can  easily be done with titan z.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on November 26, 2014, 11:05:18 pm
Can the titan z be modded like the 780ti?
price of the titan z is down to 999 today.
I modded my 780ti by soldering the resistor on the eprom and curious if the same can  easily be done with titan z.

If not Titan Z, what about the Titan Black?

Was thinking of getting this one and mod to Quadro....
http://www.xbitlabs.com/articles/graphics/display/gigabyte-geforce-gtx-titan-black-ghz-edition_4.html#sect0 (http://www.xbitlabs.com/articles/graphics/display/gigabyte-geforce-gtx-titan-black-ghz-edition_4.html#sect0)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 28, 2014, 12:05:41 am
Hi,

I've read every post on this thread. Amazing!

I finally applied the mod to a Palit GTX680 to produce a K2 and passing this through XenServer (credence Beta) to Win 8.1 enterprise. Unfortunately, once I install the drivers, the card comes up with a yellow icon in Device Manager, saying that the card is not working. If I disable, then re-enable the card, Device Manager seems to like it.

Unfortunately, I don't believe the card is working correctly. For example, the GPUZ attachment detects the GRID K2, but doesn't detect any of the other parameters correctly. No BIOS info, none of the Senors are working, and the Memory is the wrong size. The card I have is only a 2GB card. None of the Clock information is shown. And this card supports OpenCL, CUDA, and DirectCompute, but none of those items are selected.

Please see the attached file.



In the XenServer host, nvidia-smi give the following output:

Thu Nov 27 23:25:14 2014
+------------------------------------------------------+
| NVIDIA-SMI 340.34     Driver Version: 340.34         |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GRID IceCube        Off  | 0000:02:00.0     N/A |                  N/A |
| 37%   47C    P0    N/A /  N/A |      9MiB /  2047MiB |     N/A      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Compute processes:                                               GPU Memory |
|  GPU       PID  Process name                                     Usage      |
|=============================================================================|
|    0            Not Supported                                               |
+-----------------------------------------------------------------------------+


A Grid K2 card is supposed to show CUDA process names in nvidia-smi. "nvidia-smi stats" also says that my card is unsupported.

I also have an unsupported GeForce 6200 in the same XenServer host as the primary display. Not sure if that is causing some Nvidia conflict?

Any thoughts on what could be done to get this GTX680 (now K2) card to work correctly under XenServer with Win 8.1? I would love to get the vGPU stuff to work, and XenCenter gives me lots of vGPU options, but when  I start the VM with the vGPU, XenServer complains:

Internal error: xenopsd internal error: Device.Ioemmu_failed("vgpu exited unexpectedly")

Considering that the passthrough card is not detected correctly inside the VM, I suspect there is something fundamentally incorrect with either the mod or my XenServer setup? Any thought?

Thanks!


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 28, 2014, 12:23:52 am
I've yet to see anyone get this working with a real Grid/Tesla/Quadro (they should all work, they are listed as supported for VSGA on ESXi), so it's rather difficult to begin guessing whether the problem is related to the card not being a real Grid. If you had a 4GB card you might be able to flash a real K5000 firmware onto it, which may give you better results, if the problem is the card being modified in the first place. I had a 4GB 680 modified into a K5000 and flashed with the K5000 firmware, but I sold it many months ago when I upgraded to 780Ti.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 28, 2014, 09:33:50 pm
For those of you wanting to use VSGA type solutions, there are known bugs in the Kepler firmwares, and only the latest firmware for the K2 works properly. All the GeForce cards have firmwares where the bugs aren't fixed, so it probably won't work. You could cross-flash a K2 firmware (after you have edited the memory size initialization block) onto a GeForce, but you will lose all video outputs on the card, and I don't think anyone has tried this.

I'd be willing to flasha K2 bios onto a modified GTX680 and try this. Firmware is available from IBM and HP for GRID K2. Unfortunately, I only have a 2GB card (Palit). Whats the best place to start looking for how to alter the memory size initialization block in the BIOS? ...I think there was something about memory flags in this post somewhere....stay tuned.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: imanz on November 29, 2014, 11:08:53 am
Is anyone willing to take some pictures of their modified cards that are working as expected? Unfortunately because this post is 75+ pages its getting a bit hard to follow and find directions/information.

Specifically it would be nice to have a set of instructions including the recommended resistor type and location for an assortment of cards of each model. If anyone is interested I am willing to paypal someone 30 bucks for taking the time to write up something on the nvidia 680 with pictures of a finished mod, recommendation on which resistors to get and a list of models that have resistor locations determined (to make it a bit easier to find on ebay). If you want to share this with the community just PM the paypal.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: verybigbadboy on November 29, 2014, 05:21:16 pm
Hello

I am interested in modding 750 maxwell card. I have one card on my job, and I did some research on it. it is Palit 750 with 1gb memory.

I tried to mod it similar to 650 but have some issues:
resistors around bios a bit changed -> my card have 0-ohm resistor connected to 6-pin of bios rom.

I tried to change resistors connected to this pin, but it is not affects on pci id.
initially it is 20k, I tried to solder 40k resistors to both places.

I checked bios, but bios is also changed. It is looks like unlocked, but I think it is not.


so anyone tried to mod maxwell cards :)?

It will be really nice to mod 750 cards :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 29, 2014, 06:33:29 pm
Tried to flash my 2GB GTX680 with K2 firmware from:

ftp://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p1141455199/v96072

There are three pieces of firmware in this package, 2 for GPUs and a tiny one for what I would assume is some other functionality on the K2, like the PCI bridge, or maybe even some bits of a hypervisor?

Anyway, I tried flashing both instances of the K2 BIOS to my GTX680. The card too the firmware, but wasn't functional. I didn't modify the firmware in any way, so I assume there is a mismatch with the memory allocation at least.

Any thoughts on getting a K2 firmware to work properly with the hard modified GTX680?

Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 29, 2014, 10:07:14 pm
If the K2 is anything like the GTX690, then there will be 3 firmwares involved:
1) GPU 1
2) GPU 2 (no, they are not quite the same, the device hierarchy ID is different which you will need to edit)
3) PCIe bridge

Since the K5000 is supported for VSGA I would expect it to work just the same with other hypervisors. You will almost certainly find that easier to modify (I was running my 4GB GTX680 with the K5000 BIOS before I sold it). For a 2GB card you should be able to get away with just changing the memory layout initialization block, and you will retain the functioning of (at least some) video outputs), unlike with the K2 firmware where you will lose all video outputs since the K2 has no video outputs.

And if you can't get the K5000 to work with GPU sharing, there is a good chance K2 won't work either.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 29, 2014, 10:36:38 pm
just changing the memory layout initialization block

Any pointers on how to go about that? "Changing the memory layout initialization block".

Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 30, 2014, 12:53:51 am
I posted on this thread a quite a while back with some details of how to do it, and somebody else successfully used the approach on a different card. Couldn't tell you what page off the top of my head, though.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 30, 2014, 12:58:32 pm
I posted on this thread a quite a while back with some details of how to do it, and somebody else successfully used the approach on a different card. Couldn't tell you what page off the top of my head, though.

I'm guessing that this was the post:

https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg292021/#msg292021)

The hurdles in this approach is that K2 vs GTX680 bios comparisons have many, many differences. And the K2 doesn't come in two separate memory configurations....

https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg326647/#msg326647 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg326647/#msg326647)
Did oguz286 ever reply to you on the bios diffs?

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on November 30, 2014, 01:55:51 pm
Yes, that is the correct post, and I just spotted a typo in it - what I meant to say is that I'd be surprised if the Q6000 BIOS didn't work on the GTX480.

What are you referring to by "G2"?

You should be able to disassemble the BIOS using the envy tools and use similarities in surrounding code to identify the block where the memory layout is being initialized, and replace that block in the K2 BIOS with the equivalent from your 680 BIOS.

The strap info is still applicable, although at least the device ID straps are now also done in hardware, and the hard strap can be checked in a register in Kepler GPUs, although the soft strap still does affect the PCI device ID.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 30, 2014, 02:20:36 pm
Apologies. "G2" is a typo. Meant "K2". I also found this post where you clarified the previous post:

https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/705/ (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/705/)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 30, 2014, 07:31:55 pm
I disassembled the K2 and GTX BIOSes using the "nvbios" tool from envytools. First, I had to strip off the UFFI headers from both BIOS before nvbios would parse the ROM with any sensible output.

I was able to find MEM TYPE and MEM TRAIN blocks in both the K2 and GTX bios. Interestingly, the GTX 2GB and GTX 4GB bios had the same exact binary code at the specified offsets

GTX
MEM TYPE table at 0x4d6f, version 10, 16 entries
Detected ram type: DDR2
0x4d6f: 10 07 07 10 00 e6 4d
....


The K2 Bios has only the header slightly different in the MEM TYPE block:

K2MEM TYPE table at 0x4e88, version 10, 16 entries
Detected ram type: DDR2
0x4e88: 10 07 07 10 00 ff 4e

The difference in the header could be a clue, but the GTX 2GB and 4GB ROMs had the same layout, so this block probably isn't it....

Desperately, I copied the pieces out of the GTX BIOS into the K2 Bios and flashed the modified GTX680. As predicted, it did jack shit and the though the system started, trying to access the card cause the host to crash.

>>surrounding code to identify the block where the memory layout is being initialized,
With the reference to "code" are you talking about the init scripts that nvbios decompiles? Or is it some other memory configuration table/flag that I should look at?

Thanks!

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on November 30, 2014, 08:58:35 pm
Based on the conversation I read here:

http://people.freedesktop.org/~cbrill/dri-log/?channel=nouveau&highlight_names=&date=2013-11-13 (http://people.freedesktop.org/~cbrill/dri-log/?channel=nouveau&highlight_names=&date=2013-11-13)

Yes, I am stalking you, Gordan!  >:D

I modified the corresponding parts of the K2 bios with the bits you found to take the GTX680 from 4GB to 2GB. Flashed the modified BIOS to the card and lost control of the GTX's fan (because the K2 doesn't have any!!). But the modded card didn't play nice with vGPU under XenServer and I had the same errors are before. Additionally, passthrough to windows with the modified firmware causes GPU-Z to not detect anything.

So, I flashed the card back to my original BIOS.

In summary:
Modified GTX680 with Xen vGPU. Stock BIOS. -> Doesn't work.
Modified GTX680 with Xen Passthrough. Stock BIOS. -> works for Windows 8.1.
Modified GTX680 with Xen vGPU. K2 BIOS. The g1 and g2 BIOS -> Doesn't work.
Modified GTX680 with Xen Passthrough. K2 BIOS. The g1 and g2 BIOS -> Doesn't work.
Modified GTX680 with Xen vGPU. Mod K2 BIOS with the memory changed from 4GB to 2GB. Only the g1 BIOS-> Doesn't work
Modified GTX680 with Xen Passthrough. Mod K2 BIOS with the memory changed from 4GB to 2GB. Only the g1 BIOS-> Doesn't work

It looks like this ugly duckling GTX will never turn into a swan K2.

Any other thoughts or ideas to try?

What's the cheapest card available to mod that can be passed through properly?

PS. How many times can I flash the EEPROM before it dies?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 12:09:45 am
I was talking to the raw binary code hex editor view, but you should be able to verify the exact location of the bytes you need to change using nvbios dumps.

Loss of fan control and video outputs is exactly the reason why I suggested modifying into a K5000 rather than K2, since the K5000 is supported for all of the same VGPU functionality as a K2, and as I mentioned before I ran a 4GB GTX680 with a K5000 BIOS on it with no ill effects.

Did you modify the device id hierarchy IDs on the primary K2 BIOS to make it work on a 680? nvflash shouldn't have even allowed you to flash the BIOS onto the card if you hadn't adjusted that.

Did you remember to rebuild the BIOS checksum using KBT after you modified the BIOS? If the checksum is invalid, the card won't work with similar symptoms to what you are describing.

For normal PCI passthrough, all the modified cards I tried work fine - over time I have used 450, 470, 480, 670, 680, 690 and currently 780Ti. If normal PCI passthrough doesn't work, the modified BIOS is broken.

I wouldn't expect the EEPROM to expire in fewer than 1000 writes. I did kill the EEPROM on my sacrificial GTX450 way back when I was still researching what strap bits do, but that involved trying to go through many, many permutations of strap bits in an automated way (nvflash the straps on a 450 running as a secondary card, reboot, capture lspci -vvvv, repeat...) and eventually it gave up.

You might want to investigate further using a cheap GTX470 or GTX480 card. No hardware modification required, it's all controlled by the soft straps. Get a Q5000 or Q6000 BIOS, make sure the device ID strap bits are suitably set for the GeForce card to result in the equivalent Quadro, modify the RAM configuration block to adjust the size from 6GB to 1.5GB (or 5GB to 1.25GB in case of the Q5000), fix the checksum with KBT, flash that on, and see how you get on. The Fermi cards didn't have UEFI headers and crypto signatures, so with a modified BIOS on those you won't be getting thwarted if the newer drivers check the BIOS' crypto signatures. A high end Fermi card is probably a much better candidate for exprimentation with this kind of thing than the Kepler cards. And of course they are much cheaper nowdays, so not as big a loss of you break one. Quadro 5000 and Quadro 6000 are both supported for ESXi VSGA, so in theory the functionality is there. I remember reading about a demo system somebody put together, running 6 gaming seats (Borderlands at 800x600@25fps) on a single Q6000. Obviously you won't get that many with 1/4 of the RAM on a 480, but it should be sufficient for experimental purposes. Whether Xen actually supports the older Fermi cards, I don't know, but ESXi definitely did.

On a separate note, if you want VSGA/VGPU type functionality, there are other ways to achieve something equivalent. Run VMware Player 5 (6 has somewhat broken 3D acceleration in my experience), and once you get 3D accelerated VMware drivers installed, also install Kainy. That will do realtime video compression (CPU based, sadly, so you'll need plenty of CPU) and allow you to output it to a Kainy client (which exists for Windows, Linux and Android). It effectively gives you the equivalent capability stack to VSGA/VGPU and Nvidia Shield. And best of all, you don't even have to use an Nvidia card. Not as performant as VSGA/VGPU, but when I tested it as a proof of concept it worked usably well.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Milardo on December 01, 2014, 08:37:55 am
Hi, i couldn't quite find an answer, but is it possible to via software method in windows os, modify the device id of a mobile gpu like the gt650m that has nvidia optimus? So i have a clevo w110er and i want to use gamestream and shadowplay but gt650m isn't supported because it's a gt series card. I want to modify the device id into a gtx660m which is closely related to gt650m so geforce experience will let me use gamestream and shadowplay. Is this possible, please let me know and how to do that, thanks in advance for any good replies.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on December 01, 2014, 09:39:19 am
Did you modify the device id hierarchy IDs on the primary K2 BIOS to make it work on a 680? nvflash shouldn't have even allowed you to flash the BIOS onto the card if you hadn't adjusted that.
Oops! Need to look into that. But "nvflash -4 -5 -6" happily flashed the card. Of course, I agreed to all the warnings, including selling my soul.

the K5000 is supported for all of the same VGPU functionality as a K2,
Even for the XenServer/Nvidia GPU hypervisor technology? http://www.nvidia.co.uk/object/grid-virtual-gpus-uk.html (http://www.nvidia.co.uk/object/grid-virtual-gpus-uk.html)

Did you remember to rebuild the BIOS checksum using KBT after you modified the BIOS? If the checksum is invalid, the card won't work with similar symptoms to what you are describing.
Yes, I updated the checksum.


You might want to investigate further using a cheap GTX470 or GTX480 card.
I'm considering that for my VM Host build. I was hoping to put together a XenServer (the Citrix distribution) with the GTX680 -> K2 to specifically use the XenServer-Nvidia vGPU/GPU Hypervisor. But if that technology still locked to the "proper" K1/K2 cards, then I will simply have to defer to using multiple cards in full passthrough.
 
On a separate note, if you want VSGA/VGPU type functionality, there are other ways to achieve something equivalent.
Thanks! I'll take a look at your suggestions.

WRT the K5000 mod, I've removed the two resistors on my GTX680 to make a K2. Can I simply flash the K5000 bios (changing the memory from 4GB to 2GB) onto the GTX680? Do the soft-straps in the bios also need to be changed? (please. please. don't tell me I have to solder a 0402 resistor. I can't even see those buggers, let alone solder them!)

Thanks you for all your guidance in getting this working. It's greatly appreciated!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 09:39:38 am
GT650M and GTX660M are based on GK107 which is a Kepler generation chip. You can use the soft-straps in the BIOS to change the device ID, same as on earlier Fermi and Tesla GPUs, but whether the extra features like Gamstream and Shadowplay will become available is questionable. By all means, try it and report back, I don't think anyone has attempted this before.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 09:52:44 am
the K5000 is supported for all of the same VGPU functionality as a K2,
Even for the XenServer/Nvidia GPU hypervisor technology? http://www.nvidia.co.uk/object/grid-virtual-gpus-uk.html (http://www.nvidia.co.uk/object/grid-virtual-gpus-uk.html)

No idea, I never looked into it.

You might want to investigate further using a cheap GTX470 or GTX480 card.
I'm considering that for my VM Host build. I was hoping to put together a XenServer (the Citrix distribution) with the GTX680 -> K2 to specifically use the XenServer-Nvidia vGPU/GPU Hypervisor. But if that technology still locked to the "proper" K1/K2 cards, then I will simply have to defer to using multiple cards in full passthrough.

I am only using straight PCI passthrough. For any sensible degree of performance you will probably need most of a 680's worth of GPU. If you need more density than that, 690s are probably the way to go.

You should also be aware that, as mentioned recently on this thread, most recent QEMU includes patches that neuter the GPU driver's detection of whether it is running in a VM, so there is no longer any need to modify the card. The driver simply won't be able to detect it is running in a VM and will thus agree to initialize the card without any problems. That rather deprecates most of this thread.

On a separate note, if you want VSGA/VGPU type functionality, there are other ways to achieve something equivalent.
Thanks! I'll take a look at your suggestions.

WRT the K5000 mod, I've removed the two resistors on my GTX680 to make a K2. Can I simply flash the K5000 bios (changing the memory from 4GB to 2GB) onto the GTX680? Do the soft-straps in the bios also need to be changed? (please. please. don't tell me I have to solder a 0402 resistor. I can't even see those buggers, let alone solder them!)

To modify to a K5000 you will have to make sure the resistors are in place with appropriate values for a K5000. Soft straps no longer do anything of importance, and the masks should be left blank (OR bits of the device ID should be set to 0 and AND bits of the device ID should be set to 1). Other than that, a K5000 BIOS with the memory initialization change should work fine.

I seem to recall reading somewhere that recent drivers check the crypto signature on the BIOS, which means that any BIOS modification will make the crypto signature check fail, which will make the driver refuse to initialize the card. Even of you manage to defeat other problems, this may well foil your plans, since for the 2GB card you'll have to modify the BIOS payload. On a 4GB card you can get away with simply replacing the resistors to set the hard strap and flashing the K5000 BIOS as is onto the card, which means an unmodified BIOS with all the right signatures.

A number of people have reported that just removing both resistors can cause problems. For some people it works fine (it did for me), for some people it causes problems ranging from driver not initializing the card at all to random stability problems.

This is one of the big advantages of the old GTX480 cards - no soldering required, and no UEFI BIOS signatures.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on December 01, 2014, 10:21:07 am
I am only using straight PCI passthrough. For any sensible degree of performance you will probably need most of a 680's worth of GPU.
My use case isn't for gaming, rather its for virtualization. And my last stumbling block is getting AVCHD video to play sensibly to a thin client. It seems that Multimedia Passthrough of AVCHD video over remoting protocols is broken with win8. The Mrs. will not be happy with my tinkering if she can't watch videos of the kiddies. And AVCHD decompression without hardware offloading in VMs is inadequate. Funny, the performance issue is only with AVCHD video, not other H264 content. But that's for another thread...

You should also be aware that, as mentioned recently on this thread, most recent QEMU includes patches that neuter the GPU driver's detection of whether it is running in a VM, so there is no longer any need to modify the card.
I'll take a look at that if all else fails. But I have a hacked GTX680, so let's see how far we can push it.

To modify to a K5000 you will have to make sure the resistors are in place with appropriate values for a K5000.
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)

According to this, I need a 15K value at resistor 2 but will first try without the 40K at resistor 0. Hopefully, the card will be stable. Did you replace both resistors?

Even of you manage to defeat other problems, this may well foil your plans,

It's worth a shot. And would be worth the risk to have something really cool for only £130.

This is one of the big advantages of the old GTX480 cards - no soldering required, and no UEFI BIOS signatures.
Absolutely! Unfortunately, they don't really come cheap on eBay for their age. Maybe I'll get lucky. fingers-crossed.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 10:48:08 am
I am only using straight PCI passthrough. For any sensible degree of performance you will probably need most of a 680's worth of GPU.
My use case isn't for gaming, rather its for virtualization. And my last stumbling block is getting AVCHD video to play sensibly to a thin client. It seems that Multimedia Passthrough of AVCHD video over remoting protocols is broken with win8. The Mrs. will not be happy with my tinkering if she can't watch videos of the kiddies. And AVCHD decompression without hardware offloading in VMs is inadequate. Funny, the performance issue is only with AVCHD video, not other H264 content. But that's for another thread...

I had reasonable results with Kainy with reasonable amounts of CPU available to the VM (I wouldn't want to have fewer than 4 cores per VM for it). You have to be realistic with the kind of resolution you expect on the client, though.

To modify to a K5000 you will have to make sure the resistors are in place with appropriate values for a K5000.
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)

According to this, I need a 15K value at resistor 2 but will first try without the 40K at resistor 0. Hopefully, the card will be stable. Did you replace both resistors?

Yes, I replaced both nibbles' worth of resistors.

This is one of the big advantages of the old GTX480 cards - no soldering required, and no UEFI BIOS signatures.
Absolutely! Unfortunately, they don't really come cheap on eBay for their age. Maybe I'll get lucky. fingers-crossed.

That's because they are still extremely good at some things. The Kepler architecture was a radical change and although it allowed for many more shaders and higher clock speeds there were other constraints that made implementing efficient solutions to some computational problems difficult, not to mention the cases where on existing cuda code 480 significantly outperformed the 680. Various examples of this still pop up on various GPU computing forums. The Fermi cards were also quite hackable, e.g. by Quadrifying the GTX470 and 480 you get not only virtualization passthrough support, but also the second DMA channel which can make a huge difference for some loads. Hacking the 680 into a K5000 doesn't enable this, even though the real K5000 does supposedly have dual DMA engines.

Also, remember there is a problem with the K2 with things like DL-DVI modes and higher resolutions. Eventually in the interest of easy modification and no worse functionality I settled for using the last of my 680s as a Tesla K10. Teslas get PCI passthrough support, and it only required modifying one nibble of the ID on the 680. But most importantly, unlike with the K2 modification, the high resolution modes worked. This is a documented bug with K2s, and required both a driver update and a firmware update to overcome. I was particularly surprised to find that a 680 modified into a K2 with the stock BIOS suffered from the same problem. It implies that the driver tries to do something odd with the card in terms of output when it detects it as a K2.

Then again, given how intensive the task of rendering 3D + H.264 encoding in realtime is, it wouldn't surprise me if nobody actually expected this to work at more than SL-DVI grade resolutions in a meaningful way anyway. As I mentioned before, the ESXi demo I read about with the Quadro 6000 provided 6 seats at 800x600@25fps. If you add those together, that's a single seat at 1080p@34fps. Assuming a 680/K10/K2 is about twice as fast as a 480 (a generous assumption), that will just about give you 1080p@60fps. If that is the level of performance you require, then you might as well just use direct PCI passthrough.

The whole GPU sharing idea is only really usable for very low resolutions and frame rates.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: feeling on December 01, 2014, 12:52:22 pm
Hello everyone,

I need your help, I lose myself in the subject.

I would like to mount a VMWare ESXi server and I think using vSphere client.

I would like the customer can enjoy the pc graphics acceleration for games and 3D.

at present, with a budget of $ 650 which graphics card you advise me, and you need it to make changes to the circuit, if so can you give me the reference of a card on which it is running.

Thank you very much in advance.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 12:55:51 pm
Quadro 6000
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: feeling on December 01, 2014, 01:10:23 pm
yes if I multiply my budget by 10. lol
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 01:47:52 pm
The going rate for Quadro 6000 on ebay is under $650.
Note: Quadro 6000 (Fermi), NOT Quadro K6000 (Kepler).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on December 01, 2014, 02:31:25 pm
GTX690 has 3 devices on the same slot, and they have a specific hierarchy. A GTX680 has no hierarchy. Hierarchy is encoded in the BIOS and (thankfully), nvflash refuses to flash a BIOS with incorrect hierarchy ID.

The question is - where is the hierarchy ID encoded in the BIOS? The two vBIOSes on the GTX690 are quite different, so it isn't obvious where one is set for hierarchy ID of switch port 8 and the other to switch port 16.

I don't suppose anyone here knows?

Hi Gordan,

Did you ever figure out where the Hierarchy ID is encoded in the BIOS? nvflash seems to figure out hierarchy id. Comparing the bios from the two GPUs on the GTX690 or the K2 doesn't seem to yield any useful results in the binary diff. Will an nvbios dump show the location of this Hierarchy ID? Also, google doesn't seem to yield much information on "PCI hierarchy id".

I'll still try plugging along until my 15K resistors arrive and I'll also have to give up coffee so I can steady my hands to solder that tiny thing.

As always, advice will be greatly appreciated.

Thank!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 02:44:33 pm
I did figure it out some time last year. I thought I posted something about it. Unfortunately, my GTX690 expired shortly after my BIOS hacking on it, so I'm not even sure if I have notes on that part of reverse engineering somewhere.

I did it by comparing the two BIOS-es on the GTX690. They are nearly identical, IIRC the main differences are:
1) Version number (no idea why, but IIRC the versions are slightly different between primary and secondary GPU)
2) Video output initialization (each GPU has access to a subset of the ports on the back of the card, IIRC)
3) Hierarchy ID setting block
4) Checksum at the end of the file

You should be able to identify 3) by elimination and a bit of trial and error reasonably quickly. It is the same approach I used to identified the part of the BIOS code that sets up the RAM options.

If you get anywhere with a modified K2 BIOS you'll need to get the fan working (you WILL cook your card without it very, very quickly!). I'm not sure where the fan control piece of code is, unfortunately, but if you look on OCN at some of the 780Ti/Titan OC-ing thread, there's a user OccamRazor that might know more about the fan control in the Kepler BIOS-es.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on December 01, 2014, 03:16:21 pm
Awesome! Will give that a whirl.

Got it, so the hierarchy is an entire block rather than a simple flag. Will check it out.

WRT the fan, the "real" K2 doesn't have any fans and is passively cooled. So perhaps the GK104 could run passively cooled.

Besides, when I flashed the K2 bios to my 680, the fan defaulted to full-speed; so not too worred about cooking eggs on the heatsink right now. :-P
 
The next thing I will probably have to wrry about is that the K2 has an I2C controller exported to PCI but the GTX680 doesn't. I wonder if anything besides sensors are expeciting to see that device?

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 01, 2014, 03:21:30 pm
WRT "block", I mean in the sense of a diff of xxd hex dumps. It could be just one line of difference, but a line could only be differing in a single byte, and it'd still come up as a while line in the diff.

K2 can run passively cooled ONLY in a server that has tornado grade fans pushing the air from the front of the server to the back of the server, as is typical on rack mounted servers. The heatsink and casing design on the K2 is such that the front and back of the HSF package is open, to allow air blown by the case fans to easily pass through the GPU heatsink. You cannot do that with a 680.

But if it defaults to full speed, no need to worry about meltdown. :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: pasha4ur on December 01, 2014, 07:57:01 pm
Hello, people!

I need your help. I want to convert MSI GTX 460 v2 Hawk into Quadro 4000m
(http://habrastorage.org/files/01b/e59/aa5/01be59aa552d4ebb84c25dd65b515afa.jpg)
(http://habrastorage.org/files/9b1/cad/0ee/9b1cad0ee87c4300a8170d1de2a5175b.png)

my BIOS http://pasha4ur.org.ua/GF104.rom (http://pasha4ur.org.ua/GF104.rom)

Please, help me with commands for flashing. I broke my head while read about bytes here
http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/ (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

And I found
Quote
Hi hishamkali,

you made a mistake…
you use the string from gtx480…
this work for me on a GTX460 (0E22)
nvflash –index=X –straps 0x7FFC3FC3 0x10006428 0x7FF1FFFF 0x00020000

bye

Will it work better in Adobe Apps? Will I can adjust clocks and fans? Games will work too?

Thx for help
Help, please   :'(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: high on December 01, 2014, 08:46:04 pm
Well, I'm a bit stumped on the hierarchy ID. The output from "nvflash" for the K2 Bios stated "Normal Board":


NVIDIA Firmware Update Utility (Version 5.136)

IFR Data Size         : 1112 bytes
IFR CRC32             : 75F43D9C
IFR Image Size        : 1536 bytes
IFR Image CRC32       : 7A38D37E
IFR Subsystem ID      : 10DE-100D
Image Size            : 195072 bytes
Version               : 80.04.D4.00.07
~CRC32                : 5FD73C74
OEM String            : NVIDIA
Vendor Name           : NVIDIA Corporation
Product Name          : GK104 Board - 20550550_g1
Product Revision      : Chip Rev   
Device Name(s)        : GRID K2
Board ID              : E122
PCI ID                : 10DE-11BF
Subsystem ID          : 10DE-100D
Hierarchy ID          : Normal Board
Chip SKU              : 895-0
Project               : 2055-0550
CDP                   : N/A
Build Date            : 08/13/13
Modification Date     : 08/19/13
UEFI Support          : Yes
UEFI Version          : 0x10023 (Jul 30 2013 @ 16558196)
UEFI Signer(s)        : Microsoft Corporation UEFI CA 2011
Sign-On Message       : GK104 P2055 SKU 0550 (GPU1) VGA BIOS (HWDIAG)


That's why nvflash let me flash the GTX680; it doesn't think that anything is wrong. I'll still try to find the different block and compare with the GTX BIOS to see if a swap will do anything.

I looked at an nvbios dump between the two K2 BIOS and see that the only difference, except for BIOS version numbers is in one of the power profiles:

GPU1:
  2: min = 30000 mW, avg = 66000 mW, peak = 75000 mW (unkn12 = 0)
0x7ee0: 04 00 30 75 00 00 d0 01 01 00 f8 24 01 00 01 01
0x7ef0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x7f00: 00 00 00

GPU2:
  2: min = 30000 mW, avg = 72500 mW, peak = 87000 mW (unkn12 = 0)
0x7ee0: 04 00 30 75 00 00 34 1b 01 00 d8 53 01 00 01 01
0x7ef0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x7f00: 00 00 00

And there is a one byte difference in some UNK3C table:
GPU1: 0x7dc7: 01 ff 00 1b b7 00 00 10 00 00 00 00 00 00 00 00
GPU2: 0x7dc7: 01 fd 00 1b b7 00 00 10 00 00 00 00 00 00 00 00

Even though there is a PLX bridge on the K2 board, the board is presented as two discrete and independent GPUs rather than a single logical board like the GTX690 must be?

With the original GTX680 ROM flashed on the board, I tried the VGX drivers in XenServer again and noticed a line in the logs, in which the driver stated:

vGPU is supported only on VGX capable boards

The driver knows that the VGX extensions are not available. I'm guessing that the GTX BIOS doesn't map any of the Kepler visualization instructions into memory....but the K2 bios does....but I can't get the K2 bios to work on the GTX680...

So, I will resign my build to adding multiple GPUs and directly passing them back to the VMs instead of trying this fancy GPU virtualization stuff - it's clear that it's only reserved for the super-high end and even then, it is still in its infancy. I'm also waiting for some 15K resistors and I'll convert this card to K5000 and see how I get along.

Back to the drawing board...

UPDATE: Pulled the trigger for a GTX 470 from the bay. Will mod that to Quadro 5000. My VM host will then have un-gimped GTX470 -> Quadro 5000 and Frankenstein GTX680 -> K5000/K2...and an Intel HD 4000 IGP as an appendix....does anyone run XBMC on a Dom0?

This is the output from XenServer with my modified GTX680 -> K2 card.

Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: PLUGIN CONFIG: /usr/share/nvidia/vgx/grid_k220q.conf,gpu-pci-id=0000:02:00.0
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: pluginconfig: /usr/share/nvidia/vgx/grid_k220q.conf,gpu-pci-id=0000:02:00.0
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: Loading Plugin0: libnvidia-vgx
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: gpu-pci-id : 0000:02:00.0
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: vgpu_type : quadro
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: Framebuffer: 0x1A000000
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: Virtual Device Id: 0x11B0:0x109D
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: ######## vGPU Manager Information: ########
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: Driver Version: 340.34
Nov 30 20:38:59 xen-01 vgpu-1[5777]: notice: VGX Version: 1.2
Nov 30 20:38:59 xen-01 vgpu-1[5777]: error: vGPU is supported only on VGX capable boards
Nov 30 20:38:59 xen-01 vgpu-1[5777]: error: Initialization: unknown error 1
Nov 30 20:38:59 xen-01 vgpu-1[5777]: error: vmiope_process_configuration: plugin registration error
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail18
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail17
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail16
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail15
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail14
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail13
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail12
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail11
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail10
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail9
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail8
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail7
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail6
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail5
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail4
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail3
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail2
Nov 30 20:38:59 xen-01 vgpu-1[5777]: demu_initialize: fail1: Inappropriate ioctl for device
Nov 30 20:38:59 xen-01 fe: 5777 (/usr/lib64/xen/bin/vgpu --domain=1 --vcpus=4 --gpu=0000:02:00.0 --config=/usr...) exited with code 1


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Milardo on December 01, 2014, 10:20:21 pm
GT650M and GTX660M are based on GK107 which is a Kepler generation chip. You can use the soft-straps in the BIOS to change the device ID, same as on earlier Fermi and Tesla GPUs, but whether the extra features like Gamstream and Shadowplay will become available is questionable. By all means, try it and report back, I don't think anyone has attempted this before.

Hi and thanks for your reply. Could you please post a guide or link that shows how to modify the soft straps in the BIOS to change the device ID, and which programs to use for  that? I'd very much appreciate that, and I'll report back with results of course. Thanks in advance.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 02, 2014, 01:27:19 am
UPDATE: Pulled the trigger for a GTX 470 from the bay. Will mod that to Quadro 5000. My VM host will then have un-gimped GTX470 -> Quadro 5000 and Frankenstein GTX680 -> K5000/K2...and an Intel HD 4000 IGP as an appendix....does anyone run XBMC on a Dom0?

I do (well, Plex Home Theater, but that is just XBMC + Plex plugin + Plex skin), but I use an ATI card for dom0 with the radeon driver. Nvidia have openly said they don't care about supporting dom0 with their binary driver, they know very well it's been broken on newer cards for a long time. My 8800GT works fine with the binary driver, but more recent cards, e.g. GT630 which I wanted to use just crashes the machine when Xorg tries to load in dom0.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 02, 2014, 01:28:11 am
GT650M and GTX660M are based on GK107 which is a Kepler generation chip. You can use the soft-straps in the BIOS to change the device ID, same as on earlier Fermi and Tesla GPUs, but whether the extra features like Gamstream and Shadowplay will become available is questionable. By all means, try it and report back, I don't think anyone has attempted this before.

Hi and thanks for your reply. Could you please post a guide or link that shows how to modify the soft straps in the BIOS to change the device ID, and which programs to use for  that? I'd very much appreciate that, and I'll report back with results of course. Thanks in advance.

The info is on the gpumod wiki on wikia.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Milardo on December 02, 2014, 01:50:29 am
Is this it, does it work with kepler gpu, does it matter on an optimus gpu situation?

http://gpumod.wikia.com/wiki/Modifying_2xx_%E2%80%93_4xx_series_GeForce_into_a_Quadro (http://gpumod.wikia.com/wiki/Modifying_2xx_%E2%80%93_4xx_series_GeForce_into_a_Quadro)

Can I do this on windows 8.1 x64 in the os and do is it just that i am modifying the bios and not flash a new one?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 02, 2014, 03:07:21 am
It won't work on a Kepler, you have to do soldering to modify a Kepler card.
Optimus setup does not work with the Nvidia binary driver, so I'm not sure what you are envisaging achieving.
The OS doesn't matter. You don't need to re-flash the whole BIOS, only modify the straps using nvflash.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Milardo on December 02, 2014, 03:24:53 am
Sorry i dont understand, can i use nvflash to modify the straps, which will change the device id? Since this a mobile gpu, can it be done without a hardware modifying, soldering, etc.? Im using windows 8.1 x64 and i always download the latest nvidia driver which is 344.75 for notebooks. Basically i want to change my device id of gt650m so it gets read by geforce experience, as a gtx660m which is closely related, so i can have gamestream and shadowplay official support, which as of now, i can't use, gamestreaming that is unless i can get geforce experience to let me. Will that webpage tutorial, is it how to modify the straps with nvflash?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on December 02, 2014, 04:10:35 am
It cannot be modified without soldering.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: imanz on December 08, 2014, 05:43:00 am
Anyone that had worked on the 680 let me know if you can help. I am working on the gigabyte 680 -  gv-n680OC-2GD but am having some strange problems...

I have been following the example posted here:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=43392;image (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/?action=dlattach;attach=43392;image) which I believe is also on page 6 of this post

Before starting it seems my original values were slightly different than what I expected:
R0: none
R1: 12.5k~15k
R2: 25k
R3: 5k

So I followed the example and tried the following arrangement:
R0:40k
R1:none
R2:40k
R3:none

When trying to boot I get no video on both the card and onboard video card. I hear the first post beep and about 15 seconds later get one long beep and 5/6 short beeps (asus motherboard). I removed the card and checked all the resistors/connections and noticed that R2 is reading the correct 40k as expected but I am getting 18.5k resistance on the R0 connection. I removed the resistor and replaced it with another one (same 0402 40K SMD resistor) and the value is still around 18k with same issue at boot.

Does anyone have any ideas?




Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: wclami on December 10, 2014, 02:56:16 pm
I converted a Zotac GT640 2GB into a Grid K1. All seems to be recognized as supposed (Grid K1). I am able to use the card in XenServer as Passthhrough, however I am unable to use the vGPU capabilities.

Here´s what I did so far:
- Installed a XenServer 6.2 Hypervisor.
- Upgraded it with SP1 and added the following HotFixes: SP1009 and SP1011
- Installed NVIDIA-vgx-xenserver-6.2-340.57.i386.rpm
- Disabled the "64-bit Memory Mapped I/O" in BIOS and Restarted

I am able to see the virtual GPUs in XenCenter (and I am able to add them to the VMs), however, I cannot boot them since I always get this error in messages log:

Quote
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: vmiop-env: guest_max_gpfn:0x10efff
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: pluginconfig: /usr/share/nvidia/vgx/grid_k120q.conf,gpu-pci-id=0000:01:00.0
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: Loading Plugin0: libnvidia-vgx
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: gpu-pci-id : 0000:01:00.0
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: vgpu_type : quadro
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: Framebuffer: 0x1A000000
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: Virtual Device Id: 0x0FF7:0x109C
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: ######## vGPU Manager Information: ########
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: Driver Version: 340.57
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: notice: VGX Version: 1.3
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: error: vGPU is supported only on VGX capable boards
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: error: Initialization: unknown error 1
Dec 10 12:43:14 xen fe: vgpu-6[12593]: vmiop_log: error: vmiope_process_configuration: plugin registration error

Has anybody been able to successfully virtualize a converted Grid K1 GPU in XenServer?

Some more information:

Quote
[root@xen ~]# lsmod | grep nvidia
nvidia               9522927  8
i2c_core               20294  2 nvidia,i2c_i801

Quote
[root@xen ~]# nvidia-smi
Wed Dec 10 14:53:19 2014       
+------------------------------------------------------+                       
| NVIDIA-SMI 340.57     Driver Version: 340.57         |                       
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GRID K1             On   | 0000:01:00.0     N/A |                  N/A |
| 30%   34C    P8    N/A /  N/A |      8MiB /  2047MiB |     N/A      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Compute processes:                                               GPU Memory |
|  GPU       PID  Process name                                     Usage      |
|=============================================================================|
|    0            Not Supported                                               |
+-----------------------------------------------------------------------------+
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 15, 2014, 01:36:58 pm
So, I modded my Titan Black to a K5200 and now I want to do some 4k gaming. Has anyone tried a 'pro' card with a G-Sync compatible monitor?
TBH, G-Sync isn't the highest of priority for me, just want a good future proofed 4k panel but G-sync working would be a bonus.
Anyone?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ed00 on December 15, 2014, 09:23:26 pm
hi, i am the owner of a quadro k0000, and have read much here and am impressed with this topic.

have u created a wiki of all the card you have successfully modded. that would be really nice.

since i am just starting to learn how to effectively use this card for rendering etc.  i was wondering how to create a tesla type card to help with the calculations required for cad/cam etc.

has anyone been able to do this? any help would be appreciated.

peace,
 
ed
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: lordleto on December 16, 2014, 12:51:16 pm
Hi mosmo, can you point me to what you did exactly to mod your titan black to k5200. esp what bios did you use. thx
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: feeling on December 21, 2014, 02:07:11 pm
The going rate for Quadro 6000 on ebay is under $650.
Note: Quadro 6000 (Fermi), NOT Quadro K6000 (Kepler).

Thank you for your help, so I bought a used 6000 quadro
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ExplicitNuM5 on December 22, 2014, 08:32:44 pm
So, I modded my Titan Black to a K5200 and now I want to do some 4k gaming. Has anyone tried a 'pro' card with a G-Sync compatible monitor?
TBH, G-Sync isn't the highest of priority for me, just want a good future proofed 4k panel but G-sync working would be a bonus.
Anyone?

1) Wait, HOW?! They don't even have the same amount of cores.
2) Guys, is it possible to hardmod a 750 Ti to K620? I am a 14 year old that is currently taking EDT in my high school, and desperately in need for a professional GPU for SW real mode. I could go with any GPU, but then I also do games on Friday nights, so the 750 Ti is a great choice.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on December 22, 2014, 08:55:20 pm
So, I modded my Titan Black to a K5200 and now I want to do some 4k gaming. Has anyone tried a 'pro' card with a G-Sync compatible monitor?
TBH, G-Sync isn't the highest of priority for me, just want a good future proofed 4k panel but G-sync working would be a bonus.
Anyone?

1) Wait, HOW?! They don't even have the same amount of cores.
2) Guys, is it possible to hardmod a 750 Ti to K620? I am a 14 year old that is currently taking EDT in my high school, and desperately in need for a professional GPU for SW real mode. I could go with any GPU, but then I also do games on Friday nights, so the 750 Ti is a great choice.

When I say modded to a K5200, I mean, it's presented to ESXi as a K5200 but it's really a beefed up 780ti with 6GB of memory instead of 3GB.
3dmark scores are similar or slightly better than my previous EVGA 780ti SC.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ExplicitNuM5 on December 22, 2014, 11:24:53 pm
 ::) So it's recognized in VMWare ESIx as a passthrough. You caught me.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ed00 on December 28, 2014, 04:26:54 pm
i am still reading this thread, but a quick q? is can i convert my k4000 to a higher k5000 or k6000 with just a bios change??
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ExplicitNuM5 on January 02, 2015, 06:34:35 pm
I don't think so. Different cores.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ed00 on January 07, 2015, 07:16:28 pm
thank you,

now with a k4000 and i am just learning about ESXi and the idea of using it for maya as a k5200 really sounds interesting, could it work?

xeon 1225 v3 with 16g ecc, any help would be appreciated.

thx, in advance
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Black6spdZ on January 08, 2015, 03:02:39 pm
Just modified my two Geforce 650 TI Boost's to K4000s last night. Also bumped up the clocks, fan, and power level in bios mods. Very nice for budget cards now.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: pavelbonev on January 13, 2015, 09:34:59 pm
Does a hacked NVidia GTX into Quadro card support NVidia GPUDirect? Has anybody tested that?
If anybody has a hacking guide for Evga GTX 770 I can test it with Blackmagic Decklink Quad card for video capture.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: FisHlaBsoMAN on January 24, 2015, 12:21:12 am
Hi! I'm on this forum first. I have problems with VGA passtrougth (win say code 43 error). I have read that it is necessary to turn the card into quadro. My graphics card is Palit 550 TI GF116, here are the pictures:
front (https://www.dropbox.com/s/ubwp3b1a44x0wxj/%23board%20frontDSC02082.JPG?dl=0)   back (https://www.dropbox.com/s/965brfazcyy96ws/%23boardBackDSC02083.JPG?dl=0)
crystal (https://www.dropbox.com/s/rtvrp08sz2y85ki/%23crystalDSC02108.JPG?dl=0)
 chip near connectors (https://www.dropbox.com/s/9w7dir4usk4pp5q/%23connectorsDSC02113.JPG?l=0)   v2 (https://www.dropbox.com/s/pwj2q6d689nscbk/%23connectorsDSC02118.JPG?dl=0)
chip near pci-e, below (https://www.dropbox.com/s/t113k4rp5a6x5a3/%23pci-eBack%20DSC02088.JPG?dl=0)
near pci-e, upside (https://www.dropbox.com/s/pzhf1g2dtxjcvz5/%23pci-eFront2DSC02100.JPG?dl=0)
gpu-z (http://gpuz.techpowerup.com/15/01/04/c7g.png)
I flipped through the topic and found mainly pictures where resistors are located next to the chips and I made a couple of photos about them. Have a chance? Which method of finding the group of resistors? View current ID cards and find the corresponding face value resistors? May be necessary to edit the bios?
Thank you!

UPD1: #202 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg209615/#msg209615)  post, GTS450 from this report - a copy of my GTX550. Only different crystals.
UPD3:My dev id: 0x1244. I need to thinking. I do not understand how to choose the resistors ... I need an algorithm.. GTX550ti - GF116, GTS450 - GF106... this is not good... not working or downgrade?
UPD4: My resistors:
1 - 40k
2 - 24.2k
3 - empy
4 - 45.5k
5 - empty
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: C_Coffie on February 03, 2015, 02:13:22 am
I'm sorry if this has been suggested before but I think this thread should have some kind of wiki created for it. So people don't have to read through the 77 page thread. You could classify stuff by the card type and then have a general page that describes the whole process. Do you guys think this would be valuable? Maybe I'm missing something and this has already been done.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ElektroQuark on February 03, 2015, 08:35:51 am
Great idea!
Who will spend his time doing it?  >:D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: foobarbecue on February 09, 2015, 07:45:32 pm
@C_Coffie, This "idea" has now been posted several times in this thread, just search it for "wiki". Please go to http://gpumod.wikia.com/wiki/Gpumod_Wiki (http://gpumod.wikia.com/wiki/Gpumod_Wiki) or http://aidivn.wikia.com/wiki/NVIDIA_HAcking_Wiki (http://aidivn.wikia.com/wiki/NVIDIA_HAcking_Wiki) and contribute some information.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Domokun on February 27, 2015, 02:03:05 am
Hi everyone,

What is the current state of affairs with VGA pass-through using ESXI/Xen? Is the best performing solution a Nvidia GTX 780 TI converted to a Nvidia Quadro K6000 via hard-mod?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on February 28, 2015, 07:32:09 pm
Hi everyone,

What is the current state of affairs with VGA pass-through using ESXI/Xen? Is the best performing solution a Nvidia GTX 780 TI converted to a Nvidia Quadro K6000 via hard-mod?

I did just that and it performed very well. I now have an EVGA titan black 6GB with Kraken G10 modded to a 5200. Works fine in ESXi 5.5.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Domokun on February 28, 2015, 11:45:11 pm
I did just that and it performed very well. I now have an EVGA titan black 6GB with Kraken G10 modded to a 5200. Works fine in ESXi 5.5.

Thanks for letting me know. Just curious, with the GTX 780 TI being detected as a Quadro K6000, I'm assuming all of the GeForce software features (such as ShadowPlay) are disabled? How was the performance compared to a non-virtualised GTX 780 TI? Also, why did you hard-mod your GTX Titan Black to a Quadro K5200 (and not a Quadro K6000)?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on March 01, 2015, 12:00:11 am
I did just that and it performed very well. I now have an EVGA titan black 6GB with Kraken G10 modded to a 5200. Works fine in ESXi 5.5.

Thanks for letting me know. Just curious, with the GTX 780 TI being detected as a Quadro K6000, I'm assuming all of the GeForce software features (such as ShadowPlay) are disabled? How was the performance compared to a non-virtualised GTX 780 TI? Also, why did you hard-mod your GTX Titan Black to a Quadro K5200 (and not a Quadro K6000)?

780ti about the same mod vs unmod. My black get around 5300 3dmark extreme. I am not sure that there is a difference in performance between 5200 and 6000 since it's a geforce card all the same, just wanted the black for 6gb mem and UHD res.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Domokun on March 01, 2015, 05:13:01 am
I am not sure that there is a difference in performance between 5200 and 6000 since it's a geforce card all the same, just wanted the black for 6gb mem and UHD res.

Thanks for replying (again). I understand, I just thought that the Quadro K6000 would have been the better option (since it has the same core configuration as the GTX 780 TI and GTX Titan Black).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on March 05, 2015, 09:29:48 am
Wow, so Nvidia have come up with the Titan X (12GB) , no doubt something to compete with the new AMD offerings 3xx?
Will buy it and probably try to mod it to Quadro counterpart.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: meehow_g on March 06, 2015, 06:40:17 pm
I've bought ASUS GT640, but unfortunatelly can't find the correct resistors to mod the card into grid K1 for my ESXi lab. Can you please help me with the location of R1 to R4 ? Thanks in advance. Photo attached.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on March 06, 2015, 07:07:20 pm
I've bought ASUS GT640, but unfortunatelly can't find the correct resistors to mod the card into grid K1 for my ESXi lab. Can you please help me with the location of R1 to R4 ? Thanks in advance. Photo attached.

need to see the other side of the card with EPROM.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: meehow_g on March 07, 2015, 09:31:13 am
Thanks for answer!!! Unfortunately atm I have only a photo with cooler attached. Can take more photos on monday.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mihaii on March 09, 2015, 12:07:51 pm
What would be a good card (performance / price / consumption ratio) ?

can the GT 630 be modded? (GF108) ?
Or the Maxwell GTX 750?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 09, 2015, 12:15:53 pm
FYI all - recent QEMU has added patches that prevent the Nvidia driver from detecting it is running in a VM (no-snoop and CPU ID). I am currently running completely unmodified GT630 cards with KVM on my prototype rig. The same patches will probably make it into Xen soon, so that should be working with unmodified cards, too, if it doesn't already.

Doesn't help with ESXi, though, if that's your preference.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mihaii on March 09, 2015, 01:36:48 pm
Good news :)

I need the Quadro for the Nview.
Some time ago, Nvidia decided that the Nview should only be available just on Quadro cards and blocked the installation on Geforce
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mihaii on March 11, 2015, 02:37:46 pm
I purchased an Asus GT 630
Can somebody help localizing the smd that need to be replaced?

I uploaded the hi-res pictures here
http://www.mihaii.ro/quadro/ (http://www.mihaii.ro/quadro/)


Thanks,
Mihai
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: jhm on March 19, 2015, 12:48:24 am
I've been reading through this forum enough to establish that hacking a NVidia Card is beyond my skill set.

I am a photographer working with stills and video. My main motivation for hacking a Geforce to a Quadro would be to enable 10-bit video output. I'd like to do it on a powerful enough card to enable awesome GPU acceleration and a bit of future proofing.  Lots of vram would seem to be useful for 4k video work.

Does anyone know of any commercial services that can mod cards on behalf of clients?  Or even if there is someone out there who has performed a mod successfully and would feel confident in performing another. I was thinking of getting a k6000 out of a reasonably powerful 4-6gb card.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: joe500 on March 29, 2015, 04:06:23 pm
Hello, i moded my GTX 770 now to a K5000 and changed the deveice ID in the bios. Still no luck. I can passthrough the card in esxi no problem, but when I install
the nvidia drivers all the vm won't start anymore. Is there a way to edit the ram size of an original k5000 bios so I can flash it on the moded 770?
If anybody has successfully moded a gtx to a k5000 and was able to use vdga please give me some tips to solve that problem.
(http://abload.de/thumb/k5000c4slv.jpg) (http://abload.de/image.php?img=k5000c4slv.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 29, 2015, 04:35:28 pm
RAM size modifications have been achieved in the past through reverse engineering the RAM init blob part of the BIOS. The info is somewhere in this thread, probably about 2/3 of the way through.

Various people on this thread successfully used the Fermi (4xx) series cards modified to Quadros with ESXi without problems.
I have myself used them on Xen.

Nowdays I'm using KVM which has patches in places to neuter the driver's ability to tell it's running in a VM, so there is no longer any need to modify the cards. Unfortunately, things are not as easy if you have to use closed source software.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: joe500 on March 29, 2015, 05:59:08 pm
thanks for the reply gordan :-+ Maybe I'm better of with just buying a 4gb version and than flash a k5000 original bios on it. That should make the card a "real" K5000 right as they have exactly the same specs except of the dma engine.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on March 29, 2015, 06:04:46 pm
I'm hoping either to mod the titan x or passthrough the new amd 390 series in ESXi. My modded titan black is enuf for the current games atm though.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 29, 2015, 09:51:56 pm
Flashing a K5000 BIOS onto a modified 4GB 680/770 will not provide all of the K5000 features - SPECviewperf scores will still be lower and the ECC capability still won't work (even though it will show up in the control panel.

IMO, KVM without modifying the cards is the way forward.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: proteus7 on March 30, 2015, 01:46:56 am
So this may sound like a crazy question..I need to reverse hack.
Is there any way I can mod (via bios flash or otherwise) a pair of  K6000 into Titan Black (or GTX 780), that I can then SLI for gaming purposes? Apparently the Quadro cards do not have SLI enabled, except in special systems. No, I can't trade, or sell these cards, which would be the obvious solution, but I would like to just use them for gaming.
Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 30, 2015, 06:32:52 am
I didn't think K6000 had SLI connectors.

You could try DifferentSLI modified drivers (you may need to see what they did and modify the driver to include K6000 SLI enablement).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: th14g0 on March 30, 2015, 02:01:50 pm
So this may sound like a crazy question..I need to reverse hack.
Is there any way I can mod (via bios flash or otherwise) a pair of  K6000 into Titan Black (or GTX 780), that I can then SLI for gaming purposes? Apparently the Quadro cards do not have SLI enabled, except in special systems. No, I can't trade, or sell these cards, which would be the obvious solution, but I would like to just use them for gaming.
Thanks!

I need that too.
I have a Quadro K6000 that I want to use to play games. Is there something that I can do to improve performance? Modified driver, bios upgrade ?


English is not my primary language.. sorry about that !


thanks in advance
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on March 30, 2015, 03:53:41 pm
Have you tried using EVGA Precision-X or MSI Afterburner to adjust the clock speeds at runtime? Does that work on Quadros?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: th14g0 on March 30, 2015, 06:01:34 pm
Have you tried using EVGA Precision-X or MSI Afterburner to adjust the clock speeds at runtime? Does that work on Quadros?

No, i did'nt try yet.
If it works, do you know what values should I change?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: proteus7 on April 05, 2015, 08:24:16 pm
Other issue is that Quadro cards apparently can't be SLI'd, unless its a Dell, HP or Lenovo workstation? while  the comparable  non-quadro models can be.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 05, 2015, 08:36:26 pm
I'm not sure Qadros can be SLI-ed regardless of the machine they are in - they have no SLI connectors.
But if it really is dependant on the drivers checking for specific hardware, you might be able to fake the relevant hardware by using a VM and telling QEMU to present specific SMBIOS options that identify it as the machine on which SLI should be enabled by the driver.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: elgonzo on April 05, 2015, 08:57:05 pm
I'm not sure Qadros can be SLI-ed regardless of the machine they are in - they have no SLI connectors.
Some Quadros have SLI connectors, some don't. Rule of thumb: usually low-end / entry- to mid-level Quadros don't have SLI connectors, high(er) end Quadros do...

Other issue is that Quadro cards apparently can't be SLI'd, unless its a Dell, HP or Lenovo workstation? while  the comparable  non-quadro models can be.
A list of workstations enabled for Quadro SLI can be found at the Nvidia website (http://www.nvidia.com/object/quadro_sli_compatible_systems.html) (not sure how often that list is updated, though).
Noteworthy is the very first statement above the list: "Only the systems listed below are Quadro SLI Certified. To maintain Quadro premium quality standards, a system cannot be configured as a Quadro SLI-enabled unless it has gone through and passed NVIDIA testing."
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 05, 2015, 09:12:00 pm
All that means is that those integrators paid Nvidia a big fat fee to certify their workstations. If you can get a full SMBIOS dump from one of those machines, you can probably fire up a KVM VM using QEMU with the relevant SMBIOS payload and it would just work.

Nvidia is well known for this kind of blocking in the drivers - they did similar things to block GeForce cards working in VMs, that was kind of why this thread started.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: elgonzo on April 05, 2015, 09:38:59 pm
All that means is that those integrators paid Nvidia a big fat fee to certify their workstations. If you can get a full SMBIOS dump from one of those machines, you can probably fire up a KVM VM using QEMU with the relevant SMBIOS payload and it would just work.

Nvidia is well known for this kind of blocking in the drivers - they did similar things to block GeForce cards working in VMs, that was kind of why this thread started.
With regard to SLI you are wrong. Nvidia might be an "evil" company (they did ample of things to deserve this label, but you could say the same about probably any other company of sufficient size), but Quadro SLI certification has a serious background. It really is about protecting the brand reputation and thus protecting business opportunities and margins. It's not about earning money through certification fees...

Quadros in SLI configurations will often been used in numbers to power big (stereoscopic) multi-projection walls, CAVEs and similar installations, where targets for both performance as well as visual quality have to be met (performance especially crucial with regard to stereoscopic installations). Such installations cost big money (easily in the 6 digits, for stereoscopic CAVE installations far beyond 1Mio US$), and if something does not work as advertised/promised/demonstrated to the customer, all hell breaks loose...

Manufacturers of such certified workstations are almost always directly or indirectly involved in such installations (you know, big money, reputation...) and, when problems arise and the shit hits the fan, are usually able and willing to not only provide technical support via phone, but often also send technical support personnel.

Allowing such installations to be made out of random components opens up the risk for all sorts of problems with those installations, which for any technical support guy will be nigh impossible to fix in acceptable time due to the random nature of the chosen hardware configuration. How would you avoid such risk? Simple, make sure that random hardware configurations cannot happen... From the perspective of a "little" customer this might be hard to understand, but think of it like this: Big boys play with big toys, and when the toy is making trouble, then big boy gets very angry. Better make big boy not angry, otherwise you will get a bloody nose... :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: jhm on April 05, 2015, 09:54:31 pm
I'm wondering does the recent release of the Quadro M6000 open the door for modding cards such as the GTX  960?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SoNic67 on April 08, 2015, 10:17:06 am
M6000 has the same chipset as GTX Titan X (GM200). Not even close to GTX 960 (GM206)...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on April 20, 2015, 11:23:23 am
Can someone please provide me with a Titan X and Quadro M6000 BIOS ? I want to have a go at modding the X to the 6000 but want to compare the BIOS files first.

thanks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: th14g0 on April 24, 2015, 03:36:07 pm
I would like to exchange my Nvidia Quadro K6000 by a Titan X..
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: MrBee on April 25, 2015, 06:08:48 am
Hey Amigo and Gordon:  you two seem to be the gurus here on GPU mods. I need to change one single bit to fix a problem but I'm stuck.

I bought a used GTX 580 but someone had changed the Device ID from 1080 to 1090.  I just want to change it back to 1080.

From my .rom file, in lines 50 and 60, converted to little endian I get:

FFFF FFFF 0000 0000 7FFF FFFF 8000 0000

My rom is from here:  http://www.techpowerup.com/vgabios/114426/MSI.GTX580.1536.111011.rom (http://www.techpowerup.com/vgabios/114426/MSI.GTX580.1536.111011.rom)

going from
1090 = 0001 0000 1001 0000
to
1080 = 0001 0000 1000 0000

since the digit to be changed is the 5th from the right, it means that only the bit in location 4 needs to be changed as in this template:
-xx4xxxx xxxxxxxx xx3210xx xxxxxxxx

Therefore, I can either make that ONE SINGLE change in the AND-0 like this:

Old Strap:
AND-0:    FF               FF                FF               FF
        1111 1111   1111 1111    1111 1111   1111 1111
OR-0:     00                00               00               00
        0000 0000   0000 0000    0000 0000   0000 0000
New Strap:
AND-0:   EF               FF                 FF               FF
        1110 1111   1111 1111    1111 1111   1111 1111
OR-0:     00               00                00               00
        0000 0000   0000 0000    0000 0000   0000 0000


or, I can make ONE SINGLE change in the OR-0 like this:

Old Strap:
AND-0:    FF               FF                FF               FF
        1111 1111   1111 1111    1111 1111   1111 1111
OR-0:     00                00               00               00
        0000 0000   0000 0000    0000 0000   0000 0000
New Strap:
AND-0:   FF               FF                 FF               FF
        1111 1111   1111 1111    1111 1111   1111 1111
OR-0:     10               00                00               00
        0001 0000   0000 0000    0000 0000   0000 0000




If it's in the AND portion:

nvflash --index=1 --straps 0xEFFFFFFF 0x00000000 0x7FFFFFFF 0x00000000

if it's in the OR portion:

nvflash --index=1 --straps 0xFFFFFFFF 0x10000000 0x7FFFFFFF 0x00000000


Problem is, I've tried both and nvflash says that my straps are out of range.

Any advise?


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: MrBee on April 26, 2015, 02:22:24 pm
Buying a used card off Kijiji isn't a sure bet, that's for sure.  I'll likely stick to new cards in the future and avoid the 10+ hours I've spent trying to get this card back to factory specs. 

But, before I trash this card, since there are no answers to my previous posts, how about this:

Is there any way during the installation of the nvidia driver that I can tell the install software that my card is actually an authentic GTX 580 with device ID 1080 (which is what the card really is)?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: MrBee on April 28, 2015, 12:30:30 am
Disregard previous posts.  Giving up on fixing the card and going with another card.  I can't say that I understand why guys modify cards for small gains with the risk of losing the card.  Some guys must have money to burn.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on April 29, 2015, 01:22:02 pm
I'm in two minds whether to drop a resistor on the EPROM on the Titan X to see whether it's recognised as a M6000. Any thoughts on whether this will work?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on April 29, 2015, 01:29:28 pm
It's worth a shot, if all you need to do is alter the 3rd nibble. It's not like it's a difficult to undo change.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: odie82544 on May 02, 2015, 09:06:15 am
I got lots of information from here, so do some return and share to all.
Here are some hacking information of MSI N640-2GD3_V1 for reference if you plan to do it.

Steps:
1.Modify vBIOS to unlock mode, update the CRC checksum and flash back to card.
2.Modify the R1/R2/R3/R4 values that you want, detail as attached files.

Note:
1.The Grid K1 mode unable to pass through in ESXi 5.5 and 6.0 and also unable to use the vGPU feature to start up VM.
2.The Grid K1 mode can have HDMI output in Windows 8.1
3.The K1/K2000 can be attached to Windows 2012R2 + Hyper-V guest OS.
4.I try to patch the nvflash.exe to by pass the Device and Board ID check for force flashing K1 vBIOS, nothing specially after do it.
   Also force flash to Asus GTX650 vBIOS and cause the card dead then unable to work till un-soldering the flash part and flash by EEPROM
   programmer, so will recommend to modify this card to K2000 and use the original vBIOS.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jofo on May 11, 2015, 10:51:58 pm
Hello everyone,

I have two 480's (Asus) and I need TCC mode for doing GPUDirect

Based on instructions in here (http://www.davidgis.fr/blog/index.php?Xen/p2), here (https://devtalk.nvidia.com/default/topic/489965/cuda-programming-and-performance/gtx480-to-c2050-hack-or-unlocking-tcc-mode-on-geforce/1/) and here (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/).

I was able to flash both of them to either Quadro 6000 or Tesla C2050, they show up in the system as they should, I see bidirectional async engine in CUDA-Z, but I cannot switch those cards into TCC mode by any means.

It looks like this:

http://fs1.directupload.net/images/150507/2jhv4j6d.png (http://fs1.directupload.net/images/150507/2jhv4j6d.png)

http://fs1.directupload.net/images/150507/se5oj88w.png (http://fs1.directupload.net/images/150507/se5oj88w.png)

I use this driver: http://www.nvidia.com/download/driverResults.aspx/84434/en-uk (http://www.nvidia.com/download/driverResults.aspx/84434/en-uk)

PC - i7 4790, Win7 Pro x64, running from Intel integrated GPU (so no monitors attached to the nV cards)

I also tried Quadro 4000 (original) on the very same platform and switching it to TCC mode worked. I tried older drivers (thought there was some kind of protection), but no success. What is the catch? Last time I only applied modified straps on the card, was recognized as Quadro or Tesla, but still TCC does not work.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on May 12, 2015, 03:48:59 pm
Since I am regularly getting ask about using non-modified GeForce cards in VMs, here is an article on the subject of using KVM with an unmodified card:

Virtualized Gaming Part 2: Evolution - Consolidation and Move to KVM (https://altechnative.net/virtually-gaming-part-2-evolution-consolidation-and-move-to-kvm/)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Jofo on May 13, 2015, 11:12:15 am
Thanks to gordan, I managed to flash GTX 580 to Tesla M2090, using this command:

Code: [Select]
nvflash --index=0 --straps 0x7FFFE7FF 0x10000400 0x7FFFFFFF 0x00000000
The trick is that OR1 mask must have it's leftmost bit set to zero, otherwise nvflash complains about straps out of range.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: hidesan on May 22, 2015, 02:06:27 pm
Hi, Gurus!

I have an GTX750Ti (ASUS).  I would like to modify this board to Quadro.  As far as I know, this board is GM107 and able to hack some resistors to modify it Quadro.
I attached JPG file, back side of this board.  Please help somebody to indicate which resistors should I remove.

NVIDIA_DEV.1380 = "NVIDIA GeForce GTX 750 Ti"
NVIDIA_DEV.13BA = "NVIDIA Quadro K2200"
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Sypher on May 30, 2015, 12:57:33 am
How do I go about finding the resistors for the device ID on a Asus GTX 770?

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mrmichael1389 on June 01, 2015, 09:56:17 pm
I'm a good portion of the way through a project. I'm building a XenServer machine for XenDesktop. I have some experience with this and I've even had a chance to do a little testing with a Grid K1 card.

That being said, real grid cards are out of the budget for this project. After coming to this thread, I realized I could probably work something out for a graphics card. I need to use vGPU features in XenDesktop to virtualize and split out a couple of graphics cards to about 12 VMs. That being the case, vGPU is really the only option since I can't put that many graphics cards in one box.

I'm looking at buying a couple of GTX780 6GB cards and modding them, but I'm getting nervous now since I haven't read of anyone actually succeeding in using vGPU. However, there is a guy on Ebay who is selling a different model card he claims was modified into a K2 and utilized in a proof of concept using such features.

Has anyone successfully utilized vGPU features under XenServer on a modded card?

I might even be willing to pay someone a couple hundred dollars if they could mod the cards for me and make them work with vGPU.

I'm comfortable with the idea of doing some soldering. I'm a little more nervous about trying to mod a bios as I've never done anything in that realm, but I'm a very fast learner.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on June 01, 2015, 09:58:53 pm
AFAIK everybody who tried using VGPU style features failed to get it to work.
PCI passthrough works, everything else does not.
But with KVM PCI passthrough works without modding anything, so you might as well use that.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: DarPhyve on June 03, 2015, 04:31:54 pm
If anyone succeeds in modding a Titan X to an M6000 please post as to how exactly you did it.  I'm looking to build a CAD system around this hack.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on June 03, 2015, 04:40:24 pm
If anyone succeeds in modding a Titan X to an M6000 please post as to how exactly you did it.  I'm looking to build a CAD system around this hack.

I was going to attempt this but will try the 980ti as soon as a non-ref card is out. Titan X is far too expensive for me to risk destroying it.  :palm:
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mateuszd on June 14, 2015, 09:05:16 pm
Hi everyone.
I joined the forum after observing the thread for a while as I've come to a moment I need advice.

I've been reading the thread as anonymous for a while as I've always been interested in hacking my KFA2 GTX 670 4GB card into a Quadro K5000 which seems to be possible. I've read about 40 pages and learnt a bit however my technical soldering skills are not good enough to remove a tiny resistor from a card like this.
Anyways, I've been looking at some other people's guides on resistor location and I seem not to be able to find those resistors on my card. It looks like the KFA2 uses a custom PCB layout, which is really unfortunate. I've taken a photo of it and uploaded to Google Drive due to the size of it. The link to the image is here: https://drive.google.com/open?id=0BwqyTioo_0GVUEZKa2dyRTc0UlE&authuser=0.
Would any of the experts mind taking a look at the card photo and let me know if it's a custom modified or reference PCB design? I am looking to hack the card into a Quadro so that I can passthrough it to a VM running on an ESXi 5.5 host so that games can be played on my server.
If anybody who lives in the UK would be happy to do the soldering work for me, I'd be happy to pay them. I don't want to do it myself as I know I will destroy the card. Or maybe someone would want to swap their hacked card for this one? I would consider offers like that as well. Or even if someone is willing to sell their card I might as well buy it. I want to use the power of my home server to run a second gaming box when my cousin visits me in August and I hope someone out there will be willing to help me out.

I hope to hear from someone soon.
Thank you
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex870 on June 21, 2015, 07:18:46 am
It's worth a shot, if all you need to do is alter the 3rd nibble. It's not like it's a difficult to undo change.

Are you positive you're not thinking of the Titan Black to K5200 conversion by mistake?  It would seem to fit your description better:
0x100C -> 0x103C

Titan X is Maxwell, so to convert to an M6000 the ID change would be 3rd and 4th nibbles:
0x17c2 -> 0x17f0

Btw, $10 says it was deliberately designed to not be a single nibble difference.  Plus, each nibble goes in a different direction.

But it would be great to have a 12GB converted card though... (stares off into space)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on July 01, 2015, 09:15:03 am
It's worth a shot, if all you need to do is alter the 3rd nibble. It's not like it's a difficult to undo change.

Are you positive you're not thinking of the Titan Black to K5200 conversion by mistake?  It would seem to fit your description better:
0x100C -> 0x103C

Titan X is Maxwell, so to convert to an M6000 the ID change would be 3rd and 4th nibbles:
0x17c2 -> 0x17f0

Btw, $10 says it was deliberately designed to not be a single nibble difference.  Plus, each nibble goes in a different direction.

But it would be great to have a 12GB converted card though... (stares off into space)


Right, so I have a choice to either convert a Titan X or 980ti (I have both cards) to a M6000. Which might be the easiest of the two? Im willing to have a go at it if someone can PM me with some instructions. I already modified my Titan Black BIOS and added the resisitor to make it a K5200.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: RoNiNk on August 06, 2015, 04:13:23 pm
Hi guys. Recently I converted my 690 in to k5000, now i need to undo it but I dont know the values of original resistors. Does any one know?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: RoNiNk on August 08, 2015, 03:13:37 pm
Guys ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: C.Azrael on August 08, 2015, 04:27:15 pm
Hi guys. Recently I converted my 690 in to k5000, now i need to undo it but I dont know the values of original resistors. Does any one know?
Quote
The GTX 690 has a device id of 0x1188, so to become a Quadro K5000 this has to be changed to 0x11BA

Quote
When pulling high:

5K   = 8
10K = 9
15K = A
20K = B
25K = C
30K = D
35K = E
40K = F

get 5K?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: RoNiNk on August 08, 2015, 10:41:04 pm
So if I put 2 5k resistors it will be recognized as gtx 690? and what about resistor that was removed?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: acmcool on August 12, 2015, 06:07:27 pm
Anybody looking to sell a modified card than do can 4K video?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mosmo on August 12, 2015, 06:21:13 pm
Anybody looking to sell a modified card than do can 4K video?

I converted my titan black to a k5200 also water cooled using x61 and g10 cooler and bracket. Pm to talk price.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: acmcool on August 13, 2015, 02:40:05 am
I have a 750Ti...Can it be modified to Quadro?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: NWittje on August 15, 2015, 04:31:51 pm
Hey,
for modding of the Titan X to an M6000, I could provide a Titan X bios, exact pictures of the back of one card, etc, and would be willed to try this on one as long as I dont have to go through extreme measures (like cooking the PCB or similar ;-)) Anyone like to tinker? Just tell me what you want on information :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Ninj on August 31, 2015, 09:27:15 am
Hi,

I need my nVidia card to:

Or to say it differently: i want a good geforce (ie 970) to have some of the quadro capabilities (to work on photography), but keeping it as good as possible for games.

Is it possible? How to do that easily?

Thank you everyone ;)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: grim_lokason on August 31, 2015, 06:11:39 pm
Hello

I've a 680 that i modded to à grid k2 by removing 2 resistors .

I want to revert the mod but i loose the resistor  |O

do you know if i could use some wire and "classical"  resistors like those : (http://e101.webs.com/Carbon_Film_Resistors.jpg)

I don't really want to solding back cms resistor directly on the pcb ^^'

regards !
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: th14g0 on September 01, 2015, 01:31:28 pm
Can I convert a Quadro K6000 into a geforce? withone? How?

Thank you :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: privateer on September 15, 2015, 06:47:02 pm

hi there,

I would like to run cad and analysis /virtualizations via vmware vdga so that my partner and i can access my server when were onsite etc.

ive got a Hp dl360 g6 with hex zeon x 2 and 32gb ram ssd and 4x  15k sas ...my firepro v7900 is not supported in vmware. so flogging it on ebay  ;D
 ill have to stick the graphics card on top or mod the back plate and heatsink to fit it inside the 1u case  :P

i'm interested in modding a 780ti or titan black into k6000/k5200 as Gordan stated doing.but im uneducated in this type of thing.  ive read all 82 pages of this chat and the GuzTech research page that was rather yielding  , still unsure on how to pull this off...is it the resistor in the same place as the 780 as on his page? (ive probally missed alot being quite dyslexic and forgotten the rest)

Could someone please post a photo of the board with the 18k resistor placement on the 780ti or black? what power rating aswell?. so i can collar a friend to solder it on with the re-flow gun , my hands are a little not quite that steady lol.
with regards to changing the soft straps
 ive read ijsfz's post at: https://devtalk.nvidia.com/default/topic/489965/ (https://devtalk.nvidia.com/default/topic/489965/) and
 http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/ (http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/)

but unfamiliar with hex and most of it  goes over  my head.. is it as easy as it suggests here: http://www.techarp.com/showarticle.aspx?artno=539&pgno=2 (http://www.techarp.com/showarticle.aspx?artno=539&pgno=2)   I'm doubtful  what about changing the firmware to show up as 3g (780ti) or 6gb (titan black) if that is wise to do..

im basically asking for a beginners guide for modding a 780 ti and all the  info needed to fire it up into its Quadro façade
ill be asking around my friends at my local Hackspace in london   about figuring out softstrapping,reflashing the firmware etc. but you guys are obviously the core source of enlightenment .. 

thanks, Josh

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: todda7 on September 26, 2015, 01:08:36 pm
Anyone know how to mod GTX 770 to a Quadro? What transistors and where?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Black6spdZ on October 03, 2015, 12:24:14 pm
has anyone modded a 780 ti classy kingpin with dual eeproms? not sure which one is normal and other ln2 but suppose i can solder to one and find out fairly quickly.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Pitbull on October 07, 2015, 07:15:16 pm
What should be changed to be able Titan X to M6000.(http://[img][img][img][img][img][img][img][img])[/img][/img][/img][/img
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Xors on November 08, 2015, 07:34:47 pm
Greetings. The people who help out. I need to get out of the Tesla C2075 from GTX. For the price agreement. You have to buy the cheapest GTX (second-hand), make Tesla C2075, make photos and screenshots and send me an airmail with the total price. Sorry for my bad English. Thank translate.google  :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: GregS on November 18, 2015, 01:22:24 pm
Hello,

I tried to set my GTX 770 (MSI N770-TF-2G/OC) into a Quadro K5000, I changed my resistors as describe in page 6 (40k, None, 15k, None).
My GTX is now a K2 so I think, I have to change the 15k by a lower (which value ?). The ID is 10DE-11BF (K2) and not 10DE-11BA (K5000).

Anyway, I need just to get the Grid compatibility, so I could stay like this ...

Thanks,
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bluebird on November 21, 2015, 12:21:19 am
Hello,

I tried to set my GTX 770 (MSI N770-TF-2G/OC) into a Quadro K5000, I changed my resistors as describe in page 6 (40k, None, 15k, None).
My GTX is now a K2 so I think, I have to change the 15k by a lower (which value ?). The ID is 10DE-11BF (K2) and not 10DE-11BA (K5000).

Anyway, I need just to get the Grid compatibility, so I could stay like this ...

Thanks,

I have 0 experience in modding the cards, but according to the first page F should be 40K and 15k will give you A. Hope that helps.

Has anyone modified a Titan X yet?

Also are there any websites that sell New, old stock computer hardware? Or do we just have to look for used cards? Thanks a bunch!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: aqxavier on November 24, 2015, 12:53:19 pm
The ID for the Quadro M6000 is 17F0
What would be the necessary configuration in the board for the exchange of ID?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bluebird on November 25, 2015, 05:43:45 pm
The ID for the Quadro M6000 is 17F0
What would be the necessary configuration in the board for the exchange of ID?

I believe it is 17C2. More info from previous posts. Please update us if you are attempting to modify the card! Thank you!

It's worth a shot, if all you need to do is alter the 3rd nibble. It's not like it's a difficult to undo change.


Are you positive you're not thinking of the Titan Black to K5200 conversion by mistake?  It would seem to fit your description better:
0x100C -> 0x103C

Titan X is Maxwell, so to convert to an M6000 the ID change would be 3rd and 4th nibbles:
0x17c2 -> 0x17f0

Btw, $10 says it was deliberately designed to not be a single nibble difference.  Plus, each nibble goes in a different direction.

But it would be great to have a 12GB converted card though... (stares off into space)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: aqxavier on November 25, 2015, 05:51:34 pm
And you can tell me where on the board I change?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Stickmode on December 10, 2015, 05:14:03 am
Hi everyone, this question is for Gordan: I have a GTX690, and I'd like to mod this card to add more ram. In my research I discovered that this card uses the Samsung K4G20325FD-FC03 256MB BGA memory module, the GTX690 has 16 bga modules in total (8 by each GPU), that means 2GB per GPU. I want to replace those modules to this Samsung K4G41325FC-HC03 with 512mb bga module. I checked both and they have the same specs, except the memory density, so I think it'll be fine for compatibility reasons. I have enough experience soldering BGA modules, so it will be easy.The downside is that someone told me that I have to mod the bios to address the new modules size. I know you mod your GTX680 4GB bios to 2GB, what I'll do is in reverse, modding my vbios from 2GB to 4GB. I know the script block that you mentioned in this forum before, and I have checked the vbios from other brands. All of them have the same init memory block, my question is: I have to patch the full block on my GTX690 bios? or just only the five hex keys that changed when you patched the bios?. I'm telling you this, because the other brands bios have more differences, allmost 10 hex keys to change in this block. Thanks in advance!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Bugsy on December 16, 2015, 03:01:21 pm
I have an EVGA GTX 780-ti 3GB card Quadro modded with a toggle switch on the back (at the exit vents) - there is plenty of air movement, toggle switch is small such that the card mounts as normal, and other than the switch, there is nothing different from stock visible externally.

The mod was done as has been described here extensively (18K resistor on the EEPROM pins between SCLK / VCC), with a toggle switch to allow choosing GTX / Quadro as you need it. Flip the switch and you have a (as far as the BIOS reports) Quadro K6000 which will run Quadro drivers and work with various pro CAD applications, flip it back and you have a GTX 780ti (you have to boot after switching between modes, ofcourse).

Using PCI-passthrough in KVM / QEMU the modded Quadro is able to run natively in a Windows VM using the Quadro Drivers.

I no longer need the card and am going to put it up on eBay. For a non-EEVBlog user the added benefit of a cleanly Quadro modded GTX 780ti is probably entirely lost, hence I'm asking here if there would be any interest in this card.

I can post pictures if folks find it of interest.

Cheers,

B.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex870 on December 19, 2015, 09:45:47 am
I just discovered that for some reason, modding the 780Ti to a K6000 does not remove the artificial 1/8 FP64 performance degradation.  I expected FP64 performance to be controlled by the driver, so using a Quadro driver would make it fast.  However, after benchmarking on Cuda-Z and SiSoft Sandra, this clearly does not seem to be true.  In Sandra, there is no difference in FP64 performance between the 780Ti running GeForce drivers and Quadro drivers. 

This also appears to be a problem with the Titan Black to K5200 transformation, which is even more puzzling, since the Black must have firmware support for full speed double precision as it's a supported feature. 

Has anyone confirmed or looked into this? 
-thx!

--- update ---

Just noticed for guztech's original 780 -> K20 mod, he had on the to-do list: "Full double precision floating point support like the Tesla K20(X) and GTX Titan."
So there's probably a identity setting in the firmware that tells the card which of the 3 states to operate in: FP64 full, FP64 degraded or FP64 selectable. 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex870 on December 19, 2015, 10:51:45 am
I think both Quadro and GeForce suffer from FP64 performance capping. Only Tesla has full FP64 capability.
...
TTX will NOT work, since full sized Maxwell does not have FP64 at all (possibly limited by power dissipation), that's why there is no Tesla M80.

Thanks for your reply, I think I found the answer - it's limited in the firmware of the GeForce cards, so only changing the device ID is insufficient to restore it.  Unfortunately I use PCI passthrough, so that makes life more tricky, otherwise the top end gaming cards would be great. 

I read that the Maxwell design prioritized FP32 over FP64.  Since they didn't do a process shrink from Kepler, I guess something had to be given up.  The die was already massive as it was.  Pascal will get a proper shrink from 28nm to 16nm, although memory will be capped at 16GB - I expected they'd go to 24 for scientific compute applications.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: cirthix on December 21, 2015, 07:27:08 am
Can anyone summarize which spi flash pins correspond to which nibbles?  I'd like to find the appropriate resistors for my gtx 980 (10de-13c0) to change to m5000 (10de-13f0). 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ExplicitNuM5 on December 25, 2015, 12:44:48 am
Well, first we need to be able to know whether a mod to the Quadro for Maxwell cards is possible. After all, we never got around modding Maxwell cards. All the cards that are solved in this thread are Kepler.
As for the reply with the M5000, someone needs to physically own the card to determine what caps to replace, and with what.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: marcello.zampolla on January 09, 2016, 05:23:12 pm
is it possible to hack a Titan X into a quadro M6000?
However, I have to totally forget the soft mod?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: petcz on February 01, 2016, 09:16:31 am
Hi, I am working on a project that needs OpenGL quad buffered stereo. There is already some weak support in GeFroce drivers, but as far as I know it is very limited (only fullscreen app on primary display). Could someone please test, whether there is a better support of NVidia shutter glasses on modded GeForce with Windows Quadro drivers? I am thinking about modifying 780 or 970, but before diving in, I'd like to know, whether it would help with the following:
- OpenGL quadbuffer support in window mode
- OpenGL quadbuffer support for non-primary screen
- OpenGL quadbuffer support for multiple screens
- Mosaic support for 6 screens (2x970)
- Force stereoscopic mode

- Is it possible to mod 970 to some quadro counter part?

Thank you
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kengreen on February 02, 2016, 03:41:43 pm
I would be interested in the gtx 780 Ti card from Bugsy or if it is sold, detailed pictures of the modification to Quadro K6000
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: der-coder on February 08, 2016, 12:12:23 pm
Hello everybody,

i have a simple question, did anyone know which size of resistors i need for modding my card ?
Does anyone have an ebay link where i can consume some 15k, 20k and 40k resistors with the correct size ?

greethings

der-coder
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: InfinityMod on February 12, 2016, 08:17:26 pm

I can confirm the mod done by blanka.
https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798 (https://www.eevblog.com/forum/projects/hacking-nvidia-cards-into-their-professional-counterparts/msg210798/#msg210798)
But I pimped it a little bit.

670GTX to K5000 works!

R4 on the front side.
R1, R2, R3 on the bottom side.

K5000 works absolutely stable for me, but has no performance increase in SPECviewperf. I tested with few different Quadro drivers.

Summary
GPU Name         R1 / 0-7 4th byte        R2 / 8-f 4th byte   R3/ 3th (high)   R4 / 3th (low)
GTX 660Ti          20K                            None                       None             25k
GTX 670            None                           10K                        None              25k
tesla k10           none                            40K                         None            25k
Quadro k5000    none                            15k                          40K            none
grid k2              none                            40K                          40K            none

I flashed it (EVGA 670GTX 2GB 915MHz) with the K5000 bios from techpowerup.
"nvflash.exe -4 -5 -6 K5000.rom" had to be used because of different subsystem and board id.

It started with minor pixel errors but booted into win7.
After driver installation and reboot win7 didn't start anymore.
Flashing it back worked without problems.

Hi,
I did some research on my own about the GTX670/660ti vendor layouts because I wanted to have a cheap Grid K2 from ebay.
I want to share with you the things I found out the last two days.
Please be aware that this is only theoretical stuff, so I never tried it out by my own and it's on your own risk if you try it out!
If you want to try it, it would be kind if you reply if it works.

Now the explanation:
1. By comparing the various GTX670/660TI layouts I found out that the Gigabyte 660TI layout seems to be exactly the same layout like the normal original NVIDIA GTX670 layout.
2. I found a high resolution picture of the  Gigabyte 660TI back- and frontside and seperated the important views of  capacitor 1 to 4 (picture 1).
3. By random I saw that fortunately the capacitors have names beneath them (e.g. R137).
4. I seperated the capacitor names as you can see on the right side in picture 1.
5. I also compared the layouts of various vendors and found other vendors with the same layout like the Gigabyte 660TI. I wrote the models ontop each different layout. Please reply whether I made a failure.
6. By searching throught the various vendor layouts I recognized that the Asus 660TI Cards and also the MSI 660Ti Cards have named capacitors.
7. The Asus 660TI has the same layout like the Asus 670. By writing up the names of the capacitors again I found the probably right capacitors you have to modify (have a look at picture 2 and 3).

Here some overview:
NVIDIA GTX670 Layout:
Gigabyte GTX660TI
Zotac GTX660TI AMP!
PointOfView GTX670
Evga GTX670
NVIDIA GTX670

ASUS GTX660TI DirectCU II Layout:
ASUS GTX670 DirectCU II
ASUS GTX660TI DirectCU II

MSI GTX660TI TI Power OC Layout:
MSI GTX660TI TI Power OC

NVIDIA GTX680 Layout:
Gigabyte GTX670
Zotac GTX670
NVIDIA GTX680

I also uploaded a gif to compare the various cards more easy:
http://i.giphy.com/26FPxZopdlv3Vnqog.gif (http://i.giphy.com/26FPxZopdlv3Vnqog.gif)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: SonicAndSmoke on February 14, 2016, 06:12:21 am
Hi :)

After successfully soft-strapping some GeForce 8, 9, 200 & 400 cards to their Quadro counterpart, i'd like to modify my Gigabyte GTX 670 (GTX 680 pcb). Hard-modding is planned for the future (when i have a shiny new card and can afford toying around with Ol' Kepler), now i'm just looking for the K10 softmod (i'm ok with no-vga-passthrough when softmodding only, as it's for educational purposes).
I've read that it's possible just like with 4x0 -> Quadro Mod, but i've failed in finding the location for the soft straps in a Kepler GK104 bios. Are they still located @ 0x58-0x67 in a non-UEFI bios? If yes, is it then correct to assume they're located @ 0x458-0x467 in a UEFI bios?

I also would like to flash a real Quadro 5000 bios on my now-softstrapped GTX 470 and thus need to limit the amount of VRAM. I've found in some posts the offsets 9e00 - 9e30 for Kepler cards, is this also the right place for Fermi cards?

Thanks (and sorry for asking maybe redundant questions)

/edit:

I've found the posting about the part-soft-mod (#739), and still want to do that (as it's easily reversible). So i found a posting about soft-strapping Kepler (#602) , and it looks like my bios is already unlocked so now i'm still looking for the strap location to go from 1189 to 118F.

And for clarification: for hard-modding my Gigabyte GTX 670 WF3 2GB (based on reference 680 pcb) i only need to remove the 4th resistor from the back for Tesla K10, or remove resistor 1 & 3 from the front for GRID K2?

/edit2:

Regarding the soft-straps on Kepler: according to this posting
Quote
GT650M and GTX660M are based on GK107 which is a Kepler generation chip. You can use the soft-straps in the BIOS to change the device ID, same as on earlier Fermi and Tesla GPUs...
the strap area is to be found @ 0x58-0x67. But when looking at this offset, i only find the generic-looking
Code: [Select]
FF FF FF 7F 00 00 00 00 FF FF FF 7F 00 00 00 80 which doesn't look like any bootstrap i've seen in Fermi bioses.
Could anyone point me into the right direction with this?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gordan on February 21, 2016, 02:36:33 pm
Has anybody checked if the modifying the cards removes the limit on the number of simultaneous nvenc encoding sctreams available? GeForce cards are limited to 2 simultaneous H.264 encoding streams, but Quadro/Grid cards are supposed to be able to handle more.

(Note: NVENC only exists on Kepler and Maxwell GPUs, there is no support for it on Fermi and earlier GPUs.)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ptcptc on February 22, 2016, 03:42:53 pm
Hello, i have an EVGA GTX 660Ti FTW Signature .
Please if anyone could guide me what to do and in what i can transform it i will really be thankfull.
I use it in a hackintosh.
Here you can find the data about it, and also mentions that uses the 680 reference PCB:
http://www.ocaholic.ch/modules/smartsection/item.php?itemid=997&page=1 (http://www.ocaholic.ch/modules/smartsection/item.php?itemid=997&page=1)

I can post pictures of the pcb, but before taking the coolers of i need to know if i can transform it to professional.

Thank you in advance
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: xeushant on April 05, 2016, 04:05:01 pm
Guys, tell me please. I am not a professional. I'm stupid layman.
But let's say we want to modify the GTX Titan X in Quadro M6000. All their parameters are absolutely identical. In addition to supporting Quadro FP64. For this option are responsible drivers?
Those cards are unable to modify successfully, such as the GTX690 in Quadro K5000. This is fully consistent with the modified 690 professionals tests K5200? Or, in fact, this card is the card that supports only 690 drivers from K5200?
If the tests modified card matches the original. So I think that many people would be willing to pay well for such a modification.
Personally, I would have been happy to buy a modified M6000.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: C.Azrael on April 15, 2016, 03:03:55 pm
Hi guys, maybe GeForce GTX 970/GeForce GTX 980 could mod to Quadro M4000/Quadro M5000? same core GM204 O0
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: wtopace on April 21, 2016, 07:33:41 pm
Not sure if anyone is still following this topic, but I would like to request some help identifying R1-R4 on this card. The card is an Asus GT640-DCSL-2GD3. I have posted pictures below showing U10 and the surrounding resistors. Please let me know if you need any more information!

Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: stlnstln on May 20, 2016, 09:31:13 am
Not sure if anyone is still following this topic, but I would like to request some help identifying R1-R4 on this card. The card is an Asus GT640-DCSL-2GD3. I have posted pictures below showing U10 and the surrounding resistors. Please let me know if you need any more information!

Thanks!

I have this exact same card and problem. I am also looking for the proper resistors.
I would really appreciate the help getting a K1 into my PowerEdge R710!!
Title: quadro to quadro?
Post by: k1200 on May 28, 2016, 12:48:51 pm
(need SFF form factor)

turns out that K1200 is hobbled to not support vt-d; unofficial nvidia sources say vt-d needs 2000 or higher.

has anyone done K1200 -> K2200?

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: thisisawesome on June 01, 2016, 05:09:32 pm
Hi all. This is a really great topic. I recently bought a 970 but it's performance in CAD programs is abysmal. Is it possible to turn the 970 into a pro card?

If not, what are some high-end consumer cards that can be converted?

Thank you :-)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kazimnaim on June 03, 2016, 02:20:08 pm
Hello

Is there a real working mod for Titan X. I got 4 Titan X and would like to get these into ESXI

Currently it is detected as TitanX and i can install the drivers as well in VM.. windows shows error code 43

Anyone ?

Regards

Kazim
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: phucpd on June 04, 2016, 08:43:38 am
Hi,
Has anybody checked if the modifying the cards removes the limit on the number of simultaneous nvenc encoding sctreams available? GeForce cards are limited to 2 simultaneous H.264 encoding streams, but Quadro/Grid cards are supposed to be able to handle more.

(Note: NVENC only exists on Kepler and Maxwell GPUs, there is no support for it on Fermi and earlier GPUs.)

I aslo wonder the same thing, willing to give a 980 to be modified to see if they can handle more than 2 sessions for nvenc encoding. If you are interested pls contact me. Thank you very much
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: smanet on June 08, 2016, 06:24:59 pm
Hi all,

Recently I've just bought a Asus GT640-2GD3 thinking that the PCB and resistors placement should be the same as 1GD3 but apparently it's not. I've tried to locate the R1 - R4 eg R543 resistor but I cannot find it on the board. Could you help me out here please to identify the resistors to change this to Grid K1? Thanks a million in advance. I've attached the images as well :) Do kindly let me know if it's not sufficient :)

https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg362703/#msg362703 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg362703/#msg362703)

I was wondering if anybody was able to mod a GT640-2GD3, I have actually did the same mistake, I have bought a used card hoping to modify it to K1, but I can't find anybody that was successful with this card.
Could you please let me know? I can even take off the the heat sink if that could help.
Thank you!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Godtakeit on June 23, 2016, 10:12:14 am
I have a Titan X extreme edition and would like to know if anyone would want to try to explore whether we can convert it into the M6000.

Anything, picture board layout, bios, I can provide.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Dikkiedik on July 01, 2016, 11:52:03 am
Hi all,

I am also curious how to mod a GTX Titan X to a M6000.

Some info about it is highly appreciated!
Thanks...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Bobthecooldad on August 08, 2016, 10:50:59 pm
i do appologise to reply to an old thread.
Was doing some research and instead of converting my GTX650 (1GB) to a k2 what is the wrong core, would it be possible to convert it to a quadro K600 as it has the same specs as the GTX 650.
Wondering what the values of the resistors would have to be and what position, also bit confused if i need to reflash the bios with nvflash or if i need to edit the hex or if i need to use a ttl programmer to rewrite the bios (can do all 3 but would rather not do the last one)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nhp12345 on August 09, 2016, 07:23:40 am
wow, comeback to this thread after 3 years makes me feel so nostalgic!  O0
I'm going to do a hardmoding with my GTX 750Ti (Quadro K2200 counterpart). Hopefully all the electrical engineer lessons and stuffs gained through the last 3 years could help me understand "this world" a bit more!   :-/O But before touching it, there are a couple of "million" questions that I wish to be enlighten  :box:
Thanks for your help!      ;D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bufu1O1 on August 15, 2016, 08:50:12 pm
wow, comeback to this thread after 3 years makes me feel so nostalgic!  O0
I'm going to do a hardmoding with my GTX 750Ti (Quadro K2200 counterpart). Hopefully all the electrical engineer lessons and stuffs gained through the last 3 years could help me understand "this world" a bit more!   :-/O But before touching it, there are a couple of "million" questions that I wish to be enlighten  :box:
  • Can anyone give me a full instruction (or short hints) on how to track down these strap registers?
  • Did anyone here successfully mod the Maxwell generation to their quadro counterpart?
  • Can anyone provide me the high res picture of the quadro K2200 pcb?
Thanks for your help!      ;D

I'll send you the picture in 2 days tops with the quadro K2200 pcb . I have a video card Asus GTX750Ti and I want to mod it to make a Quadro K2200 so be able to GPU Passthrought on my ESXi 5.5 server. without that mod, my VM Windows 7 not stop showing error 43.

My pc specs: ESXi 5.5 u2 on Core i5 4690, 8GB ram, ASRock Z97 Extreme6 with dual NIC support(onboard intel and realtek both gigabit) with Asus GTX750Ti https://www.asus.com/Graphics-Cards/GTX750TIOC2GD5/ (https://www.asus.com/Graphics-Cards/GTX750TIOC2GD5/)

LE: Pictures suck, i told the guy who sell this video card to make a better picture with the upper-right corner where the screw seems to have attached something, that's where resistors seems to be sticked on pcb; I'll post that picture when i get it. I'll post a picture soon with my gtx750ti also

Later later Edit: I uploaded more pictures..still the pictures are not good. I will get to a client who has this card in his workstation and i'll make some good quality pictures.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: nhp12345 on August 29, 2016, 10:12:03 am
I would also like to post a BIG THANKS to everyone that has donated so far, we are at $300 with $700 remaining at the time of this post.

I plan to video the modification of the GTX690 with before and after benchmarks which will be posted on YouTube. I will also record the process of finding the hardware straps for the other GPU through deductive reasoning and simple testing that is relatively safe to the hardware. So if you want to see this, throw a little into the pool so I can get a card I can safely do this on.

Once we have all the information all figured out I will trawl through this thread and compile everything into a single post making it easy to reference.

Hi gnif, have you made this "tutorial" already? I couldn't find it anywhere!  :-//
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Beej on October 05, 2016, 05:17:18 pm
I'm going to do a hardmoding with my GTX 750Ti (Quadro K2200 counterpart).

I would LUV this!  :-+
I have Asus STRIX-GTX750TI-OC-2GD5 https://www.asus.com/us/Graphics-Cards/STRIXGTX750TIOC2GD5/ (https://www.asus.com/us/Graphics-Cards/STRIXGTX750TIOC2GD5/) (hopefully very similar to yours)

also happily running ESXi (v6u2)...currently on a cheap and quiet! Radeon 7570
FYI for anyone looking, ESXi vtx-d compatible $30-$40 OEM 2GB AMD 7570's are plentiful on eBay, especially Dell's (DVI, DP) http://www.ebay.com/sch/i.html?_nkw=ATI+RADEON+HD+7570 (http://www.ebay.com/sch/i.html?_nkw=ATI+RADEON+HD+7570)... i scored a nice compact HP model (695635-001) w/all 3 digital ports (DP, HDMI, DVI) for $40
my ESXi blog post with some good info nuggets - http://www.beejblog.com/2016/06/esxi-for-winmac-xamarin-ios-dev-nirvana.html (http://www.beejblog.com/2016/06/esxi-for-winmac-xamarin-ios-dev-nirvana.html)

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: ikosp on October 16, 2016, 05:55:53 pm
Hello, please help me identify resistor.
I have MSI GeForce GTX 650 Ti Power Edition 1 GB https://www.techpowerup.com/gpudb/b333/msi-gtx-650-ti-power-edition-oc  (https://www.techpowerup.com/gpudb/b333/msi-gtx-650-ti-power-edition-oc)
Photo here
http://pctuning.tyden.cz/ilustrace3/Sulc/gtx650/foto/bezchladice_velky.jpg (http://pctuning.tyden.cz/ilustrace3/Sulc/gtx650/foto/bezchladice_velky.jpg)
http://pctuning.tyden.cz/ilustrace3/Sulc/gtx650/foto/zezadu_velky.jpg (http://pctuning.tyden.cz/ilustrace3/Sulc/gtx650/foto/zezadu_velky.jpg)

Thanks for reply  ;)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Byteman on October 25, 2016, 07:50:29 pm
I have EVGA 670GTX 4GB. I need quad buffer stereoscopy to use one ZSpace VR monitor. It is announced to work with Quadro based cards, so I need to modify my Geforce:

I guess I understand the hardware mod part soldering and removing some resistors. I even bought my resistors, ready to turn and burn the baby. However I've seen users talking about loading firmwares, modifying things in hex editors... Now I'm confused and have to feel confident about each step of this mod:

I wonder if loading some quadro firmware, bios etc. is necessary to achieve this mod? It would be wise if some genius wrote the entire operation step by step. At least keypoints.

It may be disappointing to solder everything and afterwards learn that some software hack is necessary.

I also appreciate an advice about converting to K5000 or K10 for my stereoscopy needs. K5000 seems to be the card of choice but K10 seems to have one less resistor modification which might be preferable if all other features are the same.


Thanks in advance.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Gustavxerxes on October 29, 2016, 04:24:32 pm
wow, comeback to this thread after 3 years makes me feel so nostalgic!  O0
I'm going to do a hardmoding with my GTX 750Ti (Quadro K2200 counterpart). Hopefully all the electrical engineer lessons and stuffs gained through the last 3 years could help me understand "this world" a bit more!   :-/O But before touching it, there are a couple of "million" questions that I wish to be enlighten  :box:
  • Can anyone give me a full instruction (or short hints) on how to track down these strap registers?
  • Did anyone here successfully mod the Maxwell generation to their quadro counterpart?
  • Can anyone provide me the high res picture of the quadro K2200 pcb?
Thanks for your help!      ;D

I'll send you the picture in 2 days tops with the quadro K2200 pcb . I have a video card Asus GTX750Ti and I want to mod it to make a Quadro K2200 so be able to GPU Passthrought on my ESXi 5.5 server. without that mod, my VM Windows 7 not stop showing error 43.

My pc specs: ESXi 5.5 u2 on Core i5 4690, 8GB ram, ASRock Z97 Extreme6 with dual NIC support(onboard intel and realtek both gigabit) with Asus GTX750Ti https://www.asus.com/Graphics-Cards/GTX750TIOC2GD5/ (https://www.asus.com/Graphics-Cards/GTX750TIOC2GD5/)

LE: Pictures suck, i told the guy who sell this video card to make a better picture with the upper-right corner where the screw seems to have attached something, that's where resistors seems to be sticked on pcb; I'll post that picture when i get it. I'll post a picture soon with my gtx750ti also

Later later Edit: I uploaded more pictures..still the pictures are not good. I will get to a client who has this card in his workstation and i'll make some good quality pictures.


I also have a gtx 750 ti card but with 4gb of ram. I desoldered the nor EEPROM chip to reverse engineer the layout. Check the attached picture for what i found. My guess was that the resistors connected to pin 2 and 5 would be the strap resistors, however changing those had no effect on pci device id, only made it harder for ubuntu to boot with some values. Can anyone else shine some light on this ?


Edit:

I did some more testing, regardless of values i cannot get the last 2 nibbles of device id to change. The 750TI is has id 1380 and k2200 has 13ba, this is very similiar to the kepler based GTX680 (id 1180) and K5000 (id 11ba). My initial guess was that since we dont have to change the 2 first nibbles the mod should be the same as for the GTX680. Turns out that's probably not the case, since the card doesnt seem to boot with that mod  :-\

My card is different in layout from the reference design, but the schematics should be the same. I also found some pictures of the reference 750TI and K2200 layout, and it seems that they both have resistors in the same place, which would not be the case if nvidia used the same system for the strap resistors with maxwell as they did on kepler, since the last nibble should be changed from a pull-down to a pull-up resistor i.e different footprint locations should be populated if they did.

Does anyone have a k2200 and a multimeter to meassure the strap resistors ?  I just need measurements from the relevant eeprom pins to gnd and vcc. The schematics in the attached picture is for my 4gb 750Ti
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on October 30, 2016, 03:17:57 pm
Hi to all,

i am new here. I read this thread from beginn to end and i have 2 questions about
GTX690. The member "gnif" is a genie (thx for your efforts) :) but after burn his card he dont share any
new picture with dual k5000 cpu´s.

My quetions:

1. Is dual K5000 possible?
2. Must i change the firmware or any hacks?

PS: I attached 2 pictures is this correct resistors for the GTX690

Sorry for my bad english
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: monkers on November 02, 2016, 02:58:21 pm
Hey Guys,

Has anyone had any luck getting the GTX Titan X to a M6000. Im setting up a 3D studio with a few guys we already have the bulk of our cpu grunt set up.

I would really like to run 4 M6000 cards with vGPU for the team. This hack would save me tonnes of cashola buy consolidating those resources. Would be happy to pass some of those saving onto the genius who cracks this egg.

we have enough background to follow some instructions to test on our cards if anyone has ideas.

Cheers.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: timofonic on November 29, 2016, 07:13:36 pm
What about a laptop with Intel Core i7 5700HQ + Nvidia GeForce GTX960M over Optimus? Are there some possibility?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Garincho on December 17, 2016, 05:15:34 pm
Hello, i have an Palit GT640. How to modify it to GRID K1?
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: mooves on January 13, 2017, 12:29:24 pm

Hi,
I did some research on my own about the GTX670/660ti vendor layouts because I wanted to have a cheap Grid K2 from ebay.
I want to share with you the things I found out the last two days.
Please be aware that this is only theoretical stuff, so I never tried it out by my own and it's on your own risk if you try it out!
If you want to try it, it would be kind if you reply if it works.

Now the explanation:
1. By comparing the various GTX670/660TI layouts I found out that the Gigabyte 660TI layout seems to be exactly the same layout like the normal original NVIDIA GTX670 layout.
2. I found a high resolution picture of the  Gigabyte 660TI back- and frontside and seperated the important views of  capacitor 1 to 4 (picture 1).
3. By random I saw that fortunately the capacitors have names beneath them (e.g. R137).
4. I seperated the capacitor names as you can see on the right side in picture 1.
5. I also compared the layouts of various vendors and found other vendors with the same layout like the Gigabyte 660TI. I wrote the models ontop each different layout. Please reply whether I made a failure.
6. By searching throught the various vendor layouts I recognized that the Asus 660TI Cards and also the MSI 660Ti Cards have named capacitors.
7. The Asus 660TI has the same layout like the Asus 670. By writing up the names of the capacitors again I found the probably right capacitors you have to modify (have a look at picture 2 and 3).

Here some overview:
NVIDIA GTX670 Layout:
Gigabyte GTX660TI
Zotac GTX660TI AMP!
PointOfView GTX670
Evga GTX670
NVIDIA GTX670

ASUS GTX660TI DirectCU II Layout:
ASUS GTX670 DirectCU II
ASUS GTX660TI DirectCU II

MSI GTX660TI TI Power OC Layout:
MSI GTX660TI TI Power OC

NVIDIA GTX680 Layout:
Gigabyte GTX670
Zotac GTX670
NVIDIA GTX680

I also uploaded a gif to compare the various cards more easy:
http://i.giphy.com/26FPxZopdlv3Vnqog.gif (http://i.giphy.com/26FPxZopdlv3Vnqog.gif)

Hi All,

Firstly I appreciate that this is a 4 year old forum but hope that someone can help.

I have an Asus GTX680-DC2-4GD5 DirectCUII Card which I have modded. I checked about 10+ times to make sure mine matched the Asus_Layout.jpg image posted. My first test was to get it to Tesla K10. I removed R4 as per Asus_Layout.jpg image and device ID went from 1180 to 11B0. My understanding is that removing R4 (R137) the Device ID should have changed the last (4th) byte to F. I have checked and there was no resistor in location R3 (R626) and certain I didn't remove that one too.

Have I misread the correlation between the table below and Asus_Layout.jpg?
I understood this to be: Resistor 0 is R1, Resistor 1 is R2, Resistor 2 is R3 and Resistor 3 is R4?

GPU Name   Resistor 0 / 3th byte   Resistor 1 / 3th byte   Resistor 2 / 8-f 4th byte   Resistor 3 / 0-7 4th byte
tesla k10   none   25k   40k   none
grid k2   40k   none   40k   none

Any help is much appreciated.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on January 13, 2017, 01:09:56 pm
Hi All,

I stopped following this thread quite some time ago, my instructions were provided to help others identify how to locate and modify the other cards. For those that are new members/single posters that are just asking 'how'... my advice is:


If you understand all this and have the guts to experiment, here is how (today after learning much in this industry) I would go about testing the unknown resistors on other cards.

Needed Tools:

Method

Eventually you may need to start removing resistors to test the other pads, the process is the same, just carefully remove the resistor first and then measure it and write down what it's value was.

Now if all this is too complicated for you and you don't have the time I am sorry there is little more I can do, unless people are willing to donate cards to reverse engineer and hack on I can not offer any additional help. If there is genuine interest in this I would be inclined to actually post a video of this entire process, but again this would require some sacrificial/donor hardware.

PS: Donor hardware does not have to be working properly, the only requirement is that the PC posts on it! If windows wont work with it, etc... it doesn't matter. The adjustment targets the PCI ID only, the card doesn't need to actually function properly to perform this work.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: protator on January 23, 2017, 07:53:15 pm
Is there a reason still no one has tried to convert a 970 into a M4000 ?
Or a 960 into a Tesla M4 ?

I just blew my budget on a 2687WV4 and 128gigs so in order to complete my new WS I'll have to canibalize my old gaming rig, which so happens to have three 970s in it.
I've read somewhere that it's possible to SLI Quadros even without certification.
Three Franken-Quadros and a couple ebay-960s turned M4 could turn this into a really sweet machine.
+++make SolidWorks fly me wants+++
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: protator on January 26, 2017, 05:36:22 pm
Hmmm, threat seems dead. Too bad.
Guess I'll have to go ebay hunting for a few sacrifices and try this on my own.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: protator on January 27, 2017, 09:36:30 am
Does anyone here know where I can find a bios file for a M4000? Or the M4.
Couldn't find it in the Techpowerup database, unfortunately. 
Only Keppler cards list there.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on February 01, 2017, 03:52:33 am
Hmmm, threat seems dead. Too bad.
Guess I'll have to go ebay hunting for a few sacrifices and try this on my own.

Sorry mate, it mostly is. The biggest issue is, that nobody has to my knowledge tried this with the newer maxwell or pastel cards, either new to cost or the fact that Maxwell introduced signed bioses, etc. I bet that altering the card's behavior is likely much more involved now.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: whiskthecat on February 07, 2017, 04:09:13 pm
Someone had asked about converting 780ti dual bios EVGA classified. I can confirm that the 18K resistor from Vcc to SCLK on one of the 2 EEPROMS works as expected and you can even use the selector switch to change between geforce and quadro.
Title: Asus GT640-DCSL-2GD3
Post by: fixator on February 11, 2017, 07:23:40 am
Not sure if anyone is still following this topic, but I would like to request some help identifying R1-R4 on this card. The card is an Asus GT640-DCSL-2GD3. I have posted pictures below showing U10 and the surrounding resistors. Please let me know if you need any more information!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: variance on February 11, 2017, 08:45:30 am
Hi everyone.. I have a 04G-P4-2647-KR (EVGA GT640 4GB) trying to convert to a Grid K1.
I think I've found the straps on the front of the board near the bios.

Could someone confirm if this looks right.. or confirm that these are the correct resistors? 
According to the table in one of the OPs. The GT640 should have 25K at R1 and 10K at R3.

I think I've identified R1 and R2 but have two possibilities for R3 and R4.
either R3 and R4 are after skipping one resistor and directly above R1/R2 as both those test at 10k.
or R3/R4 are across and down to the right as that's the only other one that tests at 10K.

Can I get confirmation as to which one is more likely/logical?

(http://i.imgur.com/HfbybX7.jpg)

If I've read everything correct. In order to get the Grid K1 ID on a GT640
 #1 I need to remove R1 resistor.
 #2 Solder 40k SMD resistor to R2 spot
 #3 Remove R3 10k resistor, Solder 15k Resistor to that spot.

Could I get confirmation on that methoology and also a recommendation on the SMD resistors to get.
like tolerance spec or brand?

High-res pic of entire board here:
http://imgur.com/a/khrKt (http://imgur.com/a/khrKt)



 



Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on February 12, 2017, 05:34:16 am
Variance, the circuit for each strap is simple, it's either a pull up or pull down for each nibble.

Let me make this clear as many people have missed this, there are two possible resistors for each nibble, one pulls up, one pulls down, only one from factory will be populated, the other unpopulated.

1) Use ohms on you meter to figure out which pads are ground, take a photo and note them all (I just put a colored dot on the photo)
2) Use ohms on your meter between the VCC pin of the EEPROM and the pads to figure out which are VCC and note them all (again, just a different color dot).
3) Now you need to identify which positions are common for pull up/down, so again on ohms, measure between the pads that are still unknown looking for two that are connected.

At this point you will have a good idea of which resistors are worth looking at. To discover which is which, since the nibble is changed every 5K, solder a 10K resistor over the already existing 10K resistor to test, this should change one nibble as it will drop the resistance to 5K. If it doesn't work, its not the right resistor.

Once you have identified the resistor for each nibble, and know which set of pads are for the opposite (pull up/down), you can then figure out what needs changing. Some resistors may need swapping with different values, depends on your target ID. Others may need removing and populating the other set of pads for that nibble to pull it in the opposite direction.

From factory none of these will be floating, you should not have more or less resistors on the PCB after you have done your mod, if you have, you have done it wrong.

Leaving a resistor off will cause the input to float, and the nibble ID will be undefined, it could change from boot to boot causing you odd problems.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: variance on February 16, 2017, 05:55:52 am
Variance, the circuit for each strap is simple, it's either a pull up or pull down for each nibble.

Let me make this clear as many people have missed this, there are two possible resistors for each nibble, one pulls up, one pulls down, only one from factory will be populated, the other unpopulated.
First of all, Thank you for your patience and willingness to explain in detail. (Incidentally Is there a sticky somewhere I'm missing for a guide on terminology like "nibble" or "strap"?)
Secondly,
From the first few dozen posts scattered. I've seen that there are 4 spots that are referred to as
R1, R2, R3, R4. It's frequently indicated that only two of these 4 are populated.
Am I to infer that R1, R2 would be pull up, or pull down on the value depending on the resistor and that R1/2 are the common pads for one nibble and R3/4 are the common pads for the other?
Looking for clarification on this point.
I hope to create a better guide/post with pictures after I successfully complete the mod a few times.

1) Use ohms on you meter to figure out which pads are ground, take a photo and note them all (I just put a colored dot on the photo)
2) Use ohms on your meter between the VCC pin of the EEPROM and the pads to figure out which are VCC and note them all (again, just a different color dot).
3) Now you need to identify which positions are common for pull up/down, so again on ohms, measure between the pads that are still unknown looking for two that are connected.

Could you explain the methodology or point to resources on this topic? So far I've been just placing my multimeter in OHMs mode
and placing the probes at either end of the resistor. I have some assumptions on the steps but I'm not sure if they'd be correct.

1. Identifying ground/vcc: Would I be correct in connecting my black test probe to the ground lead on the PCI-E slot and the red probe to either end of the resistor until I get the known value and then assuming that end of the resistor is the VCC line and the other one is the ground?

2. VCC pin on the EEPROM.. would this be pin 3? not entirely sure what the protocol for doing this is either.

and on another topic... what's the newegg or amazon equivalent people here use to order components like smd resistors?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on February 16, 2017, 06:31:29 am
You're welcome :). No sticky that I am aware of, a strap is a hardware configuration input that is used to perform very very early setup, before the chip even starts to load from the EEPROM. In this instance tells the GPU what device it should be. I have a suspicion that enabling the extra Quadro features is just another strap that has not been discovered yet, but I am not willing to probe this card more until I replace it with something new (not too long now).

Quote
R1, R2, R3, R4. It's frequently indicated that only two of these 4 are populated.

You are correct here, just tried to be extremely plain and simple in my information as some people have tried adding the extra resistors without first removing it's opposite, forming a resistor divider and not seeing the truth table in the first post I made hold true.

Quote
So far I've been just placing my multimeter in OHMs mode and placing the probes at either end of the resistor. I have some assumptions on the steps but I'm not sure if they'd be correct.

Perfect, that's what you want, the reason I stated this is because many novice or general 3.3V-5V engineers would just without thinking default to using the meter on diode test to buzz out the circuit, but since the GPU runs at barely over a volt, the diode test on most DMMs would damage the GPU as you probe around. The straps seem to be 3.3V tolerant as that is what the EEPROM runs at, but touch a trace that isn't for the EEPROM and you might kill the GPU.

Quote
1. Identifying ground/vcc: Would I be correct in connecting my black test probe to the ground lead on the PCI-E slot and the red probe to either end of the resistor until I get the known value and then assuming that end of the resistor is the VCC line and the other one is the ground?

Yes, but make sure the negative probe is on the chassis/ground, so any induced voltage doesn't damage anything. Find the ground plane first and then test across the resistors from the chassis/ground point, to the resistors and find the common ground pads. When looking for VCC, do the same, positive on the known positive point, again so as to not risk reverse polarity on the parts.

 
Quote
2. VCC pin on the EEPROM.. would this be pin 3? not entirely sure what the protocol for doing this is either.

Not sure, you need to lookup the part number (google it) and find it's datasheet, it's likely a jellybean SPI flash chip, I do not have enough experience though to confirm if the pin out on these parts is all the same across all brands (seems to be from what I have seen, I think its part of a JEDEC standard).

Quote
and on another topic... what's the newegg or amazon equivalent people here use to order components like smd resistors?

I used DigiKey, but for the purposes of testing I used some kynar wire (aka, wirewrap) so I wasn't constantly soldering on the PCB and swapped out 1/4W 1% cheap resistors till I found the pattern and the values to use. After this I ordered the exact values I needed.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mttg on February 21, 2017, 08:45:43 am
Hi All,

It is possible to make a GRID K1 from GT640-1GD5-L?

mTTg
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mttg on February 24, 2017, 04:20:48 pm
Nobody a idea?  :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on February 27, 2017, 02:57:23 am
Read the thread through, figure it out, all the information is there.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mitac on February 28, 2017, 07:01:23 pm
Hello
I have a GeForce GTX 980 4GD5 OCV1. Is it possible to modify Isa larger quantities streams NVENC. Currently, card transcodes me only 2 channels. Unfortunately I never found the instructions to change resistors.

Regards
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on February 28, 2017, 09:53:04 pm
Quote
I stopped following this thread quite some time ago, my instructions were provided to help others identify how to locate and modify the other cards. For those that are new members/single posters that are just asking 'how'... my advice is:

Read this thread from the beginning, we discovered some dead giveaways (SPI flash pinout) on how to identify which resistor contributes to which bits in the ID on this series of card.
Simply removing a value is not a great idea, the input will "float" and the card can and will randomly change it's ID each boot, you must tie the input high or low with the correct resistor value for reliable operation. For those who have it working without doing so is just lucky, for most it wont, and for the GTX690, I can say for certain it does cause a problem.
If your card has not been documented here already and you don't understand the terminology, or do not know what a resistor is, what it means to 'tie high or low' or 'float', or how damaging a multimeter on diode test is to the GPU you should avoid the attempt as the chances of destroying your card are very high.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Duke711 on March 01, 2017, 05:11:07 pm
sorry for my bad englisch. I hope you understand me. I would like to modding GTX Titan 6GB to a Quadro 6000. I should to install a 18k resistor, by the following instruction:

Quote
On a separate note, I just learned that GTX780Ti has device ID 0x100A. K6000 is 0x103A. We only need to change the 3rd nibble (via oguz286's awesome mod).
His mod is to use a 33K resistor to jack up the 3rd nibble from 0 to 2. On my Titan using an 18K resistor instead boosts the ID to 3. So to make a 780Ti to a K6000,
simply apply an 18K resistor between VCC and SCLK and voila, job done. For extra points, solder a couple of wires between those pins, solder an 18K resistor on one of them,
and a switch to connect them. Break the switch out somewhere accessible (extra extra points for making the switch easily and neatly accessible from the back of the card without
obstructing the airflow too badly). Now you can switch betwee a 780Ti and a K6000 at a flip of a single switch.

I have not quite understood where I have to place the 18k resistor. Could someone explaining me on the basis of the following graphic, please?

http://vps1931.directvps.nl/GTX780-1.jpg (http://vps1931.directvps.nl/GTX780-1.jpg)

At 0, 0.3, on the left of 25k, right of 45k, or a resistor must be to replace?

Thank you
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 01, 2017, 05:13:20 pm
Quote
I have not quite understood where I have to place the 18k resistor. Could someone explaining me on the basis of the following graphic, please?

Quote
I stopped following this thread quite some time ago, my instructions were provided to help others identify how to locate and modify the other cards. For those that are new members/single posters that are just asking 'how'... my advice is:

Read this thread from the beginning, we discovered some dead giveaways (SPI flash pinout) on how to identify which resistor contributes to which bits in the ID on this series of card.
Simply removing a value is not a great idea, the input will "float" and the card can and will randomly change it's ID each boot, you must tie the input high or low with the correct resistor value for reliable operation. For those who have it working without doing so is just lucky, for most it wont, and for the GTX690, I can say for certain it does cause a problem.
If your card has not been documented here already and you don't understand the terminology, or do not know what a resistor is, what it means to 'tie high or low' or 'float', or how damaging a multimeter on diode test is to the GPU you should avoid the attempt as the chances of destroying your card are very high.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: variance on March 18, 2017, 07:44:59 pm
ISA larger quantie stream NVENC?
If the # of streams is limited by driver and would work with a Quadro or Tesla. than maybe.
The professional cards that share common core (GM204) with your GPU are the:  Quadro M4000/M5000, Tesla M6, Tesla M60
but from what I've gathered reading the entire thread and preparing to mod my keplers. (2 GT640s and 1 GTX690).

1. I don't believe anyone has attempted (That I'm aware of) mod a Maxwell GPU in this manner.
2. The Leg work hasn't been done/documented to identify whether or hardware strap ID is dealt with identically to the kepler
    nor has anyone done the leg work to identify what the hardware IDs and what the resistor values are between the GTX, Quadro and Teslas
    for maxwell.


Hello
I have a GeForce GTX 980 4GD5 OCV1. Is it possible to modify Isa larger quantities streams NVENC. Currently, card transcodes me only 2 channels. Unfortunately I never found the instructions to change resistors.

Regards
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: coolnik on March 23, 2017, 03:17:11 pm
Hello! Tell me which resistors to replace this video card asus GT640-2GD3. Photos of the video card below.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 24, 2017, 12:04:59 am
Hello! Tell me which resistors to replace this video card asus GT640-2GD3. Photos of the video card below.

Umm no... read the thread, figure it out, each card is different and we do not have the resources to obtain each one to find them.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: coolnik on March 24, 2017, 07:46:00 pm
Well, after reading about the Gt640 is written about the zotak and the asus of the other is not more than me. And there is another list that managed to successfully model I want to understand what to buy? We have a small choice to find ...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: variance on March 28, 2017, 06:46:25 am
Hi. I just modded a zotac GT640 into a Grid K1...
It identifies as a Grid K1 under nvflash but under esxi shows up as a Quadro 410.
Has anyone experienced this issue?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on March 28, 2017, 09:52:27 am
Hi. I just modded a zotac GT640 into a Grid K1...
It identifies as a Grid K1 under nvflash but under esxi shows up as a Quadro 410.
Has anyone experienced this issue?

Not that I am aware of, boot a Linux distro and see what lspci reports.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: variance on March 30, 2017, 04:20:36 am
It was apparently a bad/loose/cold solder joint on R2. (see attachment)

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Mikhail-VV on April 02, 2017, 08:16:57 pm
Good day for everybody!  :)

As I can see, the most people successfully modified their Geforce cards into quadro/tesla used them later as a videocard - but!..  Does anybody try to use modded cards for computations? (Ansys, for example, or other FE program)? For example, in Ansys manual "The following cards are supported: NVIDIA Tesla Series (any model), NVIDIA Quadro K5000, K5200, K6000, M6000 .... For NVIDIA GPU cards, the driver version must be 346.59 or newer."
So the question - is it possible to modify geforce into tesla/quadro with active TCC support?

I would very appreciate if somebody answers me.

p.s. Sorry for my English - and "yes" twice - I am completely newbie in such a modding, and I tried to read all the thread...
p.s.s by the way - even on the  devtalk.nvidia.com there is a thread with the same content! am really suprised...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 05, 2017, 07:16:16 am
Good day for everybody!  :)

As I can see, the most people successfully modified their Geforce cards into quadro/tesla used them later as a videocard - but!..  Does anybody try to use modded cards for computations? (Ansys, for example, or other FE program)? For example, in Ansys manual "The following cards are supported: NVIDIA Tesla Series (any model), NVIDIA Quadro K5000, K5200, K6000, M6000 .... For NVIDIA GPU cards, the driver version must be 346.59 or newer."
So the question - is it possible to modify geforce into tesla/quadro with active TCC support?

I would very appreciate if somebody answers me.

p.s. Sorry for my English - and "yes" twice - I am completely newbie in such a modding, and I tried to read all the thread...
p.s.s by the way - even on the  devtalk.nvidia.com there is a thread with the same content! am really suprised...

So far we have found that modding the card to other models has not enabled additional features on the die, such as compute which is what you are looking for. If however the software is simply performing a check on the model and refusing to run, you may have success.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: C.Azrael on April 17, 2017, 06:17:28 am
i think the key is driver
geforce, quadro, tesla they have exactly the same core
different point just like frequency, ram size and ECC, better power supply, stability...
if driver ok, others also ok  :-+ :-+
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on April 17, 2017, 03:06:16 pm
i think the key is driver
geforce, quadro, tesla they have exactly the same core
different point just like frequency, ram size and ECC, better power supply, stability...
if driver ok, others also ok  :-+ :-+

This has been guessed at quite a few times, there is more likely some E-Fuses or similar being cut/blown on the die at manufacture to disable these features.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nhp12345 on April 17, 2017, 03:22:53 pm
OMG! Just randomly check on this thread again to see news and you finally came back, this make me wanna cry out of joys and excitement! :scared:
Thanks so much for the instructions and the explanations, gnif! I can grab 99% of the process now. However, as you mentioned, only 1 of 2 nipples for each strap is populated, but the process is to add a random 10k resistor to find the target un-populated register. It could leads to a situation where both nipples are populated! Is this a contradiction or am I missing something here?

On the other hand, I wonder if randomly "close" the circuit with a 10k test-resistor do any harm to the card?  :-//

About the suggestion on creating a transparent image to track down resistors (or traces?!), I know it would help but the thought of these PCB are all multi-layer makes me feel (somehow) insecure!  :-DD
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex79818 on May 02, 2017, 04:16:28 am
I know this thread is pretty old but it was interesting enough for me to play around with the idea and it just so happens that a cousin of mine had just upgraded his GPU and agreed to give me his old 680.  I followed the instructions (thank you!!) and was able to mod it into a Grid K2.  My intention was to have it drive a virtual machine, so I put xenserver 7 on that machine - ran lspci | grep VGA and sure enough it reported it as a Grid K2.  So far so good, right?  But then I built the vm and I found I couldn't install the driver no matter what.  I downloaded an eval windows 10-64 enterprise image, then I tried pro and even ported over my daily driver's activation code...nothing.  I figured it was time to get creative so I started to try different things, but so far nothing has worked.  I've edited the *.inf files to list the 11BF hardware ID's, I tried all the sections and the descriptor at the bottom.  I also tried doing it backward and editing the registry to "re-normalize" the PCI hw ID back to a 680 to see if the drivers would install then...I got past the nvidia hardware check, but it still failed.  If I tried to do it manually I'd just get a windows dialogue saying the driver had a "problem" with windows and windows couldn't install it.  If I tried the K2 driver, it installed but windows reports a problem with the hardware and the device couldn't be initiated.  And if I tried an older driver, it says it can't work with this version of windows.

So I'm kinda racking my brain at this point - but before giving up thought it would be a good idea to ask you guys, since you all discovered this in the first place.  I know it was a while ago...but what am I doing wrong?  Is it because I'm trying to run this in a pass-through VM?  Or is it that you guys only got this to work with an older OS like windows 7?  Is it supposed to be a 32-bit OS and won't work on x64??  Or is there a custom or specific driver that you guys used to make it work (and if so, do you have a download link)?

Thanks so much!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on May 02, 2017, 05:14:53 am
I know this thread is pretty old but it was interesting enough for me to play around with the idea and it just so happens that a cousin of mine had just upgraded his GPU and agreed to give me his old 680.  I followed the instructions (thank you!!) and was able to mod it into a Grid K2.  My intention was to have it drive a virtual machine, so I put xenserver 7 on that machine - ran lspci | grep VGA and sure enough it reported it as a Grid K2.  So far so good, right?  But then I built the vm and I found I couldn't install the driver no matter what.  I downloaded an eval windows 10-64 enterprise image, then I tried pro and even ported over my daily driver's activation code...nothing.  I figured it was time to get creative so I started to try different things, but so far nothing has worked.  I've edited the *.inf files to list the 11BF hardware ID's, I tried all the sections and the descriptor at the bottom.  I also tried doing it backward and editing the registry to "re-normalize" the PCI hw ID back to a 680 to see if the drivers would install then...I got past the nvidia hardware check, but it still failed.  If I tried to do it manually I'd just get a windows dialogue saying the driver had a "problem" with windows and windows couldn't install it.  If I tried the K2 driver, it installed but windows reports a problem with the hardware and the device couldn't be initiated.  And if I tried an older driver, it says it can't work with this version of windows.

So I'm kinda racking my brain at this point - but before giving up thought it would be a good idea to ask you guys, since you all discovered this in the first place.  I know it was a while ago...but what am I doing wrong?  Is it because I'm trying to run this in a pass-through VM?  Or is it that you guys only got this to work with an older OS like windows 7?  Is it supposed to be a 32-bit OS and won't work on x64??  Or is there a custom or specific driver that you guys used to make it work (and if so, do you have a download link)?

Thanks so much!!

Did you pass the device through into the VM?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex79818 on May 02, 2017, 05:43:32 am
Yes, and it shows up in device manager, just with the yellow warning.

I thought I read something about "the OS doesn't matter" and that there's really no need to reflash the bios on the card so I just went back and re-read pretty much the whole thread, but I couldn't find it.  Maybe I'm wrong.  I did read again close to the beggining that the gigabyte 680 to k2 mod had no problems with driver, but then again that was back in 2013 so I'm thinking windows 10 in 2017 is the factor that has changed.

I guess what I'm trying to get at here is a "known good config" given that many members over the years seem to have been able to get this working ok on a windows VM.  So maybe if I can duplicate their environment factors I can get mine to work too (?) this is the same gigabyte 680 card, the box is an HP z800 single x5650 w/12gb running XS7.0 (I also tried 6.5), pass-through to a single VM (win10pro64 and I have other images I can try as well), I gave the vm 10Gb/750Gb/10vCPUs which is the bulk of what the box has available after dom0.

Any help would be appreciated, thanks again!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: photesh on May 13, 2017, 05:32:54 pm
Hi,

I've modified
Gainward GeForce GTX 680 4GB into Quadro K5000. (40K none 15K none).


I was needed quadro card to get 10 bit color in Photoshop.
 (with Geforce You can do 10 bit output, but Photoshop will not display 10 bit, unless You got quadro card, they create some kind of different "display port for 10bit" (means software port), not just a direct X, but somewhat that requires much more expensive card :)
which is noticeably more expensive on 4K monitor.)

So I have K620, real original nvidia card. It only has 2GB and it is slow, but I have 10 bits in Photoshop and (for some reason, it is not claimed, but in hardware mode I have 10 bits in the PS Lightroom)
When I open 16bit images with my modded card, I don't have 10 bits. So I might have missed something.

1) I've noticed that in the  I  have UEFI unchecked, not same I have for K620(original)
(http://gpuz.techpowerup.com/17/05/13/dp6.png)

2) How can I test that double precision really works ?

3) do I need to update firmware, if it so, how ? (JIC: I have Gainward GeForce GTX 680 4GB )
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: 001 on May 24, 2017, 10:17:42 am
What port do You use (DP or DVI-D)? I.e.: does hacked K5000 'know' what Your monitor is 10bit compatible?  Also gainward has no-reference design. May be it is problem

Are gtx680/690 freebies actual for CAD now? (What`s news about? sorry, I`m bumpkin :P  )

Another question: can I hack modern  GTX1060 into some Quadro P2000 (both GK106 chip 16nm) or GTX1070 into P4000/P5000 (all of them use GK104 variants) ?

Or nowday GTXs does not require any hacks for CAD working?


PS - If You try to print 'GTX' with russian keyboard you get '***'. It is russian word for oven or similar hot thing  :-DD
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on June 03, 2017, 03:47:08 am
This has been said time and time again, this DOES NOT enable all the professional features, it simply allowed me to run Mosiac under Linux, which was a software limitation. We have found that doing this makes it possible to get the card to behave better in pass through for XEN/VMs etc as a GRIDK2, but no additional compute features, etc...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: 001 on June 03, 2017, 10:30:56 am
GTX cards have some driver limitation with SolidWorks
Is it way to cancel that?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: nhp12345 on June 03, 2017, 11:57:42 am
OK, maybe gnif somehow missed my comment. Let me put it up again here!  :-\
OMG! Just randomly check on this thread again to see news and you finally came back, this make me wanna cry out of joys and excitement! :scared:
Thanks so much for the instructions and the explanations, gnif! I can grab 99% of the process now. However, as you mentioned, only 1 of 2 nipples for each strap is populated, but the process is to add a random 10k resistor to find the target un-populated register. It could leads to a situation where both nipples are populated! Is this a contradiction or am I missing something here?

On the other hand, I wonder if randomly "close" the circuit with a 10k test-resistor do any harm to the card?  :-//

About the suggestion on creating a transparent image to track down resistors (or traces?!), I know it would help but the thought of these PCB are all multi-layer makes me feel (somehow) insecure!  :-DD
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: singyeah on June 12, 2017, 06:08:54 am
Would the memory difference be the obstacle of it? Like GTX690 hv 2x2gb ram but grid k2 hv 4+4 gb(http://www.overclock.net/t/1583004/gtx-690-mod-from-2x2gb-to-2x4gb-memory, (http://www.overclock.net/t/1583004/gtx-690-mod-from-2x2gb-to-2x4gb-memory,) some guy swap the 2x2b to 2x4gb with 680 bios)
Also will esxi hv different result from xenserver?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Papay on July 16, 2017, 05:58:48 am
Hello! I have problems with 780 TI. The video card is defined with different ID 103A (for cold) 102A (for hot), and very rarely is defined as 100A. I removed and put again the resistor R3 (25k) and the resistor 0.3 but the problem did not go away.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Papay on July 30, 2017, 12:11:01 pm
Or maybe someone will help with the staps? Remake 102A in 100A
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: TiN on July 30, 2017, 12:15:52 pm
Solidworks have simple registry hack to allow GTX'es to enable RealView and other prettifying things in the viewports. You can google it in 5 seconds.
Works fine with any SW newer than 2013 and any GTX card which has modern OGL/DX support.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: InfinityMod on September 08, 2017, 11:28:26 pm
I'm also interessted into this question. Does anyone has some hint if it would work?

Hi to all,

i am new here. I read this thread from beginn to end and i have 2 questions about
GTX690. The member "gnif" is a genie (thx for your efforts) :) but after burn his card he dont share any
new picture with dual k5000 cpu´s.

My quetions:

1. Is dual K5000 possible?
2. Must i change the firmware or any hacks?

PS: I attached 2 pictures is this correct resistors for the GTX690

Sorry for my bad english
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on September 09, 2017, 07:54:42 am
I have since deprecated my GTX690, which means I can risk identifying the 2nd GPU straps now. I will be doing so when I have some time and will publish the details.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: InfinityMod on September 09, 2017, 09:21:33 am
Thank's gnif, that would be stunning amazing!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: BungalowBill on September 14, 2017, 02:10:41 pm
I'm glad to see that this is still an active topic after being started so long ago, I registered just to post and see if anyone who's gleened more experience might have any input. I just recently acquired acouple GRID K520 cards and I was wondering if any might have an idea or two as to where on this board may be the best place to start searching for the straps, what I'm trying to do is bluff it into thinking that it's a K2 instead so I can utilize the card for VDI. As far as I can figure the two should be almost identical save for the ID which they change so they can realistically call them two different items and adjust prices in either market without effecting the other. Anyway, I'll post afew pics to see if anyone may spot something that my untrained eyes cannot. Thanks in advance for any help and/or input give, it's definitely most appreciated. Pics can be found here https://drive.google.com/drive/folders/0B-zwDdkOsVTiZEp5c1FiT2Nrdzg?usp=sharing, I hope because Google Drive is dumb sometimes.
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: SpaceKid on September 18, 2017, 03:01:13 pm
Hello all again ;) I have good news.

I successfully modified
Zotac PCI-E NV ZT-60206-10L GT640 Synergy 2G 128bit DDR3 900/1600 DVI*2+mHDMI RTL
To NVIDIA GRID K1. It is working fine. passthough works too. BUT Device ID mofidication posible only after bios modification. Bios modification is needed only for specific vendors.

upd:
myweb found resistor places for  Asus GT640-1GD3-L, no bios modification is needed. pic attached to post.

(...)

Hi, I have a question. I have the following card  https://www.asus.com/Graphics-Cards/GT6402GD3/overview/ (https://www.asus.com/Graphics-Cards/GT6402GD3/overview/)  its device ID is the same like for Zotac but the point is non of the presented versions ot this GT640 has the back look like this one. Thus I do not know which/where are responsible resistors... Are you able to help somehow if I send the back view pic ?

Thanks and regards
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on September 18, 2017, 03:02:27 pm
Hello all again ;) I have good news.

I successfully modified
Zotac PCI-E NV ZT-60206-10L GT640 Synergy 2G 128bit DDR3 900/1600 DVI*2+mHDMI RTL
To NVIDIA GRID K1. It is working fine. passthough works too. BUT Device ID mofidication posible only after bios modification. Bios modification is needed only for specific vendors.

upd:
myweb found resistor places for  Asus GT640-1GD3-L, no bios modification is needed. pic attached to post.

(...)

Hi, I have a question. I have the following card  https://www.asus.com/Graphics-Cards/GT6402GD3/overview/ (https://www.asus.com/Graphics-Cards/GT6402GD3/overview/)  its device ID is the same like for Zotac but the point is non of the presented versions ot this GT640 has the back look like this one. Thus I do not know which/where are responsible resistors... Are you able to help somehow if I send the back view pic ?

Thanks and regards

Read through this entire thread, the instructions on how to locate the strap resistors for unknown cards has been published here several times.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: xfabx on October 12, 2017, 07:05:35 am
Hi to all,
Why don't mod a 660Ti in to K4200 ?
They have the same number of core 1344, TMUs 112, and maybe we can unlock the bus width at 256*

GPU Name       Resistor 0 / 3th byte   Resistor 1 / 3th byte    Resistor 2 / 8-f 4th byte   Resistor 3 / 0-7 4th byte
GTX 660 ti                 none                                 25k                                none                                    20k
GTX 770                         none                                 25k                                none                                    25k
quadro k5000                 40k                                none                                15k                                   none
Quadro K4200*              40k                                None                                none                                     25k           

GTX 660Ti   Device Id 1183
GTX 770     Device Id 1184
Q. K5000    Device Id 11BA
Q. K4200    Device Id 11BA
   

*maybe

Any answers?
Thank's!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Mr. Scram on October 12, 2017, 08:59:13 am
I have an old GTS450 that is pretty much gathering dust, but this might be an interesting project.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: InfinityMod on October 16, 2017, 07:38:15 pm
Are there any news according the GTX690 yet?

Thank's a lot!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on October 16, 2017, 10:00:38 pm
I have the card sitting here on my bench ready to mess around with but have had too little time to get started on it I am sorry. I am currently in the middle of another time critical project that has to come first.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Brumby on October 17, 2017, 11:57:54 am
Are there any news according the GTX690 yet?

Thank's a lot!

When there is something to report, it will find its way here.  These exercises don't pay the bills, so those priorities have to come first.

Just be patient.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gwidullo on October 20, 2017, 03:39:00 pm
Hello'
I bought a used asus GTX670-DC2-2GD5 graphic card, and this card is identified as tesla k10.
This card is dead? Or there's something else to do with it, so I can play it?
https://www.asus.com/Graphics-Cards/GTX670DC22GD5/gallery/ (https://www.asus.com/Graphics-Cards/GTX670DC22GD5/gallery/)
Edit:
Silence, so I understand that I was cheated and this card is scraps,
As for watching the internet on the microsoft driver it's too much electricity needs, and anything else in this state is not suitable :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gwidullo on October 23, 2017, 03:09:03 pm
hello,
I turned on the cooler and something was soldering on that card :(
The marked resistor should be original?
(https://photos-6.dropbox.com/t/2/AADSQx8QuTJvmpdBnOFALafPZT1zRAOvM58wZ1C9X2ponA/12/239771461/png/32x32/1/_/1/2/asus_gtx670.png/EJXfh9QBGIZHIAIoAg/ulGWtSrFR7wj9jAwTbXeAItKr3_rc_d-VST8L1jIITk?size=1280x960&size_mode=3)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gwidullo on October 23, 2017, 05:46:48 pm
My measurements are a bit strange:
(https://photos-4.dropbox.com/t/2/AAAZ8OuVoO24dO4okwensUxv28wcBIWC_u_xdBW7H3iSpA/12/239771461/png/32x32/1/_/1/2/asus_gtx670_2.png/EJXfh9QBGIdHIAIoAg/jiKNKWjhShcTpDIq81TVXm3hWG1wEq2w_QkWftkWsx4?size=1280x960&size_mode=3)

R - 20M \$\Omega\$?  - is probably damaged
and R - 10K \$\Omega\$? - I'm not sure it should be 5K \$\Omega\$?

Please help me, I have to give this card to the service to solder correct resistors

Edit:
ok I already know how it should be

I replaced 20M \$\Omega\$ a good 5k resistor, and still is tesla k1. |O
So the problem is not in the configuration of resistors just unless the card is dead  :'(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: robjvan on November 03, 2017, 07:55:07 pm
I have the same issue - found a used GTX780M (10DE 119F) that identifies as a Grid K2 (10DE 11BF).  Resistors do read a bit wierd, but not in the range that would give these readings.

  Of course, I managed to install the Geforce driver through inf modding, but I can't access the Geforce control panel and that's a serious PITA keeping me from assigning dGPU for certain games, can't use Geforce Experience, and I'm fairly sure PhysX isn't working right either.  It's a damn shame, and I'm not really sure how to sort it out so if you manage to figure ANYTHING out, please don't hesitate to share. 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 04, 2017, 12:44:03 am
Sorry to hear that mate, seems like someone has done the dodgy on you. NVidia removed GRID support from the consumer drivers, likely due to this hack. You can get the GRID drivers to install but the card refuses to function properly as a general GPU after the mod. You have three options:

1) Use it as a GRID in a passthrough device
2) Have someone reverse the alteration, this thread is the place for information, look through it for references to your card.
3) Demand a refund! IMO this is the course I would take, claim it as faulty. It was sold as a GTX780M but has is faulting and identifying as the wrong device.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 04, 2017, 12:45:48 am
My measurements are a bit strange:
(https://photos-4.dropbox.com/t/2/AAAZ8OuVoO24dO4okwensUxv28wcBIWC_u_xdBW7H3iSpA/12/239771461/png/32x32/1/_/1/2/asus_gtx670_2.png/EJXfh9QBGIdHIAIoAg/jiKNKWjhShcTpDIq81TVXm3hWG1wEq2w_QkWftkWsx4?size=1280x960&size_mode=3)

R - 20M \$\Omega\$?  - is probably damaged
and R - 10K \$\Omega\$? - I'm not sure it should be 5K \$\Omega\$?

Please help me, I have to give this card to the service to solder correct resistors

Edit:
ok I already know how it should be

I replaced 20M \$\Omega\$ a good 5k resistor, and still is tesla k1. |O
So the problem is not in the configuration of resistors just unless the card is dead  :'(

Did you measure the resistors in or out of circuit? The only way to make the card report as a Tesla is to mess with the resistors.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gwidullo on November 07, 2017, 05:47:35 pm
Did you measure the resistors in or out of circuit?

in,
but now the card is dead,
The fans are on, the led lights are green, but the card is invisible :(
I run the system on an integrated graphics card.

how to make the simplest diagnostics what's broken?
- fuses PGF1, PGF2 and PMF1 are ok
- worries me that PGCE4, PGCE5, PGCE6, PGCE11, PGCE16, PGCE17 on both legs (+-) have a short to ground
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: grifos on November 12, 2017, 06:04:24 pm
Hi,
I got the exact same card: GTX670-DC2-2GD5
Removed R2 and R4 today
So now the card is: none none none none

The card is successfuly recognized as GRID K2. I could use it with xenserver 7.2 in a windows 10 guest with the latest driver from nvidia (NVIDIA-GRID-vGPU-kepler-XenServer-7.1-367.122-370.16).

Thanks to this thread

Regards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: grifos on November 14, 2017, 12:28:29 pm
Hi, i have a question,
Did anyone manage to use the nvidai high definition audio driver with a hardmoded gtx? Does the driver even exist?
Because right now i'm pleased to use my gtx as a vGPU, but can't pass audio through HDMI :(

Small addition to my previous post, removing R2 and R4 works just fine, but sometime at host boot time, the card is recognized as Grid IceCube =). Someone in a previous post mentioned this issue with another card, so it's not new, but in case it happens, the vm guest won't manage to load the driver properly (even if the hypervisor tells you the right card is passed through).
You just have to reboot the host to get the right id at boot time, not much of a hassle than trying to find the correct value to stabilize the card at boot time xD

Regards
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 14, 2017, 06:00:13 pm
Did you measure the resistors in or out of circuit?

in,
but now the card is dead,

You have very likely killed the GPU, it is a 1.2v device and the voltage output by your DMM for measurement is high enough to damage the GPU.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gwidullo on November 14, 2017, 08:12:32 pm
You have very likely killed the GPU, it is a 1.2v device and the voltage output by your DMM for measurement is high enough to damage the GPU.

Is this card only for trash?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 17, 2017, 06:30:08 am
You have very likely killed the GPU, it is a 1.2v device and the voltage output by your DMM for measurement is high enough to damage the GPU.

Is this card only for trash?

Without testing I can not say for certain, but it is quite likely.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gwidullo on November 17, 2017, 06:43:48 pm
Without testing I can not say for certain, but it is quite likely.

What to check to make sure?
Plz help me  |O
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: thunderbolt on November 27, 2017, 08:06:07 am
i habe 8x 780 6GB modified to tesla k40st air cooled and 7x watercooled 780 6GB Tesla K40st ... anyone wants to buy some ?

send me a mail. air cooled 200€, watercooled 270€.

all are working perfect. all with 6GB

send me a PM.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on November 27, 2017, 08:29:26 am
i habe 8x 780 6GB modified to tesla k40st air cooled and 7x watercooled 780 6GB Tesla K40st ... anyone wants to buy some ?

send me a mail. air cooled 200€, watercooled 270€.

all are working perfect. all with 6GB

send me a PM.

Not the place to post this, please post it in the for sale section of the forums.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Zucca on November 30, 2017, 06:34:23 pm
Hi There!

I just got a Quadro K5200 from Ebay. it loooks like this:

(http://www.hwconfig.com/media/image/7e/8c/c8/1557_5.jpg)

Do you think if I manage to solder properly (I know it is BGA so bla bla...) those missing 4 1MB chips and hack the ID... I will then have a K6000?

Should I try it?

EDIT: I think there is also some work to do at the power supply part... bummer.

 >:D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Mr. Scram on December 19, 2017, 03:58:48 am
That little auxiliary board looks interesting. What chip is on there? I can't quite read it in the picture.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on January 09, 2018, 06:59:10 pm
I doubt it, its missing more then just the RAM, an entire power phase is missing, likely for the extra RAM.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: mechanerd on February 06, 2018, 07:59:04 pm
I doubt it, its missing more then just the RAM, an entire power phase is missing, likely for the extra RAM.

How about the eprom put on the board is non standard?

First of all gnif, you are the boss awesome for finding this hack.

I had a gtx 960 chinese fake card sent to me from a friend who bout it, then got a refund.
it's really a GTS450 gf106 192 core, 783 Mhz clocked card with a funky bios eprom that nvflash doesn't read or write to.
gpu-z can read the card, but the bios save fails.
I tried scanning the eprom with RWeverything to no avail.

The device id is 10de 1401, but it needs to be hard modded.

Per page 10 of the thread this guy did the gts450 to quadro2000 mod.
I just want to set the darn resistors back to gts 450 and use this card a mining card or simple GTS for a desktop.

Initial values are:
index   meaning   resistance
1   3 byte value D   none
2   3 byte value C   35k
3   4 byte values 8-f   none
4   4 byte values 0-7   25k

device / resistors table

device name   R1   R2   R3   R4
gts 450   none   35k   none   25k
Quadro 2000   35k   none   5k   none

now the fun part is locating the exact resistor location. I have a good idea, but I think it's counterintuitive to be jumping a blank spot with a resistor when it could be used for some other function on the card. I have steady hands and a sharp eye for a repair like this.
However, this 450 ripoff card that was flooded on Ebay look nothing like the reference card or any of the stock images on google.

 |O |O

https://i.imgur.com/Mi7y2tp.jpg

https://i.imgur.com/rY8lKNh.jpg

I am tracing from pin 3 of the supposed eprom to the nearby resistors. I think I might be able to determine the values for the bits.  I see the list of first two nibbles from page 1 of the thread as:
"
What NVidia has done is changed the way that it handles the straps, instead of just pulling the straps high or low to control the switches as they did previously, they are now read as analogue values. The scheme is as follows:

When pulling high:

5K   = 8
10K = 9
15K = A
20K = B
25K = C
30K = D
35K = E
40K = F

When pulling low I expect this to be the same, but for 7 - 0, but I did not test this as the device ID I was targeting is >= 8.

There are two tiny SMD resistors on the board, one for each nibble of the PCI Device ID byte. Originally the GTX 690 has a device id of 0x1188, so to become a Quadro K5000 this has to be changed to 0x11BA, which equates to 20K and 15K resistors. If you wanted to change it to a Tesla K10, you would want to change it to 0x118F, which equates to 5K and 40K resistors.

"
----
But what about 7-0 ?

Thanks and regards..
BTW I tested the PXE boot roms for Intel NICs back in the day of early gigabit.. Intel changed the way they allowed the device ID to be changed, but for a while there were a few server cards that were desktop cards out there.. :P



Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: theleakydiode on February 15, 2018, 02:42:37 am
Is this why ebay is full of fake nvidia cards now? Because the Chinese have caught onto this thread?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Rasz on February 21, 2018, 10:13:27 pm
I had a gtx 960 chinese fake card sent to me from a friend who bout it, then got a refund.
it's really a GTS450 gf106 192 core, 783 Mhz clocked card with a funky bios eprom that nvflash doesn't read or write to.
gpu-z can read the card, but the bios save fails.

https://www.youtube.com/watch?v=Ra0T0j5KoAc (https://www.youtube.com/watch?v=Ra0T0j5KoAc)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gjarkko on February 25, 2018, 05:55:47 am
Thanks to this thread, I too managed to swap the resistors on my GTX670-DC2-2GD5 to make it appear a GRID K2 card for ESXi 6.5 in my home lab.

Pity to find that vGPU isn't recognized, but passthrough is already quite a good start. Users were reporting success with vGPU in XenServer, but I guess VMWare drivers are different somehow?

The one step I haven't tried is reflashing the card vBIOS with altered PCI ID - any idea if that's worth the effort?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kosta on March 03, 2018, 07:59:27 pm
Has anyone managed to get the Quadro part of the Nvidia control panel working on a Geforce card? Or any ideas about it. I know this is hardware related here, and I'm looking for a sofware hack, but I couldn't find any info about my intent better than here.

Quadro cards have a "Workstation" section in their control panel, showing a system topology and allowing for some EDID override functionality. Something purely software related that would work just as well on any and all cards. But it's disabled on all cards except Quadro. I tried a simple INF hack, but that didn't make that part show up in control panel.

I have a 1060 in a laptop, so hardware mod isn't even feasible and I don't wanna risk instabilities doing it, as I only would like this extremly simple functionality.

Any ideas or links to a more software related hack forum? Thanks!
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: jacdyxu on April 10, 2018, 05:45:32 pm
Hi-
Well I ended up getting Two EVGA 04G-P4-3687-KR GeForce 4GB GTX 680. Core Clock 1084mhz and Boost Clock 1150mhz.
The boards are the same as the GV-N680OC-2GD except mine are 4GB. I modded both of them to Quadro K5000 (Thanks old Playstation 3 for the resistors  :-DD)
I ran the latest Nvidia 314.22 drivers and Quadro 311.35. It seems the 314.22 drivers are a little bite better so I'm using those.
I did some benchmarking to compare the cards before and after the mod's.
                                                   GTX 680 #1   GTX 680 #2   K5000  #1   K5000 #2
3DMARK 11                                      9022                   8987           9077           9016
Passmark 8 (3D Graphics Mark)     6044                   6091           6025          5996
PCMark Vantage (Gaming)             19336                 18956         18880        16177
PhysX                                         10158-166 fps   10003-165 fps    10176-167 fps   10123-166 fps
SPECviewperf 11
   Catia-03                                       6.05                       5.98               5.9             10.20
   Ensight-04                                  32.20                     32.23              32.20         32.27
   Lightwave-01                             13.23                      12.84            13.14           13.22
   Maya-03                                     12.77                     12.73             12.86           12.85
   Proe-05                                       0.96                      1.00                  1.00           0.99
   Sw-02                                         11.09                    11.37                11.36         12.78
   Tcvis-02                                        1.01                      1.17               1.02             1.02   
   Snx-01                                         3.42                      3.37                 3.40            3.42
As you can see all the scores between stock and modded cards are about the same. The problem is with the SPECviewperf 11 scores. This is  the benchmark for Graphic and CAD programs. This is what the Quadro cards were made  for. The scores for the modded K5000 should be MUCH higher. Take a look here.
http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html (http://www.xbitlabs.com/articles/graphics/display/nvidia-quadro-k5000_4.html)

It looks to me that just because the computer thinks it’s a Quadro K5000 does not mean that it will act like a K5000.
I even tried this benchmark with the Quadro drivers and got the same results. Hopefully It's just a driver issue and not a hardware issue.

Hi,  I also have this card, but I can't read and update the BIOS with nvflash as now, could you please let me know how to update the BIOS with nvflash or use another software? Thanks a lot.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: beur on May 04, 2018, 03:12:17 pm
Hi, guys. I'm from wild siberia! I have Palit GTX660 2Gb. Mb - GigaByte h61m (uefi bios) and Asus Z170p (also UEFI). My first app - SolidWorks (SW). Sometimes Autocad.
SW, by default, on game card don't allow nice, but useless display mode - RealView and antialiasing (AI). Everyone can easily unlock this features by add graphic card's id to SW whitelist in registry (known as realhack). Fullscene antialiasing looks very good, but drops fps even on small assembles. On ati card same deals. 960 CUDA cores more then enought to 3-4k simple parts, but AI fails on 50 simple lines. Once time, i read on SW forum, that quadro gift free (for fps) AI! Non-smooth mode works like game card. And some cookies on drafts.
I buy Quadro K620 and open most heavy model. This is impossible! Same fps (no meters, my feelings only), as GTX660, plus AI! GPU-Z don't show more 30-50% GPU Load on GTX, but they freeze. K620 charges to 90-100% without hangs.
I think about hardmod GTX..
Some questions.
1. Would hard-modded card work on UEFI-BIOS system? What kind of problem can i face?
2. May be, somebody, who have hacked card can test AI on SW? I can give heavy model, if you need, of course.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: aqarwaen on June 23, 2018, 10:27:54 am
just out of curiosity has anybody successfully hacked their titan v?or had able unlocking additional features what are locked without hacking/modding.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: EndRU on July 22, 2018, 08:53:55 pm
Tried to find resistors for Asus 1050ti. Have not found  :(  Probably this is impossible.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: showler909 on July 26, 2018, 02:04:38 pm
Hi folks!

I have a bizarre issue regarding a GIGABYTE GTX 770 WindForce 3X OC 4 GB Rev. 2. It is actually recognised as a Tesla K8 by my system bizarrely with device ID 1194 rather than 1184, as a gtx 770 is. I have looked on the board and I do not see any evidence of anyone tampering with the board. It will display fine but it won't run any games. if someone could assist me with perhaps identifying the necessary resistor to change so the device ID becomes 1184 that would be greatly appreciated.

I have attached the gpu-z reading. I'll upload hi-res pcb shots later today :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: amatrix85 on September 19, 2018, 01:01:12 am
Hi there,

GV-N650OC-1GI (Gigabyte GeForce GTX 650) hacked successfully (but only partially).

On my card BIOS was unlocked out-of-the-box.

R1=R574
R2=R571
(both near the U502 chip)

I'm not sure about R3 and R4. Probably they are R583 & R582 but value of R583 is 30k Ohm instead of 35k.

R3 is R130 (below GPU at the opposit side). About R4 still not sure, but it should be near R3.

Anyway, the card now detected as Quadro K1100M (or as GRID K1 NVS USM without R2, for probable installation in ESXi hypervisor I've lately broke R2 circuit with jumper pins). There is no problem in Linux in both positions but in Windows I have to change SUBSYS part of Device ID in INF. Hackintosh also refuses to start - seeking for solution works after reloading DSDT via Clover.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: profile53 on October 20, 2018, 12:29:37 am
I don't know if anyone's still following this thread, but how did you guys locate the straps? Was there anything specific to look for? Now that the Tesla K10 is fairly cheap, I bought one and wanted to try my hand at modding it into a Grid K2 but the straps seem to be in a different location than the GTX 690 reference model's.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: brzez on October 21, 2018, 03:10:07 am
Has anyone converted a card to a GRID K1 or K2 and been able to use it as a vGPU under Vmware ESXI 6?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: tordef on October 21, 2018, 10:41:14 am
help me  :'( :'( :'(
Resistor ???
GTX770 OC 4GB
(https://www.picz.in.th/images/2018/10/21/kefCYz.jpg)
(https://www.picz.in.th/images/2018/10/21/kefsVq.jpg)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: axonic on October 26, 2018, 06:00:53 pm
I just modded my EVGA 660 Ti FTW which is on the board used for 670/680 cards. The horizontal row of resistors above the red boxes, and a row on the rear above U504 are the PCI ID resistors. I know there's over 50 pages to this thread, but browse through it and you should find everything needed.

I recommend you start with these links for reference, and practice on parts of the same size on a scrap board. You may need to obtain resistors from another board or order them to get the right values. In my case, I only had to solder a 40k onto empty pads and remove a 20k, I got my resistor from a radio transceiver. There was only one 40k on the board, and I dropped it. The next day I found it in my soldering tip cleaning sponge after picking all the debris from it for a long time.

Reply #81 on: March 25, 2013, 07:10:07 pm
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550
 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550)
Reply #84 on: March 26, 2013, 01:08:47 am
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207638/#msg207638 (https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207638/#msg207638)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: axonic on October 26, 2018, 06:13:13 pm
Firsties? One EVGA GeForce 660 Ti FTW modded to report Tesla K10. Thanks to all the work and sacrifice of people who went before. This card is built on a similar board to the 670/680 lines, so you'll find diagrams of those cards useful. Simply removing the 20k resistor (4th from the left above U504 on the rear of the card) is fine since the absence of a resistor seems equivalent to a zero in the ID bits. If you want to be sure you can also solder a 40k resistor (which translates to a 0) on the third resistor from the left in the row beneath the Y1 oscillator to ensure the pin isn't left floating electrically.

This card now reports that it is a Tesla K10 as predicted. I upgraded the BIOS to a UEFI version from EVGA before the mod so the hardware ID would be correct for the firmware tool, and kept the resistor for later reversal. Could add user selectable hardware ID... But I got a rover to finish building first. :)
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: IanMacdonald on October 26, 2018, 08:14:51 pm
You've got balls for taking a soldering iron to a GTX-690!

I thought you used reflow for those.  ;D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: spookyvow on October 27, 2018, 02:22:24 pm
hi,I want a BIOS of K2. I didn't find it :-//.Thanks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alexnissan on November 05, 2018, 05:47:35 pm
Hello!
I was trying following
I get gtx690 and replace memory chips from 2gb to 4gb onto second gpu, then i take
tesla k10 and bios from this to flash into gtx690 and get error with bar1 client8 and so.
Help me please upload yourself screenshot when do this command: lspci -vv,
I want differ this info between different vga cards.
Very thank you ladies and gentlemens!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: brzez on November 13, 2018, 04:24:04 am
I got a hold of a Tesla K10 for cheap and was was hoping to convert it to a Grid K2 using just softstraps -- the cards look identical from the back (no idea about the front since I've not taken it off)


But after dumping roms and device ids it does not look like it is possible:

Device IDs and ROM straps.

<1> Tesla K10            (10DE,118F,10DE,0970) H:03:SP8 B:04,PCI,D:00,F:00
<2> Tesla K10            (10DE,118F,10DE,0970) H:03:SP16 B:05,PCI,D:00,F:00

50 81 08 00 95 01 00 E0 50 80 08 80 02 00 00 00


<1> GRID K2              (10DE,11BF,10DE,100A) H:03:SP8 B:04,PCI,D:00,F:00
<2> GRID K2              (10DE,11BF,10DE,100A) H:03:SP16 B:05,PCI,D:00,F:00

50 81 08 00 95 01 00 E0 50 80 08 80 00 00 00 00



The device ID in binary for the K10 is:
1000110001111

For K2 it is:
1000110111111

So bit positions 4 and 5 differ but the softstrap guides only go from bits 0 to 4.

That fifth bit may only be modifiable by resistor changes.

Any other ideas anyone?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: rulebreaker on December 03, 2018, 07:03:15 pm
Hello, guys.
Does someone know how to change device ID of Asus gtx 780 dcii to gtx 780 ti?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: storepool on December 23, 2018, 11:35:17 am
Same here as brzez

got hold on a cheap k10 (100$)
purpose : using it a as a vsphere accelerator
either native vsphere console
or also within vdi/vnc
mainly for education

but
using it on shuttle h67 which has no vt-d

driver I use: NVIDIA-VMware_ESXi_6.7_Host_Driver-410.68-1OEM.670.0.0.8169922.vib

Story short:  its not working
"ALERT: NVIDIA: module load failed during VIB install/upgrade"

I am sure it has to do with the missing  vt-d

but it still should be usable in sVGA mode but there it should run as grid k2

and here my questions:

so I learned
-have to apply code Id: 10DE 11BF (one resistor out, one changed from 25k to 40 k)
-have to flash k2 firmware

-1) which and where are the 3 resistors located on k10 board ?
-2)where to find the k2 firmware (is not on https://www.techpowerup.com/vgabios/ (https://www.techpowerup.com/vgabios/)  only k1 is)

will report back with any progress ..right now the board is on desk, waiting for soldering.
cheers from Wiesbaden

ps:
adding bottomLayer for a (searchLocationR) start

found somthing..:
NVIDIA Firmware Update Utility
Version 5.151g
GRID_UPDATE_K1_K2
so is it possible K1 and K2 share the same bios ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: brzez on December 23, 2018, 07:11:26 pm

Thanks for the info storepool.

ESXI 6.7 does not have support for GRID K series:
https://www.vmware.com/resources/compatibility/search.php?deviceCategory=sptg&details=1&releases=369&partners=68&page=1&display_interval=10&sortColumn=Partner&sortOrder=Asc (https://www.vmware.com/resources/compatibility/search.php?deviceCategory=sptg&details=1&releases=369&partners=68&page=1&display_interval=10&sortColumn=Partner&sortOrder=Asc)

ESXI 6.5 does and works fine with my K2 in vGPU mode. I've never tried sVGA. K10 is recognized as well but not available for sVGA or VGPU. I can pass both cards directly (pci passthru) to the guest OS.

VT-D is most likely needed.

I have not taken apart my K2 since I've been testing it under VMWare  so I do not know the resistor differences. Been meaning to do that but have not found the time.

The resistors on the K2 and K10 boards I have are the same for the middle portion of your picture (as far as I can tell). I suspect the resistor differences may be on the front.

I do have a saved firmware from my K2  and can email it to you (tried posting it here but it gets rejected). Supposedly nvlfash v5.206  can be used to flash it.

I have that firmware update utility too but have not tried any updates.

I can take some high res pictures of my K2 if you'd like.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: storepool on December 23, 2018, 09:05:27 pm
Ohh brzez  thanks a lot.


I welcome the firmware
and by what you write, I look forward to be able to locate the resistors, can you hint me the location ?

regarding thr 6.7 support
maybe that explaines the driver not beeing loaded.  but I had the same issues running 6.0
and somewhere I read, that in 6.7 all drivers are in one vib.
maybe testing 6.5 now (again)

basicaly the road map stays,
I can not run this vt-d mode so I need to get the gridk2 firmware on this board.
and yes please send me that firmware
so basicaly I only need to locate the 2 resistors ,
will do this beside running the flusher so I can check the ID changes.
thx

Polly





Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: maxias on January 17, 2019, 12:18:30 pm
Has anyone successfully modified a GTX 10X0 into a Quadro?

is it only possible with GTX 500 / 600 / 700?

cheers
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: trailro on January 28, 2019, 02:37:19 pm
Hi guys,

I also have a handful of tesla k10 cards - any luck in modifying them to be seen in esx 6.5 as grid k2 cards?

Thanks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: maxias on February 06, 2019, 08:07:59 am
Hello together, i have got a Gainward GeForce GTX 670 Phantom. it has a lightly different layout to the cards showing at this thread.
the bios chip is not on the back.


i have checked the resistors and maybe someone knows how to address them. especially the R3 i cannot find.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Volkon on March 31, 2019, 11:27:55 am
Hi friends!
I want to share my experience.
How I cracked a titan black EVGA graphics card into a Quadro K6000 graphics card.
Below is a photo with the work done.
Back side:
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Volkon on May 12, 2019, 11:34:13 am
Hello!
After I hacked the Titan Black EVGA graphics card, I used the original BIOS from the Quadro K6000 graphics card.
But after loading the operating system, when the driver 411.81 was loaded, the desktop of the system began to appear with artifacts (photo 1). After some time, the video driver stops responding and the system throws a driver error.

At the same time, the system works fine with the BIOS from the Titan Black graphics card (except for its limited functional capabilities).
Did anyone manage to change the BIOS of the Quadro K6000 card so that the titan Black card works as efficiently as possible for CAD-systems?
Share, please, who knows something about this.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: maxias on May 23, 2019, 07:00:56 am
i have a general question, does this hardware mod let for instance a GTX 670 work as a workstation K5000 card? im a solidworks user and im asking if it only enables "realview" in the same way as the software "realhack" does? or is the improve way more? better assembly performance? cheers
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on July 10, 2019, 05:56:29 am
Im little behind on this topic but I just got Tesla K10 for very good price.
I am going to mod it to K2 and see if I can use vGPU
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Zucca on July 12, 2019, 09:28:56 am
Edit:
For those that are just spewing trash on HaD comments without doing a little research... the parts are identical, changing the Device ID just makes the binary blob advertise the additional features to the system, and enables them. It does NOT affect the clock speeds, and will not make the card faster for general day to day work unless you are using the specialised software that takes advantage of these 'professional' features. Changing the ID does not affect the clock speeds as they are configured by the BIOS which we are not touching.

And stock, the GTX690 is clocked FASTER then the K5000 and the Tesla K10, so you are getting a faster card in comparison, not making the GTX690 faster.

I repeat, this does NOT make your GTX 6XX card faster, nor does it make it slower.

A lot of people here did not get this point. Changing some resistors will not change the firmware to give more speed/functions in CAD software.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on July 15, 2019, 09:56:51 am
Tesla K10 to Grid K2 successful

I had to mod two resistors for GPU0 and GPU1
What I did was removed 25k and installed 40k to make it perfect match
Does GTX 690 also require modifying two resistors?

I also updated all the vbios to K2 so it looks like K2 now (updated PLX as well)
I will test vgpu functions in few days.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on July 16, 2019, 07:23:04 pm
Tesla K10 to Grid K2 successful

I had to mod two resistors for GPU0 and GPU1
What I did was removed 25k and installed 40k to make it perfect match
Does GTX 690 also require modifying two resistors?

I also updated all the vbios to K2 so it looks like K2 now (updated PLX as well)
I will test vgpu functions in few days.

Tested with ESXi 6.5 and seems to be working as expected.

[root@localhost:~] nvidia-smi
Tue Jul 16 19:14:11 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.130                Driver Version: 367.130                   |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GRID K2             On   | 0000:07:00.0     Off |                  Off |
| N/A   63C    P8    28W / 117W |    517MiB /  4095MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GRID K2             On   | 0000:08:00.0     Off |                  Off |
| N/A   69C    P8    29W / 117W |      9MiB /  4095MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0    119538  C+G   vGPU-test                                      508MiB |
+-----------------------------------------------------------------------------+
Title: Re: Hacking NVidia Cards into their Professional Counterparts
Post by: PabloSniper on July 31, 2019, 11:58:02 pm
Really thanks for the efforts of gnif and verybigbadboy
However, since I have a EVGA GTX670 with the same PCB layout like GTX660Ti
So I need to find the modification by myself and here is the result.
For the 4th digit, as everyone already knows, it is right on the position of resistor 1 and 2.
Depend on which card you have and you can remove resistor 1 and change it to tesla(40K), grid k2(40K) or Quadro(15K) on resistor 2.
For the 3rd digit, it is the tricky part.
As the low byte on the top side of the PCB with resistor 4.
You don't need to do anything for Tesla K10.
However, if you need to change it to a Quadro K5000 or Grid K2
You need to remove resistor 4 and install resistor 3 "MANUALLY" since no place for resistor 3 any more in the PCB of GTX670 and GTX660Ti
As you can see in my attached  bottom side photo for the "rework".
You need to connect to EEPROM pin 6 with a 20K Ohm and pull up to VCC.
My rework is quite ugly but it works fine!
Please be careful and take your own risk for modifying your card!!

Summary
GPU Name         Resistor 1 / 0-7 4th byte                  Resistor 2 / 8-f 4th byte                 Resistor 3/ 3th byte (high)       Resistor 4 / 3th byte(low)           
GTX 660Ti          20K                                                  None                                               None                                         25k                                                                             
GTX 670            None                                                10K                                                  None                                         25k                                                                             
tesla k10           none                                                40K                                                  None                                         25k                                                                             
quadro k5000    none                                                15k                                                  20K                                            none                                                                             
grid k2              none                                                40K                                                  20K                                           none                                                                           

Hello everyone, I'm turning a GTX 670 into a GTX 760 ti, could someone tell me the capacities of the GTX 760 ti resistors?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: crafty1337 on August 02, 2019, 10:23:00 pm
@storepool, @gotofbi, @brzez, Were any of you able to find the resistor location on the Tesla K10 for GPU1 and GPU2? I'm working on converting a stack of them into GRID K2 cards for a vGPU project. Also, were you able to determine if the GRID K1 and K2 use the same BIOS? I'm only able to find BIOS downloads for the K1.

Any help would be very appreciated. Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on August 10, 2019, 05:23:35 am
Anyone has bios dump of K2?
The one I used from HP is missing InfoROM and it looks like causing compatibility issue on certain system.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: namgorf on September 11, 2019, 07:34:21 pm
Anyone has bios dump of K2?
The one I used from HP is missing InfoROM and it looks like causing compatibility issue on certain system.

I just purchased a GRID K2 card off ebay, I'll drop the bios when I get it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: namgorf on September 13, 2019, 05:23:24 pm
Anyone has bios dump of K2?
The one I used from HP is missing InfoROM and it looks like causing compatibility issue on certain system.

PMed you a link to it
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: yuyun002002 on September 16, 2019, 05:55:50 am
can you give me a grid k2 rom,thanks very much, i look for it for a long time.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: namgorf on September 16, 2019, 03:51:44 pm
can you give me a grid k2 rom,thanks very much, i look for it for a long time.
sent via pm
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: obliverationizer on September 18, 2019, 05:46:49 pm
one 25k resistor on each GPU right?

I found one on each GPU but not two
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: obliverationizer on September 19, 2019, 12:00:30 am
one 25k resistor on each GPU right?

I found one on each GPU but not two
I found the analog resistor locations, I ordered a 20 or so of different kinds, all SMD, all 40k rated. Anyways,the resistors are in different locations from GPU0 to GPU1. same chip, still two resistors out of four spots, different locations.

The one on the left side (looking at it where the 8+6pin is on the top left) is
45k, none, none, 25k.
and on the right side, it's
none, 45k, 25k, none.
(note this one is upside down when looking at it with the power connectors on the top left)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on September 19, 2019, 09:35:14 am
Anyone has bios dump of K2?
The one I used from HP is missing InfoROM and it looks like causing compatibility issue on certain system.

PMed you a link to it

Your Messagebox is full!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on September 19, 2019, 09:45:06 am
For K10 to K2, its U504 and U513

Resistor packaging is 0402 and I used this one

https://www.digikey.com/products/en?keywords=P40.2KDCCT-ND (https://www.digikey.com/products/en?keywords=P40.2KDCCT-ND)


There might be some compatibility issue with some system which Im struggling with Dell R720

I think I really need proper bios dump
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: yuyun002002 on September 19, 2019, 12:39:36 pm
i sucessed k2=>k10 after change 2 resistors.
on dell r820, it works ok, but only with vsga, can not work with vGpu。
i think it may be due to the rom, so flashed with k2 rom(with override bord id), then system can not boot up, block by pcie scan.
i flashed back to k10 rom with other pc now.

Any one knows who to use vGPU , just like the real k2.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on September 19, 2019, 07:34:48 pm
i sucessed k2=>k10 after change 2 resistors.
on dell r820, it works ok, but only with vsga, can not work with vGpu。
i think it may be due to the rom, so flashed with k2 rom(with override bord id), then system can not boot up, block by pcie scan.
i flashed back to k10 rom with other pc now.

Any one knows who to use vGPU , just like the real k2.

Im pretty much same.
I flashed known K2 update bios from online and it worked fine in HP Z420
When I moved it to R720, it doesnt boot up at all.
I used HP bios and DELL bios and none of them boots up in R720.

Right now, im suspecting Inforom which is not included update bios from vender.
Waiting namgorf to share his dump :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: namgorf on September 19, 2019, 11:54:29 pm
Just noticed I didnt reply to your pm, sent you links to both bumps
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on September 20, 2019, 12:10:02 am
Just noticed I didnt reply to your pm, sent you links to both bumps

Your inbox is still full and I cant send you PM haha
anyway, what I wanted to say is that k2.rom and k2-2.rom are identical file (same HASH) ;)

I will keep tryin to send you PM if your inbox gets cleared haha
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on September 21, 2019, 01:12:35 am
I really dont get it.
I flashed ROM from namgorf and confirmed that it has InfoROM
Still having this screen on Dell R720
I updated latest firmware on R720 as well...
It works fine on HP Z420 but not on Dell R720

What am I missing  |O |O |O |O |O |O |O |O |O |O |O |O |O

[attachimg=1]
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: namgorf on September 21, 2019, 10:35:01 pm
Do you have a risercard in there, if so it could be bad. I also read somewhere that the R720 requires a dual 1100W PSU for certification and support of tesla and grid cards, confirm you've got the power delivery on the dell.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Black Phoenix on September 24, 2019, 07:33:51 am
Related with this subject, an Youtuber that is registered in this forum just used this topic as a reference for his project:

https://www.youtube.com/watch?v=8Qm9IbSHkus (https://www.youtube.com/watch?v=8Qm9IbSHkus)

https://www.youtube.com/watch?v=YfcKDJSztKM (https://www.youtube.com/watch?v=YfcKDJSztKM)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: namgorf on September 24, 2019, 10:30:02 pm
I watched these last night, very awesome. New sub from me.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: NobleX13 on October 11, 2019, 02:01:28 pm
I really dont get it.
I flashed ROM from namgorf and confirmed that it has InfoROM
Still having this screen on Dell R720
I updated latest firmware on R720 as well...
It works fine on HP Z420 but not on Dell R720

What am I missing  |O |O |O |O |O |O |O |O |O |O |O |O |O

(Attachment Link)

Did you ever get past this?  You could say I am following in your footsteps from the shadows.  I just converted a Tesla K10 into an NVIDIA GRID K2 yesterday and I get the same result on my PowerEdge R720.

I soldered the strap resistors, reassembled the card with new thermal paste, and flashed the "2014" BIOS to each GPU.  I did notice the "PLX" entry in nvflash but didn't do anything with that.  Was I supposed to? The SHA256 hash of the BIOS file I flashed was BB04DF8552BF60B827E1C963B1D8527386D9448D554BC01799CE7F8605763951

My R720 has dual E5-2650 V2s, 128GB of PC3L-12800R, and dual 750W power supplies.  I saw the other post here about power delivery, but this card has a max power consumption at full load of maybe 200W, and my system power readout is only sitting at 280W with this GPU installed.  I am using a quick and dirty homemade power cable.  Please excuse the WAGO Lever Nuts.  I triple-checked the pinout and continuity with a multimeter, for what it's worth.

Right now I am using the riser connected to CPU2, because it was easier to install the card over there.  I ran out of time for troubleshooting last night.  I did not try the other riser, removing all other PCI-e cards, or enabling "Above 4G decoding" in the BIOS yet.  That is on the agenda for tonight.

I am running a BIOS version from 2016 to avoid the Spectre/Meltdown microcode mitigation.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: foxxer on October 25, 2019, 04:51:35 am
Hello. Sorry for my English(using translator). Who knows how to use the HEX editor and understanding of the work of video card BIOS? I ask for help, it will not take much time, if there is knowledge.

I have a Quadro 2000 1Gb DDR5 card
There is a desire to flash it as a GTS450

There is info that for the reverse operation, i.e. for GTS450 firmware ---> Quadro 2000 need to alter the straps with the command:
C: \> nvflash --index = X --strap 0x7FFC2FFF 0x10006000 0x7fffffff 0x00000000

Those. IDs for cards differ, for picking up by drivers:
GTS 450 - 0x0DC4 - 0000 1101 1100 0100
Quadro 2000 - 0x0DD8 - 0000 1101 1101 1000

Tell me, what command should I type in NVFLASH with Q2000 so that the ID from the GTS450 is registered in BIOS?
Goal - so that the system after flashing a QUADRO 2000 card identifies it as a GTS450 and works with Geforce drivers

Thank you for support
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: acidice333 on October 31, 2019, 09:18:22 pm
Could I get the K2 with the inforom dump too? :D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: foxxer on November 01, 2019, 05:45:00 am
here is rom for my Quadro 2000
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: n_lona on December 07, 2019, 01:30:31 pm
Hi thanks for let me in.
Is there any previous attempt to turn an EVGA gtx 1050ti and gt 710 into their respectivetly professional couterparty (suppose the first should be a quadro m2000 pascal and ..)
Is there any way to hack cudnn libraries making system believing that on board card is a quadro or better?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: martos on December 17, 2019, 11:42:06 am
Hello all,

I have a real Nvidia K10 , and i want transform it in Nvidia Grid 2
so
tesla k10           none                                                40K                                                  None                                         25k                                                                             
TO
grid k2              none                                                40K                                                  20K                                           none

I have the real gpu bios of Grid K2 ( Craft Computing have post a link in youtube, and i tested with the software KeplerBiosTweaker_1.27 , it seem ok )

I see where is it  ( https://www.youtube.com/watch?v=YfcKDJSztKM&t=1221s (https://www.youtube.com/watch?v=YfcKDJSztKM&t=1221s) at time 12:00 )

I see a link to the buy a 40k https://www.digikey.com/products/en?keywords=P40.2KDCCT-ND (https://www.digikey.com/products/en?keywords=P40.2KDCCT-ND)
But i need a 20K too

Could you validate the filter i put :

Filter : Panasonic ERA-xA Series 0.1 % 0402 1005 25 PPM / C 50 V SMD/SMT Thin Film Resistors Thin Film Resistors - SMD
result : https://www.mouser.fr/Passive-Components/Resistors/Film-Resistors/Thin-Film-Resistors-SMD/ERA-xA-Series/_/N-7gz44?P=1z0wdwsZ1z0z7ymZ1z0vpm5Z1z0x83kZ1yzmoucZ1yzmoubZ1y95jjmZ1y9oo9v (https://www.mouser.fr/Passive-Components/Resistors/Film-Resistors/Thin-Film-Resistors-SMD/ERA-xA-Series/_/N-7gz44?P=1z0wdwsZ1z0z7ymZ1z0vpm5Z1z0x83kZ1yzmoucZ1yzmoubZ1y95jjmZ1y9oo9v)


If someone want a dump of the tesla K10 biso , i can send it.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: martos on December 17, 2019, 07:20:08 pm
Could someone can confirm this reference :

10K
ERA-2AEB103X
15K
ERA-2AEB153X
20 K
ERA-2AEB203X‎
25K
667-ERA-2AEB2492X
40 k
ERA-2AEB4022X‎
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: DDSD on January 17, 2020, 06:37:07 am
Hello. If any solution can you help me with PNY GTS450 to Q2000.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on January 29, 2020, 11:21:17 pm
I really dont get it.
I flashed ROM from namgorf and confirmed that it has InfoROM
Still having this screen on Dell R720
I updated latest firmware on R720 as well...
It works fine on HP Z420 but not on Dell R720

What am I missing  |O |O |O |O |O |O |O |O |O |O |O |O |O

(Attachment Link)

Did you ever get past this?  You could say I am following in your footsteps from the shadows.  I just converted a Tesla K10 into an NVIDIA GRID K2 yesterday and I get the same result on my PowerEdge R720.

I soldered the strap resistors, reassembled the card with new thermal paste, and flashed the "2014" BIOS to each GPU.  I did notice the "PLX" entry in nvflash but didn't do anything with that.  Was I supposed to? The SHA256 hash of the BIOS file I flashed was BB04DF8552BF60B827E1C963B1D8527386D9448D554BC01799CE7F8605763951

My R720 has dual E5-2650 V2s, 128GB of PC3L-12800R, and dual 750W power supplies.  I saw the other post here about power delivery, but this card has a max power consumption at full load of maybe 200W, and my system power readout is only sitting at 280W with this GPU installed.  I am using a quick and dirty homemade power cable.  Please excuse the WAGO Lever Nuts.  I triple-checked the pinout and continuity with a multimeter, for what it's worth.

Right now I am using the riser connected to CPU2, because it was easier to install the card over there.  I ran out of time for troubleshooting last night.  I did not try the other riser, removing all other PCI-e cards, or enabling "Above 4G decoding" in the BIOS yet.  That is on the agenda for tonight.

I am running a BIOS version from 2016 to avoid the Spectre/Meltdown microcode mitigation.

I did everything I could do on R720 but it didnt work.
I was thinking about purchasing real K2 for test but got more important projects to do.

I tested on two different R720 but same issue.
One was with V1 cpu and the other was V2

Only common thing that I can see now is 750W power supply.

Have you solved the problem?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: martos on February 02, 2020, 05:28:10 pm
Hello,
an another solution to try if it's works , take an PC Desktop in windows 10 , put the real power VGA cable ( One 8 pins and One 6 pins ) , of course keep a video card ( so you need 2 * 16X PCI E ) .
If windows detect Grid K2, ( first good point)
  launch "GPU Z" software, choose the card 1 or 2, and make a backup of the Bios.
Compare the bios with K2 bios ( with no error it's the second good point )
Use KeplerBiosTweaker_1.27
and you can optimise the consumation of the card and putin the modfied bios in your 2 cards

I make a image of what i need to change in the K10 to change it in Grid K2, could you confirme its ok please?

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on February 04, 2020, 08:17:26 am
Hello,
an another solution to try if it's works , take an PC Desktop in windows 10 , put the real power VGA cable ( One 8 pins and One 6 pins ) , of course keep a video card ( so you need 2 * 16X PCI E ) .
If windows detect Grid K2, ( first good point)
  launch "GPU Z" software, choose the card 1 or 2, and make a backup of the Bios.
Compare the bios with K2 bios ( with no error it's the second good point )
Use KeplerBiosTweaker_1.27
and you can optimise the consumation of the card and putin the modfied bios in your 2 cards

I make a image of what i need to change in the K10 to change it in Grid K2, could you confirme its ok please?

correct
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: martos on February 06, 2020, 12:27:49 am
Thank's a lot !
another trouble who can have in some server, the pci-e on some server don't give th good power. ( i have the trouble on some proliant G5 )
So i add a pci-x riser with a molex :
https://www.pc-adapter.net/product/732.html (https://www.pc-adapter.net/product/732.html)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: martos on February 19, 2020, 08:15:30 am
some news :
https://www.youtube.com/watch?v=ykb8u4oGyF0 (https://www.youtube.com/watch?v=ykb8u4oGyF0)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Pavlogal on February 29, 2020, 09:01:13 pm
I got an ASUS P104-100 mining specific GPU which has the same PCB and specs as an ASUS GTX 1080 TURBO (other than maybe CUDA cores) and thus could be flashed into a GTX 1080 or 1070 GDDR5X in case there really are only 1920 CUDA cores on board. The reason anyone would want to turn it into a 1080/1070 is beacuse P104 is SERIOUSLY BIOS limited. PCIe is dropped to 1.1 (PCIe 3.0 hardware), VRAM is limited to 4GB (8GB installed) and video output is disabled (even though this card has video output ports). The device ID of a 1080 is x1B80 and P104's is x1B87, so I just need to find the resistors that determine the 4th symbol and then test what resistances equate to what values.

I don't know if something has changed in the meantime, someone on the LTT forum said they transplanted an entire P106 chip onto a GTX 1060 board and it didn't work unless there was a P106 BIOS flashed, basically it behaved like straps don't exist or are somehow the same for both cards. Maybe that's not correct and strap modding would work, but if it is correct maybe it's baked into the chip or some other component, I simply don't have a way of knowing because I couldn't find any info about that on Pascal.

Here are the docs I found: https://buildmedia.readthedocs.org/media/pdf/envytools/latest/envytools.pdf

I would like to know how device ID is determined on Pascal, if it's same as it has been before. What's the easiest way to identify which resistors are used for the 4th value of device ID? I know there is probably an answer in this thread but it's so massive my eyes fell off reading it...
I would also like to know about any secondary strap functions that could have been changed on the P104 (in case video output is disabled via straps I would need to change that too).

I really hope nothing has changed and that a simple strap mod would unlock it's full potential. Also if anyone has a GTX 1070 with GDDR5X memory please PM me your GPU BIOS and GPU-Z screenshot, so I have everything I need in case it does only have 1920 CUDA cores on board (which it most likely does).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on March 09, 2020, 06:13:40 pm
Hi Modders,

first off, thank you very much for sharing this awsome knowledge - :clap:

.. got myself a gt640 wich will undergo some resistor soldering soon.

I am writing this post to ask, if anybody knows if the Tesla K40 is modabble in a similar way ?

I think its the same PCB like a Quatto 6000, is that correct ?

Could it be modded into a K2 or any other Card for that matter ?

I would like to use it in the VMware Host with the "vCPU" Feature.

Looking forward to get some insights from the experts.

Thanks !


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on March 18, 2020, 09:51:22 am
Hi Modders,

first off, thank you very much for sharing this awsome knowledge - :clap:

.. got myself a gt640 wich will undergo some resistor soldering soon.

I am writing this post to ask, if anybody knows if the Tesla K40 is modabble in a similar way ?

I think its the same PCB like a Quatto 6000, is that correct ?

Could it be modded into a K2 or any other Card for that matter ?

I would like to use it in the VMware Host with the "vCPU" Feature.

Looking forward to get some insights from the experts.

Thanks !

Only known GRID converion is from Tesla K10 to GRID K2
Just get K10 from ebay and convert to K2 for vGPU
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: PKTKS on March 18, 2020, 03:00:21 pm
(..)
(not duplicated URIs again)

I follow this thread rather curious...

I wonder how that folk with a substantial expensive hardware
like that ... (he's not cheap)  .. 

How he can breathe high density FLUX just 5 cm  with DIRECT INHALE
and DIRECT EYE contact...  may be that glass of alcohol helps...

Paul  :-+
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on March 19, 2020, 07:05:05 am
I really dont get it.
I flashed ROM from namgorf and confirmed that it has InfoROM
Still having this screen on Dell R720
I updated latest firmware on R720 as well...
It works fine on HP Z420 but not on Dell R720

What am I missing  |O |O |O |O |O |O |O |O |O |O |O |O |O

(Attachment Link)

Did you ever get past this?  You could say I am following in your footsteps from the shadows.  I just converted a Tesla K10 into an NVIDIA GRID K2 yesterday and I get the same result on my PowerEdge R720.

I soldered the strap resistors, reassembled the card with new thermal paste, and flashed the "2014" BIOS to each GPU.  I did notice the "PLX" entry in nvflash but didn't do anything with that.  Was I supposed to? The SHA256 hash of the BIOS file I flashed was BB04DF8552BF60B827E1C963B1D8527386D9448D554BC01799CE7F8605763951

My R720 has dual E5-2650 V2s, 128GB of PC3L-12800R, and dual 750W power supplies.  I saw the other post here about power delivery, but this card has a max power consumption at full load of maybe 200W, and my system power readout is only sitting at 280W with this GPU installed.  I am using a quick and dirty homemade power cable.  Please excuse the WAGO Lever Nuts.  I triple-checked the pinout and continuity with a multimeter, for what it's worth.

Right now I am using the riser connected to CPU2, because it was easier to install the card over there.  I ran out of time for troubleshooting last night.  I did not try the other riser, removing all other PCI-e cards, or enabling "Above 4G decoding" in the BIOS yet.  That is on the agenda for tonight.

I am running a BIOS version from 2016 to avoid the Spectre/Meltdown microcode mitigation.

I am still having same issue.
I tried multiple K2 BIOS but the issue is still there.
I also tried DELL K2 bios updater but didnt fix the problem (https://www.dell.com/support/home/uk/en/ukbsdt1/drivers/driversdetails?driverid=598p8 (https://www.dell.com/support/home/uk/en/ukbsdt1/drivers/driversdetails?driverid=598p8))
I found inforom from CISCO iso but it didnt really help.
I also suspected my RISER cable which was 9H6FV but wiring is correct and it provided 12V/GND in proper pins (tested with multi meter)

I googled alot and no one complained about compatability issue other than you and me.
Also saw few people uses K2 in R720 without any issue.

At this point, there are only three things left.

1. Requires 1100W
2. Proper inforom
3. 40k ohm is wrong.

Since K2 is working fine on other system, I think its gonna be either option 1 or option 2.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on March 20, 2020, 05:51:49 am
I really dont get it.
I flashed ROM from namgorf and confirmed that it has InfoROM
Still having this screen on Dell R720
I updated latest firmware on R720 as well...
It works fine on HP Z420 but not on Dell R720

What am I missing  |O |O |O |O |O |O |O |O |O |O |O |O |O

(Attachment Link)

Did you ever get past this?  You could say I am following in your footsteps from the shadows.  I just converted a Tesla K10 into an NVIDIA GRID K2 yesterday and I get the same result on my PowerEdge R720.

I soldered the strap resistors, reassembled the card with new thermal paste, and flashed the "2014" BIOS to each GPU.  I did notice the "PLX" entry in nvflash but didn't do anything with that.  Was I supposed to? The SHA256 hash of the BIOS file I flashed was BB04DF8552BF60B827E1C963B1D8527386D9448D554BC01799CE7F8605763951

My R720 has dual E5-2650 V2s, 128GB of PC3L-12800R, and dual 750W power supplies.  I saw the other post here about power delivery, but this card has a max power consumption at full load of maybe 200W, and my system power readout is only sitting at 280W with this GPU installed.  I am using a quick and dirty homemade power cable.  Please excuse the WAGO Lever Nuts.  I triple-checked the pinout and continuity with a multimeter, for what it's worth.

Right now I am using the riser connected to CPU2, because it was easier to install the card over there.  I ran out of time for troubleshooting last night.  I did not try the other riser, removing all other PCI-e cards, or enabling "Above 4G decoding" in the BIOS yet.  That is on the agenda for tonight.

I am running a BIOS version from 2016 to avoid the Spectre/Meltdown microcode mitigation.

I am still having same issue.
I tried multiple K2 BIOS but the issue is still there.
I also tried DELL K2 bios updater but didnt fix the problem (https://www.dell.com/support/home/uk/en/ukbsdt1/drivers/driversdetails?driverid=598p8 (https://www.dell.com/support/home/uk/en/ukbsdt1/drivers/driversdetails?driverid=598p8))
I found inforom from CISCO iso but it didnt really help.
I also suspected my RISER cable which was 9H6FV but wiring is correct and it provided 12V/GND in proper pins (tested with multi meter)

I googled alot and no one complained about compatability issue other than you and me.
Also saw few people uses K2 in R720 without any issue.

At this point, there are only three things left.

1. Requires 1100W
2. Proper inforom
3. 40k ohm is wrong.

Since K2 is working fine on other system, I think its gonna be either option 1 or option 2.

I just ordered 2x 1100W power supploy for R720 and will arrive end of next week.
This will eliminate one of possibility.

I will update the thread once I test it.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on March 21, 2020, 10:43:19 pm
did two gtx640 to grid k1 and one gtx670 to grid k2.

That SMD soldering is done best with good soldering equipment.

I realized due to a non working resistor contact to PCB, one gtx640 id'd itself as a grid k340, so i guess you could also mod it to a k340.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 04, 2020, 12:43:05 am
I really dont get it.
I flashed ROM from namgorf and confirmed that it has InfoROM
Still having this screen on Dell R720
I updated latest firmware on R720 as well...
It works fine on HP Z420 but not on Dell R720

What am I missing  |O |O |O |O |O |O |O |O |O |O |O |O |O

(Attachment Link)

Did you ever get past this?  You could say I am following in your footsteps from the shadows.  I just converted a Tesla K10 into an NVIDIA GRID K2 yesterday and I get the same result on my PowerEdge R720.

I soldered the strap resistors, reassembled the card with new thermal paste, and flashed the "2014" BIOS to each GPU.  I did notice the "PLX" entry in nvflash but didn't do anything with that.  Was I supposed to? The SHA256 hash of the BIOS file I flashed was BB04DF8552BF60B827E1C963B1D8527386D9448D554BC01799CE7F8605763951

My R720 has dual E5-2650 V2s, 128GB of PC3L-12800R, and dual 750W power supplies.  I saw the other post here about power delivery, but this card has a max power consumption at full load of maybe 200W, and my system power readout is only sitting at 280W with this GPU installed.  I am using a quick and dirty homemade power cable.  Please excuse the WAGO Lever Nuts.  I triple-checked the pinout and continuity with a multimeter, for what it's worth.

Right now I am using the riser connected to CPU2, because it was easier to install the card over there.  I ran out of time for troubleshooting last night.  I did not try the other riser, removing all other PCI-e cards, or enabling "Above 4G decoding" in the BIOS yet.  That is on the agenda for tonight.

I am running a BIOS version from 2016 to avoid the Spectre/Meltdown microcode mitigation.

I am still having same issue.
I tried multiple K2 BIOS but the issue is still there.
I also tried DELL K2 bios updater but didnt fix the problem (https://www.dell.com/support/home/uk/en/ukbsdt1/drivers/driversdetails?driverid=598p8 (https://www.dell.com/support/home/uk/en/ukbsdt1/drivers/driversdetails?driverid=598p8))
I found inforom from CISCO iso but it didnt really help.
I also suspected my RISER cable which was 9H6FV but wiring is correct and it provided 12V/GND in proper pins (tested with multi meter)

I googled alot and no one complained about compatability issue other than you and me.
Also saw few people uses K2 in R720 without any issue.

At this point, there are only three things left.

1. Requires 1100W
2. Proper inforom
3. 40k ohm is wrong.

Since K2 is working fine on other system, I think its gonna be either option 1 or option 2.

I just ordered 2x 1100W power supploy for R720 and will arrive end of next week.
This will eliminate one of possibility.

I will update the thread once I test it.

I got 1100W today....
Same shit happens...

 |O |O |O |O |O |O |O |O |O |O |O
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 12, 2020, 01:28:56 pm
A short udpate:

I managed to get the gtx 670 => K2 and the gtx 640 (2GB) => K1 to get recognized by esx 5.5 (it was a bumby ride)

Driver used: "NVIDIA-kepler-VMware_ESXi_5.5_Host_Driver_367.106-1OEM.550.0.0.1331820"

After installing vCenter i also can enable 3D Support for the guest and the vm (must be Generation 8 or higher) is able to run Furmark inside the VM.

I think its running in sVGA Mode. As i am fairly new to esx i am not sure how to set it to vgpu in esx, anyone can give me a hint ?

My gtx 640 (1GB) => K1 is not recognized by esx, but i think i made a mistake while modding the bios - i will try to fix that today.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 13, 2020, 01:24:14 pm
That is awesome mcerveny.

I could too think of a dip-switch "piano" for setting the cards ID

Can we get a closer picture of PCB were you soldered the cables on the PCB. I am interest in this because if there is an easy way to to this, you dont need to solder those tiny 0402 SMD resistors directly to the PCB and could use regular size resistors.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 15, 2020, 07:54:57 am
... well done

i am getting a k10 in a few and will try to make it a grid k2.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 20, 2020, 01:30:55 pm
Hi Guys,

got my K10 in the mail today.

As per post (attached pic in the following post):

https://www.eevblog.com/forum/general-computing/hacking-nvidia-cards-into-their-professional-counterparts/msg2899670/#msg2899670 (https://www.eevblog.com/forum/general-computing/hacking-nvidia-cards-into-their-professional-counterparts/msg2899670/#msg2899670)

20 k resistors have to get removed and 40k resistors added.

But this conflicts with the following table as per post:

https://www.eevblog.com/forum/general-computing/hacking-nvidia-cards-into-their-professional-counterparts/msg2832956/#msg2832956 (https://www.eevblog.com/forum/general-computing/hacking-nvidia-cards-into-their-professional-counterparts/msg2832956/#msg2832956)

Can anyone confirm, the way of first link with pic is the correct one, as it seems to be reading the posts following after that.

Also, i think i need to flash the grid k2 bios after modding the resistors, is this correct and in case it is, which one should i use ?

I searched the thread and it would be nice if somene who successfully modded k10 => grid k2 can summarize how its done (in detail).

It would be a valueable addition to this thread to have the mod in written form even though there is this video on youtube.

thanks a lot!


edit: resistors as described in pic of post #1411 (first link of this post) works for grid k2 PCI ID ... next step will be the bios.

will update soon.


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: RoGeorge on April 20, 2020, 02:51:19 pm
Hello.

I checked this thread after many years but nothing changes (still replacing resistors on SPI lines  :D).
A few years ago I challenged myself to enable GTX/RTX/Quadro cards for vGPU paravirtualization and I was successful.

Check this: https://gridforums.nvidia.com/default/topic/8934/ (https://gridforums.nvidia.com/default/topic/8934/)

The presented solution is proving that there is no differences between the same chip in GTX-Quadro-Tesla lines and all is about "software".
The solution is useful for virtualization only! It enables the vGPU feature for compatible GTX/RTX/Quadro cards to TESLA/GRID counterparts like M10,M60,P4,T4. It does not modify host installed card (no HW mod, no vBIOS mod, no SW driver modification, probably EULA compliant). It also relaxes all NVIDIA "crippled/throttled" vGPU features to guests (like GPU MEM limits, number of emulated monitors (max 4), resolution of monitors, CUDA...). It does not remove NVIDIA license (to be compliant).

It's great to hear about successful mods.   :-+

I've tried about two years ago to passthrough a GTX760 card with either Xen or Proxmox, and failed.  No idea if the fail was because of my lack of skills, lack of the proper SW patches, or the lack of proper hardware.  At most, Windows 7 was detecting the videocard, but nVidia drivers were refusing to install saying something about no nVidia GPU was present.

Later, I've read that only Quadro cards and alike can be video passtgrough, no matter what hypervisor is used (and GeForce cards will not work because of software limitations imposed by nVidia).

- Is it possible to passthrough a GTX760 without hardware modding?
- If not, does the method of changing the resistors applies to GTX760, too?
- Is the following hardware configuration enough for video passthrough, please?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 23, 2020, 03:34:46 pm
I know KVM is able to passthrough any nvidia card to the guest.
It is capable of hiding the virtualization to the guest.

i did this succesfully many times with gtx 10xx cards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 24, 2020, 03:20:02 pm
lol, i just saw mcerveny already mentioned kvm's capabilty to passthrough.

@mcerveny: i am intrigued by your "magic script" - out of interest, do you think your software mod could be transfered to esxi (for homelab)?

Plus i see you did use fedora with xen kernel, so it should be appliable to any distribution with xen kernel?

How long did it take to successfuly use your sw mod including research, writing the script ?

It is really f* up how nvidia rips of customers by selling basically the same hardware.

Appreciate some info on this - Thank you

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 25, 2020, 12:25:33 pm
lol, i just saw mcerveny already mentioned kvm's capabilty to passthrough.

@mcerveny: i am intrigued by your "magic script" - out of interest, do you think your software mod could be transfered to esxi (for homelab)?

Plus i see you did use fedora with xen kernel, so it should be appliable to any distribution with xen kernel?

How long did it take to successfuly use your sw mod including research, writing the script ?

It is really f* up how nvidia rips of customers by selling basically the same hardware.

Appreciate some info on this - Thank you

vGPU and pass through is different
I was able to use vGPU function with ESXi 6.5 without any issue after modding from K10 to K2
Only problem that Im still facing is compatability issue with Dell R720
It works fine on other workstation but not in R720
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 25, 2020, 01:34:30 pm
Yes, of course vgpu!=passthrough even though both need vt-d capable mobo :)

My new homelab setup will be exactly like this... modded k10s => grid k2 running vgpu in esxi 6.5.

Can you confim windows 10 guests will install and run the k2 drivers, cause xenserver 6.2 seems not be able to do this as per videos from reply #1400 on page 57.

Right now i am waiting for the 3d printed active coolers for the modded k10s as i wont use 19" servers.

Also havent flashed k2 bios yet, but this will be easy.

Anyway, thank you for the reply and the valuable info that our beloved modded cards will run vgpu on esxi 6.5.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 25, 2020, 01:46:01 pm
Wow, so it took a while to get to the goal  ;D

As i wrote in my previous post i will go for esxi as i did the resistor mod to my cards.

I tip my hat in regards to your software mod, well done !

Thank you, i do like it when someone discovers ways around vendor specific limitations.

 :-+
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: coolo on April 27, 2020, 10:49:16 am
mcerveny, hi
Your magic script is very interesting script for me, I have 1080ti, but want to try how work grid in rdp sessions... :)
I never used virtualization, but I think, that I can't write same this magic script, because I have not any grid card as etalon, for discover how it works and after put 1080ti and see any diffs for future script... Is it true?
Could you make this mod without grid card?
Thanks
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: coolo on April 27, 2020, 01:35:50 pm

The magic script is the last part of VDI puzzle.
(btw. RDP does not use accelerated GPUs until you unlock it in registry - https://lmgtfy.com/?q=rdp+use+accelerated+GPU+registry (https://lmgtfy.com/?q=rdp+use+accelerated+GPU+registry))
Yes, I tried it with my GTX 1080ti, my rdp server with 1 rdp session was PC with win10 pro, and slave was laptop with win 10 pro... I turned on in registtry acceleration but it doesn't work...
And I thought, that grid card can help me.... And easiest way to try it was your decision :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 28, 2020, 07:20:14 am

The magic script is the last part of VDI puzzle.
(btw. RDP does not use accelerated GPUs until you unlock it in registry - https://lmgtfy.com/?q=rdp+use+accelerated+GPU+registry (https://lmgtfy.com/?q=rdp+use+accelerated+GPU+registry))
Yes, I tried it with my GTX 1080ti, my rdp server with 1 rdp session was PC with win10 pro, and slave was laptop with win 10 pro... I turned on in registtry acceleration but it doesn't work...
And I thought, that grid card can help me.... And easiest way to try it was your decision :)

Hey coolo,

can you summarize what exactly you want to achieve and what your setup (harware operating system etc) is like ?

Maybe we can help you out better then.

cheers
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: coolo on April 28, 2020, 08:57:04 am
Yes, sorry that I choose decision without description not my problem...

At the end I want get:
RDP host for work through thin client
Working 3D acceleration in RDP for work witch CAD application and rendering.

Now I have 2x1080ti. Work with CAD in obviously PC with cards.
But I want RDP :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 28, 2020, 10:02:48 am
Yes, sorry that I choose decision without description not my problem...

At the end I want get:
RDP host for work through thin client
Working 3D acceleration in RDP for work witch CAD application and rendering.

Now I have 2x1080ti. Work with CAD in obviously PC with cards.
But I want RDP :)

Alright,

Windows Server has its own hw-acceleration for vgpu called "RemoteFX", i havent used that yet, and i am not sure if the consumer cards like the gtx 1080 are supported:

You have to research if a gtx 1080 will work.

This should point you in the right direction:

https://github.com/MicrosoftDocs/windowsserverdocs/blob/master/WindowsServerDocs/virtualization/hyper-v/deploy/deploy-graphics-devices-using-remotefx-vgpu.md

Code: [Select]
Host system requirements:

    Windows Server 2016
    A DirectX 11.0-compatible GPU with a WDDM 1.2-compatible driver
    A CPU with Second Level Address Translation (SLAT) support

If this setup works, you will rdp to the server and use the hosts gpu for your cad applications installed on the host.

Also using hyper-v if you want to virtualize your cad boxes is possible (gpu passthrough)

Let us know how it goes...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 28, 2020, 10:19:36 am
@mcerveny

I am very interested your magic script
This is very exciting!! I didnt read few posts carefully and totally missed this golden information!


The presented solution is proving that there is no differences between the same chip in GTX-Quadro-Tesla lines and all is about "software".
The solution is useful for virtualization only! It enables the vGPU feature for compatible GTX/RTX/Quadro cards to TESLA/GRID counterparts like M10,M60,P4,T4. It does not modify host installed card (no HW mod, no vBIOS mod, no SW driver modification, probably EULA compliant). It also relaxes all NVIDIA "crippled/throttled" vGPU features to guests (like GPU MEM limits, number of emulated monitors (max 4), resolution of monitors, CUDA...). It does not remove NVIDIA license (to be compliant).

As you mentioned It does not remove NVIDIA license.
That means I still need to purchase GRID vPC license? ($50 per CCU subscription per year)

I really wanted to build home VDI infra with KVM support.
I was hoping K10 -> K2 mod will give me VDI in KVM but griddy nVIDIA do not support K1/K2 to work on KVM (not in grid but only with vgpu software)
Do you think its possible to bring K2 to support with vGPU5~10 software? or its better to start with vgpu software supported whatever GPU?

I was thinking about getting AMD S7150 for KMV support but if theres a hole in vgpu software, I really want to approach that way.

My ultimate goal is to run 16 VDI infra with Looking Glass(https://looking-glass.hostfission.com/)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 28, 2020, 01:49:01 pm
Maybe we shold crowdfound mcerveny to make his code open source and continue to develop on github as a team based project :D

Pretty sure this will p*ss off nvidia a lot and could trigger legal actions (?) but i'd also love to see the actual code, especially for homelab projects.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 28, 2020, 08:49:42 pm
Maybe we shold crowdfound mcerveny to make his code open source and continue to develop on github as a team based project :D

Pretty sure this will p*ss off nvidia a lot and could trigger legal actions (?) but i'd also love to see the actual code, especially for homelab projects.

I spend some time of reading mcerveny's post in gridforum.
It looks like he is using vGPU with proper license.
His magic script allows user to use consumer graded card to vGPU with legit license.

Unless someone pirate/cracks the license file, his magic script will not be useful that much (unless get eval license every 90 days with new account :-//)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 29, 2020, 06:07:06 am
... true indeed.

i remember the sh*tstorm when nvidia released its new licensing model.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 29, 2020, 07:06:35 am
... true indeed.

i remember the sh*tstorm when nvidia released its new licensing model.

Indeed, it seems to be easy crackable model if I didnt misunderstand the concept.
It looks like download license file from nvidia and load into local license server (java)
And local license server gets communicated with all otherr VDI VM and controls license bs

Am I understandig it correctly?
It looks like local license server can be run without synced to nvidia license server as long as it has license.bin file
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 29, 2020, 10:08:06 am
... then it should be worth having a look at this.

My reverse engineering skills may be a lil rusty, but i'd be in for the lulz.


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 29, 2020, 10:22:18 am
09:15:33,055 INFO  Starting FlexNet License Server 2018.09 (build 241024)
09:15:33,057 INFO  Copyright (C) 2013-2018 Flexera Software LLC.
09:15:33,057 INFO  All Rights Reserved.

They are utilizing 3rd party software to manage licenses.
 :popcorn: :popcorn: :popcorn:
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 29, 2020, 10:30:47 am
https://webcache.googleusercontent.com/search?q=cache:QiFwYJRxW0UJ:https://forum.exetools.com/showthread.php%3Ft%3D18864

I'll do some more research later, link contains some useful info.

@gotofbi : are you sure, there is no online check against nvidias backend ?

...because, unfortunately i think there is
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 29, 2020, 12:16:27 pm
https://webcache.googleusercontent.com/search?q=cache:QiFwYJRxW0UJ:https://forum.exetools.com/showthread.php%3Ft%3D18864

I'll do some more research later, link contains some useful info.

@gotofbi : are you sure, there is no online check against nvidias backend ?

...because, unfortunately i think there is

I only checked with nvidia's documentation.
I didnt see any mention that Virtual GPU Software License Server needs to be communicated with nvidia server
Moreover, the diagram doesnt say its communicating with nvidia server

(https://docs.nvidia.com/grid/ls/latest/common/graphics/grid-licensing-architecture.png)

Why do you think theres online check?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on April 29, 2020, 12:57:53 pm
Yes, true. But you must upload license file (license.bin) within 96 hour from download time from licensing portal. The file is locked to first ethernet MAC address. But guest drivers now communicate with NVIDIA (one driver parameter from over 700  :-/O - "RMNvTelemetryCollection" (https://gridforums.nvidia.com/default/topic/258/nvidia-virtual-gpu-technology/documentation-for-vgpu-configs/post/14610/#14610)) and you must login to NVIDIA to use "Geforce experience"...

So theoretically, if I have license file with knowing generated date and mac address, I should able to install in any VM and continue to use it right?  ::)
I checked guest driver configuration part and it looks like its only communicating with local license server.
I dont really care about "Geforce experience" as long as I can run DX application
However the license server is little overwhelming to reverse engineer it and Ill probably give up and move to MxGPU
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on April 29, 2020, 02:40:38 pm
... thanks for clarifying mcerveny and yes, its offtopic.

To get back on topic:

I soon will flash the k2 bios to the modded k10s.

https://drive.google.com/drive/folders/1jp824XrO6fn1bPTCbrFjUEVBtxTptB1Z

I guess the 2014 Version is preferable for this or is there any reason i should go for the 2013 Version ?

@mcerveny: one last lic question:

Since its pretty easy to change the MAC Adress of eth0, have you tried using the same lic File on another Subnet, would that be worth a try ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: friskydingo on May 06, 2020, 09:46:57 pm
I'm trying to mod a Quadro K1000M to a Geforce GT 630M. I have it reporting as a 630M under device manager and GPU-Z but its still showing as a K1000M because the device id hasn't changed.Are there resistors on the K1000M that I can modify or can I change the id in the bios?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on May 09, 2020, 07:15:10 am
off topic,
With hint and help of mcerveny, I made it work on KVM.
I dont have magic script and its all accomplished with binary patch so I cant release.

[attachimg=1]
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: BusyBerlinBear on June 06, 2020, 10:57:21 pm
Hi Guys.  This is my first post here so please be gentle!  :)

I'm sorry if this is not the right place to be posting this, but it looks like there's a load of people here that know what they are talking about when it comes to NVidia cards.

I have a Dell Alienware  NVIDIA Geforce MXM B GTX 770M 3GB Laptop Video Card HW6C9 which looks like someone tried to reprogram the BIOS and in the process knocked two components off the board.  Neither are identified and I could really do with some help identifying the missing components so I can replace them.

I have a heat station with a narrow nozzle so I shouldn't have a problem soldering the offending components back on, but really need to find out what they are or find a good reference that can point me in the right direction.

I know it's not the latest card, but it would be nice to get it up and running.

Thanks in advance.  Any advice would be really appreciated.

I am assuming I am looking at the BIOS chip here BTW and apologies for the bad photo.  It's as close as I could get with my crappy phone.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex_wilky on June 11, 2020, 06:45:57 am
hi, @gotofbi!
I got a great result - exactly the same as I wanted to get. If possible, tell us more details: what physical card was on the host, whether it was subjected to software or hardware alterations, what was done on the host where proxmox is installed, what packages are installed.
And of course I want to know what setting was made in the Windows 10 guest system. Thanks!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on June 18, 2020, 04:51:20 pm
Hi Guys.  This is my first post here so please be gentle!  :)

I'm sorry if this is not the right place to be posting this, but it looks like there's a load of people here that know what they are talking about when it comes to NVidia cards.

I have a Dell Alienware  NVIDIA Geforce MXM B GTX 770M 3GB Laptop Video Card HW6C9 which looks like someone tried to reprogram the BIOS and in the process knocked two components off the board.  Neither are identified and I could really do with some help identifying the missing components so I can replace them.

I have a heat station with a narrow nozzle so I shouldn't have a problem soldering the offending components back on, but really need to find out what they are or find a good reference that can point me in the right direction.

I know it's not the latest card, but it would be nice to get it up and running.

Thanks in advance.  Any advice would be really appreciated.

I am assuming I am looking at the BIOS chip here BTW and apologies for the bad photo.  It's as close as I could get with my crappy phone.

This looks like some resistors missing and i think the chip above is something Power/Voltage related.
Looking @pic i attached it seems to be one resistor and one diode (i might be wrong).
Now for the exact type of components, i don't know.

The picture is of ebay and you could try asking/ bother a seller to measure the resistor, but that Value might be off as this is a closed Circuit he would measure against.

Try to get one off of ebay which is defect, remove the missing components and solder them onto your card is my best guess here.

Cheers
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on June 18, 2020, 04:54:55 pm
@gotofbi - cudos !

offtopic:

Guys,

i virtualized 8 x 1060gb with kvm and they work pretty well.

One thing bugs me though, one of the cards is only delivering 1/3 of performance (KH/s) when running hashcat benchmark.

Anyone have a clue what might be causing this ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex_wilky on June 20, 2020, 05:18:56 am
i virtualized 8 x 1060gb with kvm and they work pretty well.

More details: the card has not been modified? Is pci-passthrough or vGPU made?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on June 20, 2020, 01:47:51 pm
i virtualized 8 x 1060gb with kvm and they work pretty well.

More details: the card has not been modified? Is pci-passthrough or vGPU made?

It's pci-passthrough - kvm can hide to the guest that it is a virtualized machine.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: alex_wilky on June 21, 2020, 05:36:12 am
It's pci-passthrough - kvm can hide to the guest that it is a virtualized machine.
Maybe the reason is that the PCI-Express slot with this card is x1/x4 instead of x8/x16? Try to rearrange the cards between each other in the slots and see if this reduction will remain or not.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: cresset on July 03, 2020, 06:41:23 am
I am interested in the solution of kvm and vgpu. Can anyone guide us which file should be patched?
I am working on nvidia-vgpu. It uses flexlm embedded and binary file (****64) format....so it should be doable

Quote
off topic,
With hint and help of mcerveny, I made it work on KVM.
I dont have magic script and its all accomplished with binary patch so I cant release.

Can you please elaborate little bit what need to be patched? is it the driver nvidia-ml or nvidia-vfio-vgpu or nvidia-vgpud in case of kvm?
i didn't understand which part of nvidia driver was patched by mcerveny?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Serj_82 on July 22, 2020, 07:31:27 am
Hello!
I want to try to make from Nvidia GTX 690 - Quadro K5000, as it is written in the instructions.
I took the video card to the workshop, I thought everything would be simple, but no ...
I got this question: what TYPE of resistor should be applied? Because, supposedly, knowing the parameter of the resistor (15K and 20K) is not enough.
Did anyone succeed in this manipulation with the GTX 690?
I ask for help, and thanks in advance!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on July 22, 2020, 10:37:05 am
smd type 0402, at least on all the cards i did
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Serj_82 on July 22, 2020, 11:30:24 am
smd type 0402, at least on all the cards i did


Thank you so much! The card was correctly identified in the system as Quadro K5000? Any special drivers needed?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on July 22, 2020, 12:01:56 pm
i havent done a quadro mod, only grid, but this worked and so should quadro mod.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Serj_82 on July 23, 2020, 01:03:13 pm
Good day!
Topic starter (gnif) answered me that he used 0603 packages.
Now I'm confused, which type is it - 0402 or 0603?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: colokarl on July 30, 2020, 06:53:27 am
I guess they both will do th job:

http://www.resistorguide.com/resistor-sizes-and-packages/ (http://www.resistorguide.com/resistor-sizes-and-packages/)

anyway, order both sizes and compare to stock ones, they're dirt cheap. i wont take the cards out to have a closer look, but for me i used 0402.

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on August 08, 2020, 12:56:07 am
Wow this thread is quite old!

Well a few days ago I decided to buy a cheap 660 Ti for $65 (Asus 660Ti-DC2-2gd5) in order to try out some of these mods here and learn more about graphics cards for virtualization purposes. I thought I would share some of my findings:

1. Modding into a quadro did not provide any performance benefits whatsoever. (SPECViewperf score was pretty bad especially in SNX) Mosaic and other workstation specifc features did not seem to show up in the Nvidia control panel, and even if they did show, they didn't work.

2. Modding into a grid K2 card, I was unable to get vGPU working in ESXi 6.5, but it might be possible in XenServer. I don't plan on bothering with vGPU on this old hardware anyway. If it is possible on newer consumer cards like the GTX 1060 that would be really cool to experiment with.

3. Using the card as-is unmodded works just fine with VMWare Horizon and I was able to get my 3 monitor thin client setup working with NVENC support. I tested this out with both the 660 Ti and a 1060 6GB along with an HDMI Dummy plug. Modding into a grid K2 allows you to bypass the need for any dummy plugs in horizon. This means that any consumer card should work just fine. There will be a file you need to install in order to get NVENC support if it doesn't already work with Horizon, however. Feel free to PM me for more info on this.

4. I found some old ATI FirePro v5700s and they pretty much destroyed the GTX660 Ti in certain SPECviewperf tests.  :-DD

5. There are some surface mount components near the die on the GPU package and they had some different values... I wonder if changing those can enable some features.

6. I would have been better off just buying a cheap card like a 1050 for $40 more and get better performance in Blender and Premiere Pro  |O

Huge thanks to everyone on this thread for all the contributions to this modding experiment. It was a pretty fun experience modding this card into all kinds of things. Well now that I have a card sitting around, I'm always interested in more cool graphics card experiments!

Mods done:
660 Ti -->  K5000, Grid K2, Tesla K10, 670




Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on August 08, 2020, 08:49:18 pm
Hello everyone,

I had an interesting thought today:

What if you could solder more VRAM onto cards?

Seems like a pretty ridiculous idea but the amount of VRAM on a graphics card is usually set by some resistors, where? I have no idea. But it does seem possible since these VRAM chips are really cheap and I happened to have a handful of a different GDDR5 chips in quantities of 256mb - 1Gb. Since the thread is about modding cards into their professional counterparts, one thing that's present on professional cards is a far higher amount of VRAM, so by the looks of it, I think it is very possible to add more VRAM on a graphics card!

This can potentially work on cards newer than kepler since a lot of cards have 3rd party variants with a larger size of VRAM.

Thanks,
From Krutav Shah
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: szolnoki on August 21, 2020, 06:51:32 am
Hi,

Have you already solved the issue between Dell R720 and GRID K2?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on September 25, 2020, 04:53:44 am
Hi,

Have you already solved the issue between Dell R720 and GRID K2?

AFAIK, the GRID K2 works properly with the DELL R720 as it is the x79 chipset and usually does not have a problem with this. Check BIOS for any settings that can help you to get the card working, such as 4G decoding for example.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on October 23, 2020, 07:34:34 am
Hi,

Have you already solved the issue between Dell R720 and GRID K2?

AFAIK, the GRID K2 works properly with the DELL R720 as it is the x79 chipset and usually does not have a problem with this. Check BIOS for any settings that can help you to get the card working, such as 4G decoding for example.


I couldnt make it work on R720 and gave up on modded K2 to work with R720.
Maybe its problem with Mod or I dotn know but it never worked on my R720.
After all, I need vGPU with KVM support and K2 cant support that feature.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on October 31, 2020, 06:45:43 pm
Yeah GRID K2 only works up to xen 7.1 and ESXi 6.5 so if you don’t have those then you are stuck with pass through.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: telvenes on November 06, 2020, 10:24:45 am
Hi,

Like the thread you started here. I thought I was smart when I bought an Nvidia P2000 card that would support vGPU which it obviously does not. Anyone have managed and hack this short to and get more vGPU?

Or may have some recommendations on cards that I can install in my PowerEdge R620. Preferably low profile since its what R620 is but not important.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 17, 2020, 11:47:33 am
What exactly you need? I have 2 1070 one with OC and with different
Ram Modules (micron and  samsung)

I got an ASUS P104-100 mining specific GPU which has the same PCB and specs as an ASUS GTX 1080 TURBO (other than maybe CUDA cores) and thus could be flashed into a GTX 1080 or 1070 GDDR5X in case there really are only 1920 CUDA cores on board. The reason anyone would want to turn it into a 1080/1070 is beacuse P104 is SERIOUSLY BIOS limited. PCIe is dropped to 1.1 (PCIe 3.0 hardware), VRAM is limited to 4GB (8GB installed) and video output is disabled (even though this card has video output ports). The device ID of a 1080 is x1B80 and P104's is x1B87, so I just need to find the resistors that determine the 4th symbol and then test what resistances equate to what values.

I don't know if something has changed in the meantime, someone on the LTT forum said they transplanted an entire P106 chip onto a GTX 1060 board and it didn't work unless there was a P106 BIOS flashed, basically it behaved like straps don't exist or are somehow the same for both cards. Maybe that's not correct and strap modding would work, but if it is correct maybe it's baked into the chip or some other component, I simply don't have a way of knowing because I couldn't find any info about that on Pascal.

Here are the docs I found: https://buildmedia.readthedocs.org/media/pdf/envytools/latest/envytools.pdf

I would like to know how device ID is determined on Pascal, if it's same as it has been before. What's the easiest way to identify which resistors are used for the 4th value of device ID? I know there is probably an answer in this thread but it's so massive my eyes fell off reading it...
I would also like to know about any secondary strap functions that could have been changed on the P104 (in case video output is disabled via straps I would need to change that too).

I really hope nothing has changed and that a simple strap mod would unlock it's full potential. Also if anyone has a GTX 1070 with GDDR5X memory please PM me your GPU BIOS and GPU-Z screenshot, so I have everything I need in case it does only have 1920 CUDA cores on board (which it most likely does).
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 17, 2020, 01:12:16 pm
Is it possible to change 1070 to P4000?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on November 24, 2020, 02:10:07 am
Hello everyone, I just want to say that Maxwell and above GPUs have PCI straps embedded on the chip so good luck trying to modify that. If you really wanted to try, you can fire up a KVM and set a passthrough for your card, but you will need to set some options, which include changing the PCI straps of the VFIO GPU and the vBIOS. Here is how I did it on my Proxmox KVM server:

args: -device 'vfio-pci,host=02:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=YOURVBIOS.rom,x-pci-vendor-id=0x10de,x-pci-device-id=0x11bf,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x0965' -device 'vfio-pci,host=02:00.1,id=hostpci0.1,bus=ich9-pcie-port-1,addr=0x0.1'

Note that you will need to change the PCI SUBSYS and PCE Device ID based on what card you have. For example, a grid K2 is 0x11BF, so I set that. Please also specify the correct romfile which you can get from techpowerup vbios collection. You will also have to change your PCIE root port, which you can find with LSPCI command. Mine was 02:00

Let me know if you had success. I had with a Kepler GPU (660Ti) because that's what is in my system right now, will have to pull out a 1080 later.

Oh and one more thing, I wrote a reddit post about the new vGPU killer which you all can use. It's the new Windows GPU-P paravirtualization and partitioning of GPUs. (Windows 10 Pro and Enterprise 20H2 update) https://www.reddit.com/r/sysadmin/comments/jym8xz/gpu_partitioning_is_finally_possible_in_hyperv/ (https://www.reddit.com/r/sysadmin/comments/jym8xz/gpu_partitioning_is_finally_possible_in_hyperv/)

Thank you for reading!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 24, 2020, 08:50:50 am
Dear Krutav,
thx for your idea, only for understanding i can install a KVM (Kernelbased Virtual Machine) where i can
Install a vbios from any device (example quadro P4000) and configure it to to start a vm with windows 10 and i have a quadro k4000 after in system, right?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on November 24, 2020, 11:11:47 pm
Dear Krutav,
thx for your idea, only for understanding i can install a KVM (Kernelbased Virtual Machine) where i can
Install a vbios from any device (example quadro P4000) and configure it to to start a vm with windows 10 and i have a quadro k4000 after in system, right?

Hello Bayx, I recommend you install proxmox VE because it implements KVM into a relatively low resource using OS. You can then use the arguments code that I put in the previous message and modify it according to your need. You can also go to techpowerup.com and download the VBIOS for the card, and upload it to your Proxmox machine according to the wiki guide that they have made for that. If it doesn't work for you, you can always try GPU-P that I detailed in the previous message. Thanks and let me know the results.
If more people want instructions for this, I can write a small guide possibly.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 25, 2020, 02:36:43 am
"If more people want instructions for this, I can write a small guide possibly"

I spend 10 beers 😊
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: RoGeorge on November 25, 2020, 10:06:02 am
If more people want instructions for this, I can write a small guide possibly.

Yes, please do!   :-DMM
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on November 25, 2020, 05:15:23 pm
"If more people want instructions for this, I can write a small guide possibly"

I spend 10 beers 😊

Don't worry friends I am working on the experiment right now and you will all have a guide in no time! Currently working: all Kepler cards work with PCI software spoofing on KVM. Pascal architecture is going to be tested next.

Update: My VM is running extremely slow for some reason (I may have tried to enable nested virtualization) so I am getting code 43 regardless of what is passed through. Will fix it first.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 25, 2020, 07:22:03 pm
I have no idea what about you talk :))) but i believe in you... Still waiting for a step by step method.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on November 25, 2020, 11:49:38 pm
I have no idea what about you talk :))) but i believe in you... Still waiting for a step by step method.

Alright, so there isn't too much to it, but you just need to make sure your system is capable of passthrough. You can search how to configure your KVM software for it. I am using Proxmox VE which is Debian linux.

For the QEMU configuration file, you first need to figure out what PCI device you want to passthrough. Let's bring up the remote SSH shell from Proxmox web interface.
Now the expectation with this guide is that you are already familiar with PCI passthrough on Proxmox and have a basic understanding of all this, if not, there is a great guide on the Proxmox Wiki.
Make sure your machine has been configured for passthrough before proceeding.

Code: [Select]
lspici -nn
Code: [Select]
02:00.0 VGA compatible controller (0300): NVIDIA Corporation GP104 (GeForce GTX 1080)
Okay, so we now know that our Nvidia GPU is on PCI root port 02:00.0.
Next, I created a Linux virtual machine and gave it ID of 100. I then proceeded to install Linux and set it up. To pass the GPU, I needed to shut down. To edit the configuration of the VM, we need to run the next line.
Code: [Select]
nano /etc/pve/local/qemu-server/100.confNow that you are inside your VM configuration, you will need to add this one line that lets us spoof our graphics card.
Code: [Select]
args: -device 'vfio-pci,host=02:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=NVP4000,x-pci-vendor-id=0x10de,x-pci-device-id=0x1BB1,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x11A3'In this code, there are a few things you will need to edit for yourself.

Code: [Select]
host=02:00.0Change this value according to what you got from running lspci -nn
Code: [Select]
romfile=YOURROM.romYou need to obtain the ROM for the graphics card that you choose to spoof as, so I went to techpowerup.com and downloaded Quadro P4000 BIOS. On techpowerup.com, you can also obtain the PCI device ID and the subsystem ID.
Code: [Select]
x-pci-device-id=0x1BB1Here, I have chosen my new Device ID to match that of the Quadro P4000.
Code: [Select]
x-pci-sub-device-id=0x11A3Here, I have chosen my new SubSystem ID to match that of the Quadro P4000.

Alright, we are ready to power on VM. Once VM is on, my graphics card automatically outputted to a monitor. Running lspci -nn on the guest VM revealed that it was indeed functioning as a Quadro P4000 instead of GTX1080, so we have successfully spoofed the graphics card!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 26, 2020, 11:39:59 am
Nice. Thx. I test it today first on my laptop.
i5 7300HQ (Vt-d=yes) Geforce1050ti (QUADRO P1000)

edit ON:
NOW I UNDERSTAND :) i hope my laptop is alive after this night
edit OFF
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 27, 2020, 12:35:38 am
Proxmox= done
vm= done (Windows 10 is running)
change to pcie Passthrough = failed (No IOMMU detected, please activate it.See Documentation for further information.)  :-X
In bios is only one place to change to vt-d on and off thats all. I think it does not work with my laptop HP Pavilion 17-ab303ng

i test it one more time i think i do something wrong....!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on November 27, 2020, 02:02:45 am
Proxmox= done
vm= done (Windows 10 is running)
change to pcie Passthrough = failed (No IOMMU detected, please activate it.See Documentation for further information.)  :-X
In bios is only one place to change to vt-d on and off thats all. I think it does not work with my laptop HP Pavilion 17-ab303ng

i test it one more time i think i do something wrong....!
Laptops don't have a very high success rate with VT-D so I recommend using a desktop. If you still want GPU virtualization, you can try out the new GPU partitioning on windows 10 with the reddit guide that I linked in the earlier post.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 27, 2020, 02:22:05 am
Proxmox= done
vm= done (Windows 10 is running)
change to pcie Passthrough = failed (No IOMMU detected, please activate it.See Documentation for further information.)  :-X
In bios is only one place to change to vt-d on and off thats all. I think it does not work with my laptop HP Pavilion 17-ab303ng

i test it one more time i think i do something wrong....!
Laptops don't have a very high success rate with VT-D so I recommend using a desktop. If you still want GPU virtualization, you can try out the new GPU partitioning on windows 10 with the reddit guide that I linked in the earlier post.

Ok. After Proxmox dismis then i test windows variant.... but i have good news

root@pve:~# dmesg |grep -e DMAR -e IOMMU -e AMD-Vi
[    0.007631] ACPI: DMAR 0x000000007AFA9000 0000CC (v01 HPQOEM 845E     00000001 HP   00040000)
[    0.040937] DMAR: IOMMU enabled
[    0.084938] DMAR: Host address width 39
[    0.084939] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[    0.084943] DMAR: dmar0: reg_base_addr fed90000 ver 1:0 cap 1c0000c40660462 ecap 19e2ff0505e
[    0.084944] DMAR: DRHD base: 0x000000fed91000 flags: 0x1
[    0.084947] DMAR: dmar1: reg_base_addr fed91000 ver 1:0 cap d2008c40660462 ecap f050da
[    0.084947] DMAR: RMRR base: 0x0000007a734000 end: 0x0000007a753fff
[    0.084948] DMAR: RMRR base: 0x0000007b800000 end: 0x0000007fffffff
[    0.084949] DMAR: ANDD device: 1 name: \_SB.PCI0.I2C0
[    0.084950] DMAR-IR: IOAPIC id 2 under DRHD base  0xfed91000 IOMMU 1
[    0.084951] DMAR-IR: HPET id 0 under DRHD base 0xfed91000
[    0.084951] DMAR-IR: x2apic is disabled because BIOS sets x2apic opt out bit.
[    0.084952] DMAR-IR: Use 'intremap=no_x2apic_optout' to override the BIOS setting.
[    0.086408] DMAR-IR: Enabled IRQ remapping in xapic mode
[    0.939698] DMAR: ACPI device "device:7e" under DMAR at fed91000 as 00:15.0
[    0.939708] DMAR: No ATSR found
[    0.939733] DMAR: dmar0: Using Queued invalidation
[    0.939735] DMAR: dmar1: Using Queued invalidation
[    0.948245] DMAR: Intel(R) Virtualization Technology for Directed I/O

iommu is running... stay tuned

"If you still want GPU virtualization" i want that my graficscard gf1070 transfors to a quadro p1000 vbios
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 27, 2020, 11:43:18 am
Passthrough is working but nvidia driver "cant find any driver for you system" and when i try to install it manually, says me error 43 !!!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on November 28, 2020, 03:04:34 am
Passthrough is working but nvidia driver "cant find any driver for you system" and when i try to install it manually, says me error 43 !!!

Same problem here, code 43 on windows. Keep in mind this is because of a few virtualization quirks, not that the nvidia driver isn't working. This means that there is further configuration required on the Proxmox KVM hypervisor to allow windows to work. Because I use Red Hat linux, I was able to do this and even get full legitimate Nvidia GRID vGPU drivers to install. Currently, I am working on getting my Red Hat VM to create a VM inside of it to passthrough this vGPU. Otherwise, it works just fine on linux. You will also need to set your CPU type to "host" in order to expose hardware features to your VM (Very important).

So far: I converted my GTX 1080 to a Tesla P4 with this VFIO modification, and have gotten vGPU driver to initialize. Quadro P4000 spoof also works too. I can also confirm this is fully working with Kepler cards. Currently verified working on Linux guest VM. Windows will require further configuration, including disable MSIs and nested Virtualization.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on November 29, 2020, 03:10:04 am
I dismissed with my laptop...(1050ti problem card) I test it with my PC.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on November 30, 2020, 03:06:15 am
Just an update everyone. I have tried to use the VFIO spoofing trick that I showed earlier. The problem is that I was unable to get the vGPU software on my Red Hat VM to work. The driver initializes, but because of my hardware being 11 years old, the vGPUs refused to bind to the guest VM. The same thing happened without VFIO. So my new plan is actually to reverse engineer the process of determining whether the installed graphics card is vGPU capable. To do this, a magic script is required, which is what user Mcerveny showed off earlier. Because he will not release the magic script to us, we will have to develop it ourselves. With that being said, I have already thought out a way to spoof the PCI IDs of the created vGPUs so that licensing is not necessary, but that is somewhat against the EULA. I had to sign up for the Nvidia GRID 90 day trial to obtain these special drivers.

So the magic script that we need will enable us to use any consumer graphics card with the same chip as a tesla product to act as a supported tesla-based vGPU card by tricking the vGPU-mgr service into thinking that there is a tesla so it can initialize. It shouldn't be too hard I hope. If you want to take a shot at tricking the driver, you can pm me to obtain the open-source Linux driver. I can also post some logs here from my testing.

Fake Tesla P4:
Code: [Select]
Nov 29 16:51:41 L1Proxmox kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 238
Nov 29 16:51:41 L1Proxmox kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module  450.89  Thu Oct 22 20:49:26 UTC 2020
Nov 29 16:51:42 L1Proxmox nvidia-vgpud[702]: Verbose syslog connection opened
Nov 29 16:51:42 L1Proxmox nvidia-vgpud[702]: Started (702)
Nov 29 16:51:42 L1Proxmox nvidia-vgpud[702]: Global settings:
Nov 29 16:51:42 L1Proxmox nvidia-vgpud[702]: Size: 16
Nov 29 16:51:42 L1Proxmox nvidia-vgpud[702]: Homogeneous vGPUs: 1
Nov 29 16:51:42 L1Proxmox nvidia-vgpud[702]: vGPU types: 401
Nov 29 16:51:42 L1Proxmox nvidia-vgpud[702]:
Nov 29 16:51:42 L1Proxmox kernel: NVRM: GPU at 0000:01:00.0 has software scheduler DISABLED with policy NONE.
Nov 29 16:51:43 L1Proxmox nvidia-vgpud[702]: pciId of gpu [0]: 0:1:0:0
Nov 29 16:51:43 L1Proxmox nvidia-vgpu-mgr[715]: notice: vmiop_env_log: nvidia-vgpu-mgr daemon started
Nov 29 16:51:43 L1Proxmox nvidia-vgpud[702]:
Nov 29 16:51:43 L1Proxmox nvidia-vgpud[702]: Physical GPU:
Nov 29 16:51:43 L1Proxmox nvidia-vgpud[702]: PciID: 0x0000 / 0x0001 / 0x0000 / 0x0000
Nov 29 16:51:43 L1Proxmox nvidia-vgpud[702]: Size: 52
Nov 29 16:51:43 L1Proxmox nvidia-vgpud[702]: DevID: 0x10de / 0x1bb3 / 0x10de / 0x0000
Nov 29 16:51:43 L1Proxmox nvidia-vgpud[702]: Supported vGPUs count: 14

Real GTX 1080 (Same GP104 chip as Tesla P4)
Code: [Select]
Nov 29 10:00:56 DellT3500-PVE kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 239
Nov 29 10:00:56 DellT3500-PVE kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module  450.89  Thu Oct 22 20:49:26 UTC 2020
Nov 29 10:00:58 DellT3500-PVE nvidia-vgpud[753]: Verbose syslog connection opened
Nov 29 10:00:58 DellT3500-PVE nvidia-vgpud[753]: Started (753)
Nov 29 10:00:59 DellT3500-PVE kernel: NVRM: GPU at 0000:02:00.0 has software scheduler DISABLED with policy NONE.
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: Global settings:
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: Size: 16
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: Homogeneous vGPUs: 1
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: vGPU types: 401
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]:
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: pciId of gpu [0]: 0:2:0:0
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpu-mgr[762]: notice: vmiop_env_log: nvidia-vgpu-mgr daemon started
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: GPU not supported by vGPU at PCI Id: 0:2:0:0 DevID: 0x10de / 0x1b80 / 0x10de / 0x0000
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: error: failed to send vGPU configuration info to RM: 6
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: PID file unlocked.
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: PID file closed.
Nov 29 10:00:59 DellT3500-PVE nvidia-vgpud[753]: Shutdown (753)
Nov 29 10:00:59 DellT3500-PVE systemd[1]: nvidia-vgpud.service: Main process exited, code=exited, status=6/NOTCONFIGURED
Nov 29 10:00:59 DellT3500-PVE systemd[1]: nvidia-vgpud.service: Failed with result 'exit-code'.

I hope this helps you all out in your discoveries!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 01, 2020, 11:35:53 pm
Hey Krutav,
Can you write me a complete solution without
"Error 43" Problem. For me is importand how can i spoof it as QUADRO.
I missed one more time i have no idea why... :/
Cant find working howto in the forums or in youtube... Everytime come the f...* Error 43 failure.

Best regards
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 03, 2020, 10:56:16 pm
Hey Krutav,
Can you write me a complete solution without
"Error 43" Problem. For me is importand how can i spoof it as QUADRO.
I missed one more time i have no idea why... :/
Cant find working howto in the forums or in youtube... Everytime come the f...* Error 43 failure.

Best regards
I tested all this on Linux, which works perfectly. On windows, you need to make sure that the CPU type is set to whatever CPU architecture you have. Because my CPU is Kaby Lake, I set that. I will not set it to host because there is some bug with the nested virtualization that is causing it to break. I actually found a solution to this on the proxmox forum somwhere, and while i dont have the link, it should be something about running Hyper V on proxmox with nested virtualization. I'd like to point out that the spoofing trick is intended for loading alternate drivers for something. It will NOT improve SPECviewperf scores or CAD performance on consumer hardawre. Quadro GPU uses far higher quality chips compared to geforce. I'll send some info later on as it comes up.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 04, 2020, 01:43:02 pm
Quote
It will NOT improve SPECviewperf scores or CAD performance on consumer hardawre. Quadro GPU uses far higher quality chips compared to geforce.

I know. Only Solidworks must see it as prof.card to open some features like Anti-Aliasing, i dont need more performance its enough power what GTX1070 brings.
I buy me a second machine to make experiments. This machine is a workstation i cant make experiments with it. January maybe can i test it.
Is Ryzen/nvidia combo good for this project?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 05, 2020, 12:36:17 am
Quote
It will NOT improve SPECviewperf scores or CAD performance on consumer hardawre. Quadro GPU uses far higher quality chips compared to geforce.

I know. Only Solidworks must see it as prof.card to open some features like Anti-Aliasing, i dont need more performance its enough power what GTX1070 brings.
I buy me a second machine to make experiments. This machine is a workstation i cant make experiments with it. January maybe can i test it.
Is Ryzen/nvidia combo good for this project?
Get an AMD GPU like RX480. It can be flashed with the vBIOS of a FirePRO and Radeon Pro Instinct GPUs. They are also far cheaper compared to Nvidia, which I wouldn't bother with because of its ridiculous price. I use Solidworks on my GTX 1060 and it works perfectly fine, haven't had any issues with it. Ryzen is great for the project because of the price to performance value.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 05, 2020, 01:10:38 am
Any link ? which firepro vbios?

Edit: I find some how to´s but only for RX480 to change it in a RX580 nothing about firepro w7100 or something like that.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 07, 2020, 01:09:37 am
Any link ? which firepro vbios?

Edit: I find some how to´s but only for RX480 to change it in a RX580 nothing about firepro w7100 or something like that.

You won't find any, but it shares the same chip as the Radeon instinct MI6. "Polaris 10 XT." This means that you can also flash it with the vBIOS for the Radeon Pro WX7100 which is a pretty good card. All you need is ATIFlash and the vBIOS file from techpowerup website. there is no tutorial for it right now. Here is the link for the vBIOS. https://www.techpowerup.com/vgabios/196721/196721 (https://www.techpowerup.com/vgabios/196721/196721)
I remember converting a junk FirePro to a consumer card so I could use a newer driver with it by flashing the vBIOS. Because the RX 480 8GB is so cheap now, this is not a very expensive mod to do, which I could recommend if you want to improve your CAD experience or unlock SR-IOV features.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 07, 2020, 10:44:30 pm
This is to tricky... Buy me ne hw for 2nd pc (server) Ryzen 3900X + RTX2080ti
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 08, 2020, 08:41:24 pm
This is to tricky... Buy me ne hw for 2nd pc (server) Ryzen 3900X + RTX2080ti
Yes... it is. That's why we have new technologies coming out all the time. Notably, GPU-P on windows allows you to partition any GPU for the VM for absolutely free on Hyper-V. It's far easier compared to all this hardware and software modding because it "just works."
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 09, 2020, 01:41:29 am
This is totaly new. No thx :)
My goal is now buy a new gpu (2080ti)
Install ubuntu 20/10
Install kvm
Configure a VM with gpu pathtrough
Spoof it as Quadro RTX4000 or 5000 <--- this point is very importand for me.
I find a cool video there everything explained how to install it on ubuntu.

 https://youtu.be/ID3dlVHDl0c

Only thing is can't find videos for spoofing gpus.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 12, 2020, 03:05:23 am
This is totaly new. No thx :)
My goal is now buy a new gpu (2080ti)
Install ubuntu 20/10
Install kvm
Configure a VM with gpu pathtrough
Spoof it as RTX6000 or 8000 <--- this point is very importand for me.
I find a cool video there everything explained how to install it on ubuntu.

 https://youtu.be/ID3dlVHDl0c

Only thing is can't find videos for spoofing gpus.

You can use the VFIO PCI spoof arguments that I posted earlier. It works flawlessly.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 12, 2020, 12:13:19 pm
This is totaly new. No thx :)
My goal is now buy a new gpu (2080ti)
Install ubuntu 20/10
Install kvm
Configure a VM with gpu pathtrough
Spoof it as RTX6000 or 8000 <--- this point is very importand for me.
I find a cool video there everything explained how to install it on ubuntu.

 https://youtu.be/ID3dlVHDl0c

Only thing is can't find videos for spoofing gpus.

You can use the VFIO PCI spoof arguments that I posted earlier. It works flawlessly.

Perfect thxxxx

Last questen is there any "error 43" problems with amd radeon cards?

PS Status : Sold my 2 GTX1070 now looking for 2080ti on Ebay 🤪
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 12, 2020, 09:13:31 pm
This is totaly new. No thx :)
My goal is now buy a new gpu (2080ti)
Install ubuntu 20/10
Install kvm
Configure a VM with gpu pathtrough
Spoof it as RTX6000 or 8000 <--- this point is very importand for me.
I find a cool video there everything explained how to install it on ubuntu.

 https://youtu.be/ID3dlVHDl0c

Only thing is can't find videos for spoofing gpus.

You can use the VFIO PCI spoof arguments that I posted earlier. It works flawlessly.

Perfect thxxxx

Last questen is there any "error 43" problems with amd radeon cards?

PS Status : Sold my 2 GTX1070 now looking for 2080ti on Ebay 🤪

There will only be a code 43 if you set it up incorrectly. You need to set CPU model to "host" if you want to tell windows it is a real machine and not VM. Because you are spoofing as a QUADRO RTX card, it does not matter because the drivers for those are allowed on VMs. On AMD, you will not get a code 43 because they are a bit nicer, but they will disable some features if you are not using Radeon FirePro because it has detected VM. Otherwise, I think you will be fine.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 15, 2020, 11:57:44 am
"but they will disable some features if you are not using Radeon FirePro"

what are these?

PS: My 2080ti (MSI Trio) is on the way to me   8)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 15, 2020, 08:41:52 pm
"but they will disable some features if you are not using Radeon FirePro"

what are these?

PS: My 2080ti (MSI Trio) is on the way to me   8)

What I am saying is that Nvidia disables GeForce driver on VM, but AMD does not. Instead, AMD disables a couple features according to the forums, but the GPU should still work. That only happens if you are using AMD gaming GPU without setting your KVM model to "host." If you are spoofing the GPU, you should be fine either way.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 16, 2020, 11:24:57 pm
"but they will disable some features if you are not using Radeon FirePro"

what are these?

PS: My 2080ti (MSI Trio) is on the way to me   8)

What I am saying is that Nvidia disables GeForce driver on VM, but AMD does not. Instead, AMD disables a couple features according to the forums, but the GPU should still work. That only happens if you are using AMD gaming GPU without setting your KVM model to "host." If you are spoofing the GPU, you should be fine either way.

Understand,  same way spoof it as "FirePro" with vbios.... and some vfio configs
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on December 18, 2020, 12:30:15 am
"but they will disable some features if you are not using Radeon FirePro"

what are these?

PS: My 2080ti (MSI Trio) is on the way to me   8)

What I am saying is that Nvidia disables GeForce driver on VM, but AMD does not. Instead, AMD disables a couple features according to the forums, but the GPU should still work. That only happens if you are using AMD gaming GPU without setting your KVM model to "host." If you are spoofing the GPU, you should be fine either way.

Understand,  same way spoof it as "FirePro" with vbios.... and some vfio configs

Actually, if all you want to do is spoof PCI ID, you dont need to flash vBIOS. Solidworks only checks for PCI ID, and no program or driver really cares about the vbios. All I had to do was spoof PCI ID and windows automatically loaded quadro driver and i got advanced functionality in solidworks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on December 18, 2020, 12:52:40 am
"but they will disable some features if you are not using Radeon FirePro"

what are these?

PS: My 2080ti (MSI Trio) is on the way to me   8)

What I am saying is that Nvidia disables GeForce driver on VM, but AMD does not. Instead, AMD disables a couple features according to the forums, but the GPU should still work. That only happens if you are using AMD gaming GPU without setting your KVM model to "host." If you are spoofing the GPU, you should be fine either way.

Understand,  same way spoof it as "FirePro" with vbios.... and some vfio configs

Actually, if all you want to do is spoof PCI ID, you dont need to flash vBIOS. Solidworks only checks for PCI ID, and no program or driver really cares about the vbios. All I had to do was spoof PCI ID and windows automatically loaded quadro driver and i got advanced functionality in solidworks.

This is a fantastic info... i have no time at moment, i am on fire, January i have many time for some experiments.
 
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on January 15, 2021, 09:42:12 am
I am interested in the solution of kvm and vgpu. Can anyone guide us which file should be patched?
I am working on nvidia-vgpu. It uses flexlm embedded and binary file (****64) format....so it should be doable

Your PM box is full so I cant send you PM.
Have you worked on flexlm before?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 21, 2021, 12:58:17 pm
Hi Krutav,

Now i am ready for KVM. i bought new hardware. But i have now 16 cores (Ryzen 3950x)
but only 1 GPU :/ and no money to buy a second GPU.
Is it possible to run fedora like yours with single GPU and run a vm with GPU passthrough Simultaneously?

EDIT: I find a solution for my single gpu problem... Everything is running. Ubuntu as OS and share its own GPU (yes passthrough) with his vm on Qemu. Look here https://youtu.be/eTX10QlFJ6c :popcorn: and next step. GPU SPOOFING




Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 23, 2021, 06:47:27 am
" args: -device 'vfio-pci,host=02:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=NVP4000,x-pci-vendor-id=0x10de,x-pci-device-id=0x1BB1,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x11A3' "

This is in a different format how can i konvert it to XML like?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 27, 2021, 07:22:51 pm
" args: -device 'vfio-pci,host=02:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=NVP4000,x-pci-vendor-id=0x10de,x-pci-device-id=0x1BB1,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x11A3' "

This is in a different format how can i konvert it to XML like?

Sorry for the late reply. You would follow the same directions to normally passthrough GPU on XML, and then you would add in the "x-pci" tags like I did into your XML. I personally do not use XML based virtual machines, so I recommend trying it out on proxmox before.

Hi Krutav,

Now i am ready for KVM. i bought new hardware. But i have now 16 cores (Ryzen 3950x)
but only 1 GPU :/ and no money to buy a second GPU.
Is it possible to run fedora like yours with single GPU and run a vm with GPU passthrough Simultaneously?

EDIT: I find a solution for my single gpu problem... Everything is running. Ubuntu as OS and share its own GPU (yes passthrough) with his vm on Qemu. Look here https://youtu.be/eTX10QlFJ6c :popcorn: and next step. GPU SPOOFING

You could use VirtIO GPU to share graphics between host and guest Linux operating systems.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 27, 2021, 07:25:53 pm
I am interested in the solution of kvm and vgpu. Can anyone guide us which file should be patched?
I am working on nvidia-vgpu. It uses flexlm embedded and binary file (****64) format....so it should be doable

Your PM box is full so I cant send you PM.
Have you worked on flexlm before?

I actually have all the vGPU drivers for standard Linux, ESXI, Xen, and Red Hat. (460 driver 1/19/2021) I am willing to share it with anyone here who is willing to find a solution to vGPU on consumer GPU. Note that spoofing PCI ID is not enough. You need to modify the way that nvidia driver determines if the GPU is capable of vGPU or not by tooling around with Linux. I recommend using RHEL which is free now.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 28, 2021, 01:17:08 am
Welcome back Krutav,

today arrives my 2nd GPU and i can fire up :).
I hope at evening i don with:
- Install proxmox
- create a vm with Windows 10 64bit
- working GPU passthrough (Nvidia@RTX2080ti)
- Spoof it as Quadro 4000 with RTX4000.rom (patched.vbios)

When everything goes well i write a point for point
every step tutorials for newbies. If not i hope you are tonight (gmt+1)
 here and login@my-system ;-)

Best regards

Edit
11:15am GPU arrived
6:40pm: proxmox installed with externally usb@lan adapter my lan adapter (Realtek-r8125) didnt
              work with px 6.3.1 failure from proxmox "network not found"  i have no idea how i
              install driver on proxmox no 'make' executable istalled thatswhy no ./autorun possible.
8:39pm: Ubuntu vm working passthrough.
9:40pm: Windows10 vm (24core24GBram2080ti) with full working passthrough  :box: (see picture)
00:55AM: GPU SPOOF as RTX4000 done (check picture)

BUT Solidworks dont open Antialiasing menu.
I am testing something i installed it bevor install quadro drivers on it maybe this is the fold. I am reinstalling it


Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: DualCoder on January 28, 2021, 10:22:50 pm
I actually have all the vGPU drivers for standard Linux, ESXI, Xen, and Red Hat. (460 driver 1/19/2021) I am willing to share it with anyone here who is willing to find a solution to vGPU on consumer GPU. Note that spoofing PCI ID is not enough. You need to modify the way that nvidia driver determines if the GPU is capable of vGPU or not by tooling around with Linux. I recommend using RHEL which is free now.

I gave that a shot a short while ago, the plan was to intercept all ioctl calls and "fix" the returned data to indicate vGPU support, but I didn't get far. The nvidia-vgpud service seem to only care abut the PCI device ID and changing that was pretty straight forward after some reverse engineering. The nvidia-vgpu-mgr service on the other hand gave me trouble. It seems that simply altering the values returned by the kernel module is not enough to get it working. I am assuming that the nvidia-vgpu-mgr expects some other side effect to take place in the kernel or GPU, but the kernel bails early due to the GPU being unsupported. In order to keep digging into this I will have to setup a kernel debugger which requires hardware that I do not have at the moment.

I have published the code here: https://github.com/DualCoder/vgpu_unlock (https://github.com/DualCoder/vgpu_unlock) if anyone wants to have a look.

Currently it crashes with a failed assertion:
Code: [Select]
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: notice: vmiop_env_log: (0x0): Received start call from nvidia-vgpu-vfio module: mdev uuid 38512783-4893-47f7-9179-b0594167e86b GPU PCI id 00:01:00.0 config params vgpu_type_id=50
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: notice: vmiop_env_log: (0x0): pluginconfig: vgpu_type_id=50
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: notice: vmiop_env_log: Successfully updated env symbols!
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: NVOS status 0x56
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: Assertion Failed at 0x42af43bf:293
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: 11 frames returned by backtrace
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: /lib/x86_64-linux-gnu/libnvidia-vgpu.so(_nv005021vgpu+0x18) [0x7f0c42b393c8]
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: /lib/x86_64-linux-gnu/libnvidia-vgpu.so(+0xa3e3b) [0x7f0c42aefe3b]
...

I should be able to continue my efforts in about a week or so. The fact that a couple of other users seemed to be able to do this fairly easily with userspace patches makes me think that I am taking the most complicated approach possible, but I don't really know any other way to approach a problem like this.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 29, 2021, 02:06:30 am
I dont come to goal :( it identifys as /PCIe/SSE2 instead as "Nvidia RTX 4000" check picture
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 29, 2021, 05:38:46 pm
I actually have all the vGPU drivers for standard Linux, ESXI, Xen, and Red Hat. (460 driver 1/19/2021) I am willing to share it with anyone here who is willing to find a solution to vGPU on consumer GPU. Note that spoofing PCI ID is not enough. You need to modify the way that nvidia driver determines if the GPU is capable of vGPU or not by tooling around with Linux. I recommend using RHEL which is free now.

I gave that a shot a short while ago, the plan was to intercept all ioctl calls and "fix" the returned data to indicate vGPU support, but I didn't get far. The nvidia-vgpud service seem to only care abut the PCI device ID and changing that was pretty straight forward after some reverse engineering. The nvidia-vgpu-mgr service on the other hand gave me trouble. It seems that simply altering the values returned by the kernel module is not enough to get it working. I am assuming that the nvidia-vgpu-mgr expects some other side effect to take place in the kernel or GPU, but the kernel bails early due to the GPU being unsupported. In order to keep digging into this I will have to setup a kernel debugger which requires hardware that I do not have at the moment.

I have published the code here: https://github.com/DualCoder/vgpu_unlock (https://github.com/DualCoder/vgpu_unlock) if anyone wants to have a look.

Currently it crashes with a failed assertion:
Code: [Select]
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: notice: vmiop_env_log: (0x0): Received start call from nvidia-vgpu-vfio module: mdev uuid 38512783-4893-47f7-9179-b0594167e86b GPU PCI id 00:01:00.0 config params vgpu_type_id=50
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: notice: vmiop_env_log: (0x0): pluginconfig: vgpu_type_id=50
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: notice: vmiop_env_log: Successfully updated env symbols!
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: NVOS status 0x56
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: Assertion Failed at 0x42af43bf:293
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: 11 frames returned by backtrace
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: /lib/x86_64-linux-gnu/libnvidia-vgpu.so(_nv005021vgpu+0x18) [0x7f0c42b393c8]
Jan 20 19:21:51 Debian-dom0 nvidia-vgpu-mgr[1429]: error: vmiop_log: /lib/x86_64-linux-gnu/libnvidia-vgpu.so(+0xa3e3b) [0x7f0c42aefe3b]
...

I should be able to continue my efforts in about a week or so. The fact that a couple of other users seemed to be able to do this fairly easily with userspace patches makes me think that I am taking the most complicated approach possible, but I don't really know any other way to approach a problem like this.

Hello DualCoder, I can't thank you enough for giving this a shot, you are helping the whole community! So I actually did something pretty similar, but I am not well into linux that I know how to edit IOCTL, could you please show us? Anyway, I spoofed the PCI address and almost got it working but the issue lies with the GPU vBIOS which is not configured for vGPU and ECC VRAM. And as we know, flashing a tesla vBIOS won't work because of the GPU checks. So the conclusion i came to is that you cannot spoof the PCI, but you tell the Nvidia driver that Geforce GTX XXXX is a supported card and specify profiles, only then it will work. I am all in for continuing this effort!

However, I see a lot more potential in an AMD GPU which we could probably start a new thread on. So far, I believe the RX 480 can be flashed into a Radeon Instinct MI6 to unlock SR-IOV MxGPU.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 29, 2021, 05:48:49 pm
Welcome back Krutav,

today arrives my 2nd GPU and i can fire up :).
I hope at evening i don with:
- Install proxmox
- create a vm with Windows 10 64bit
- working GPU passthrough (Nvidia@RTX2080ti)
- Spoof it as Quadro 4000 with RTX4000.rom (patched.vbios)

When everything goes well i write a point for point
every step tutorials for newbies. If not i hope you are tonight (gmt+1)
 here and login@my-system ;-)

Best regards

Edit
11:15am GPU arrived
6:40pm: proxmox installed with externally usb@lan adapter my lan adapter (Realtek-r8125) didnt
              work with px 6.3.1 failure from proxmox "network not found"  i have no idea how i
              install driver on proxmox no 'make' executable istalled thatswhy no ./autorun possible.
8:39pm: Ubuntu vm working passthrough.
9:40pm: Windows10 vm (24core24GBram2080ti) with full working passthrough  :box: (see picture)
00:55AM: GPU SPOOF as RTX4000 done (check picture)

BUT Solidworks dont open Antialiasing menu.
I am testing something i installed it bevor install quadro drivers on it maybe this is the fold. I am reinstalling it

That's interesting. The thing with the quadro driver in your picture is that nvidia control panel is not detecting full function. This happens when a display is not plugged in or the graphics driver is not properly installed. You'll need to get the quadro latest branch driver and try that. Also, I need to ask, did you spoof PCI ID in the proxmox configuration like I showed? What I learned is that you cannot use a different VBIOS ROM because the Romfile option only works if the ROM matches what's on the GPU. Now this is not an issue with AMD, but on Nvidia you'll need to actually flash the vBIOS on the card which isn't very easy unless you have a chip programmer. So I actually did do the PCI spoof to turn my 660Ti into a K5000, and it appeared as if the quadro driver was actually working. So what I recommend doing then is trying to find the correct registry values that determine if SOLIDWORKS can use AntiAliasing or not. If you cannot find it, I will continue the search for the solution!

EDIT: You can actually change the PCI ID of devices in windows. This allows you to do all kinds of bizarre things like installing Quadro drivers on a regular GeForce card. It won't be of much use here. I think what we need to do now is getting the VBIOS hacked for the system to really think it is real or otherwise we will need to look at alternative solutions.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 29, 2021, 06:04:34 pm
I dont come to goal :( it identifys as /PCIe/SSE2 instead as "Nvidia RTX 4000" check picture

So PCIE SSE2 is part of the SSE instruction set which these graphics cards rely on. If you have played Minecraft before, you will notice that it will say PCIE SSE2 next to the graphics card name because that is the instructions that the system needs to have in order to run the graphics card. This means that you can use the graphics card with CPUs made newer than 2001 that have the feature. So I don't quite see this as much of an issue, but it may be worth looking into.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 29, 2021, 08:01:17 pm
[attachmini=1]
I dont come to goal :( it identifys as /PCIe/SSE2 instead as "Nvidia RTX 4000" check picture

So PCIE SSE2 is part of the SSE instruction set which these graphics cards rely on. If you have played Minecraft before, you will notice that it will say PCIE SSE2 next to the graphics card name because that is the instructions that the system needs to have in order to run the graphics card. This means that you can use the graphics card with CPUs made newer than 2001 that have the feature. So I don't quite see this as much of an issue, but it may be worth looking into.

okey understand... i think solidworks take the info from registry... but i cant change the id windows.
tonight i run the nvidia quadro software i dont now how :D but i know now how i can gpu passthrough on my system.
have so much problems with iommu and vfio driver like this https://superuser.com/questions/1510581/vga-and-audio-assigned-to-vfio-but-not-usb-and-serial-controller-of-rtx-2080

"So what I recommend doing then is trying to find the correct registry values that determine if SOLIDWORKS can use AntiAliasing or not. If you cannot find it, I will continue the search for the solution!"

thats it. Hack the registry...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 30, 2021, 05:17:59 am
(Attachment Link)
I dont come to goal :( it identifys as /PCIe/SSE2 instead as "Nvidia RTX 4000" check picture

So PCIE SSE2 is part of the SSE instruction set which these graphics cards rely on. If you have played Minecraft before, you will notice that it will say PCIE SSE2 next to the graphics card name because that is the instructions that the system needs to have in order to run the graphics card. This means that you can use the graphics card with CPUs made newer than 2001 that have the feature. So I don't quite see this as much of an issue, but it may be worth looking into.

okey understand... i think solidworks take the info from registry... but i cant change the id windows.
tonight i run the nvidia quadro software i dont now how :D but i know now how i can gpu passthrough on my system.
have so much problems with iommu and vfio driver like this https://superuser.com/questions/1510581/vga-and-audio-assigned-to-vfio-but-not-usb-and-serial-controller-of-rtx-2080

"So what I recommend doing then is trying to find the correct registry values that determine if SOLIDWORKS can use AntiAliasing or not. If you cannot find it, I will continue the search for the solution!"

thats it. Hack the registry...

It never quite crossed me that so many people have issues with IOMMU PCIE passthrough. Since I use workstation/business grade used systems from few years ago, i haven't had a single issue with anything. All the graphics cards and everything passes through without a problem. As far as hacking the registry goes, I'm not quite sure how as I will have to install SOLIDWORKS again and I don't have the space to do so, nor do I need the program for now. The next experiment I want to take on is flashing the VBIOS of quadro because the driver can tell when you're just doing a PCI spoof. Some of the features like Quadro View Desktop Management is something that can only be used if the GPU is sure that it is a quadro. ECC as well, which is something missing on consumer cards but can cause applications like vGPU to not start if not configured, so that's another thing that needs to be worked on. I am thinking about using dynamic EEPROM that can change the vBIOS on command but that would likely crash the system so that one is off the list.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 30, 2021, 06:24:52 pm
Quote
It never quite crossed me that so many people have issues with IOMMU PCIE passthrough. Since I use workstation/business grade used systems from few years ago, i haven't had a single issue with anything. All the graphics cards and everything passes through without a problem.
I also had no problems until I switched the USB port to the vm. The kernel-modul (xhci_hcd) catched the usb controller from rtx2080ti
Code: [Select]
02d:00.2 USB controller [0c03]: NVIDIA Corporation Device [10de:1ad7] (rev a1)
    Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:3721]
    Kernel driver in use: xhci_hcd

Now i use this script to unbind the driver and bind vfio-driver:
Code: [Select]
#!/bin/sh
PCI_HID="0000:2d:00.2"
echo -n "$PCI_HID" > /sys/bus/pci/drivers/xhci_hcd/unbind
echo -n "$PCI_HID" > /sys/bus/pci/drivers/vfio-pci/bind
PCI_HID="0000:2d:00.3"
echo -n "$PCI_HID" > /sys/bus/pci/drivers/nvidia-gpu/unbind
echo -n "$PCI_HID" > /sys/bus/pci/drivers/vfio-pci/bind
In which folder do I have to put it so that it starts automatically with the system?

Quote
Some of the features like Quadro View Desktop Management is something that can only be used if the GPU is sure that it is a quadro
Yes it does but i find a method to start it and activate the window manager ;) (you take it soon as pn that is maybe our unique change to hack it).
When you activate the window manager everthing looks different in the nvidia system manager.

Quote
ECC as well, which is something missing on consumer cards but can cause applications like vGPU to not start if not configured, so that's another thing that needs to be worked on. I am thinking about using dynamic EEPROM that can change the vBIOS on command but that would likely crash the system so that one is off the list.
No idea what you talking about :D

I make some photos... 

Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 30, 2021, 09:29:20 pm
Quote
I also had no problems until I switched the USB port to the vm. The kernel-modul (xhci_hcd) catched the usb controller from rtx2080ti
I totally forgot the newer cards have USB! Make sure you pass the whole controller to the VM as a PCIE device and add it to your PCIE Stub in GRUB. This way the host doesn't try to initialize USB and screw everything over.
Also make sure to prevent linux from loading Nvidia driver, and that the GPU gets assigned to the Stub driver. This driver makes it so the card does not get initialized until the guest VM is booted.

Quote
In which folder do I have to put it so that it starts automatically with the system?
Do this in GRUB. When you bind the Nvidia USB controller to the PCI-Stub at boot, xhci-module will never load and the host wouldn't know it is there. I'll try to post a sample GRUB configuration later to show you how this can be done. But you likely will not need any script since this kind of thing mostly works out of the box.

Quote
Yes it does but i find a method to start it and activate the window manager ;) (you take it soon as pn that is maybe our unique change to hack it).
When you activate the window manager everthing looks different in the nvidia system manager.
How were you able to get this working? I haven't found any instructions for this yet on the internet so it would be really cool seeing how you pulled it off!

Quote
No idea what you talking about :D
ECC memory is error correcting code memory which is a feature that professional graphics cards have. However for most functions, it has to be set to DISABLED. To do that, you need the correct Quadro VBIOS or Nvidia driver will say it is a GeForce and the ECC options will be gone. And for vGPU, this feature needs to be disabled and set as that or otherwise you will get no results. I'll post more as new details roll in.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 30, 2021, 09:59:50 pm
Quote
Do this in GRUB. When you bind the Nvidia USB controller to the PCI-Stub at boot, xhci-module will never load and the host wouldn't know it is there. I'll try to post a sample GRUB configuration later to show you how this can be done. But you likely will not need any script since this kind of thing mostly works out of the box.

Code: [Select]
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Proxmox Virtual Environment"
GRUB_CMDLINE_LINUX_DEFAULT="quiet, amd_iommu=on, vfio-pci.ids=10de:1e07,10de:10f7,10de:1ad6,10de:1ad7"
GRUB_CMDLINE_LINUX=""

nope is not working. this is a bug in the kernel, in newer kernels is not a problem but this case (proxmox >>5.4 kernel<<) yes. Many people hava this problem. I have no idea how can i update the kernel.
Quote
Do this in GRUB. When you bind the Nvidia USB controller to the PCI-Stub at boot, xhci-module will never load and the host wouldn't know it is there. I'll try to post a sample GRUB configuration later to show you how this can be done. But you likely will not need any script since this kind of thing mostly works out of the box.
PLease a short howto where i can place it and it runs at system startup.
Quote
How were you able to get this working? I haven't found any instructions for this yet on the internet so it would be really cool seeing how you pulled it off!
You have pn.

One more thing... very intresing is when you use an older quadro driver Solidworks rendere say i have an "unknown board/PCIe/SSE2"
bevor it says (with newer quadro driver) "/PCIe/SSE2"
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 30, 2021, 10:23:29 pm
You can activate the Quadro Destop Manager with a Remote Deskop connection right click on desktop and open RTX Desktop Manager --> activate 
in older quadro driver its called nView...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on January 31, 2021, 12:45:47 am
You can activate the Quadro Destop Manager with a Remote Deskop connection right click on desktop and open RTX Desktop Manager --> activate 
in older quadro driver its called nView...
Time to pull out the old 660 Ti and get an nView desktop working! This will be very useful for a headless workstation maybe.

Quote
nope is not working. this is a bug in the kernel, in newer kernels is not a problem but this case (proxmox >>5.4 kernel<<) yes. Many people hava this problem. I have no idea how can i update the kernel.
If it is fine in newer kernel, then we can update. Here is a Github link to a program that makes it easy to install the newest kernel. https://github.com/fabianishere/pve-edge-kernel (https://github.com/fabianishere/pve-edge-kernel) You can install kernel 5.10 with it.

Quote
One more thing... very intresing is when you use an older quadro driver Solidworks rendere say i have an "unknown board/PCIe/SSE2"
bevor it says (with newer quadro driver) "/PCIe/SSE2"
I have no idea why it says this, but at the same time, I don't necessarily see it as a problem. I would make sure that you first get all the GPU components passed through first, which includes usb, audio, gpu, I2C, etc. That way we can rule this out. With my 1080, I turn it into a P4000 quadro without seeing any of this SSE2 stuff. Also, get GPU-Z and take a screenshot of what it is saying, because it can give us some more information.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 31, 2021, 12:59:56 am
Quote
I have no idea why it says this, but at the same time, I don't necessarily see it as a problem. I would make sure that you first get all the GPU components passed through first, which includes usb, audio, gpu, I2C, etc. That way we can rule this out
done. Now boots very well and fully working passthrough. i put the script into the /home folder and write a crontab job with

Code: [Select]
nano crontab -e
Code: [Select]
@reboot /home/unbind.sh
Code: [Select]
STRG+O for save the file
Code: [Select]
STRG+X quit the document

unbind.sh this is the code that unbind.sh the xhci_hcd and nvidia-gpu driver from usb controller and serial controller. Than bind it to vfio-pci driver.
Code: [Select]
nano /home/unbind.sh
Code: [Select]
#!/bin/sh
PCI_HID="0000:2d:00.2"
echo -n "$PCI_HID" > /sys/bus/pci/drivers/xhci_hcd/unbind
echo -n "$PCI_HID" > /sys/bus/pci/drivers/vfio-pci/bind
PCI_HID="0000:2d:00.3"
echo -n "$PCI_HID" > /sys/bus/pci/drivers/nvidia-gpu/unbind
echo -n "$PCI_HID" > /sys/bus/pci/drivers/vfio-pci/bind

[TIP: change the PCI_HID="0000:2d:00.2" to your id PCI_HID="0000:XX:XX:X ]

Code: [Select]
chmod -x /home/unbind.sh
Code: [Select]
rebootyou can check it with
Code: [Select]
lspci -v scroll up and find the devices that may to unbind the driver....

Quote
I turn it into a P4000 quadro without seeing any of this SSE2 stuff.
you see it in the registry or in Realview Hack tool

Code: [Select]
Computer\HKEY_CURRENT_USER\SOFTWARE\SolidWorks\SOLIDWORKS 2020\Performance\Graphics\Hardware\Current
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on January 31, 2021, 03:11:08 am
Amazing how far this thread has come since I first posted it.

If you want a ton of VFIO Passthrough support/help I suggest you go to the Discord VFIO server (https://discord.gg/f63cXwH).
Also Looking Glass may be of intrest to you, see https://looking-glass.io, or join us on our Discord server (https://discord.com/invite/52SMupxkvt)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 31, 2021, 03:26:42 am
Hi Gnif,
very to meet you :) . Thank you very much for your invitation to your discord. Everything is now working with passthrough. Maybe you can help us to work on
Spoofing GPU´s?

Quote
Also Looking Glass may be of intrest to you, see https://looking-glass.io, or join us on our Discord server (https://discord.com/invite/52SMupxkvt)

Befor we use Looking Glass i must i have a working Solidworks in nativ mode with open "full scene anti aliasing" mode.

@krutav I find something new. The identifier of the gpu is openGL. When u start SW ask SW to nvdriver what is your renderer? the driver ask the opengl who am i? :)
opengl says no idea who am i but i am on PCIe and can SSE2 (unknown board/PCIe/SSE2) thatswhy solidworks says --->I dont know who are you also full scene anti aliasing greyed out.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gnif on January 31, 2021, 03:31:03 am
Hi Gnif,
very to meet you :) . Thank you very much for your invitation to your discord. Everything is now working with passthrough. Maybe you can help us to work on
Spoofing GPU´s?

You're welcome. Note that quite a few in the VFIO community already use GPU id spoofing, it's quite common. Qemu supports overriding the PCI ID presented to the guest, and with a bit of ioctl hackery one can intercept the ioctl's the NVidia driver uses to identify the GPU device ID and spoof it completely.

Quote
Befor we use Looking Glass i must i have a working Solidworks in nativ mode with open "full scene anti aliasing" mode.

No worries, once you get it sorted if you need help, hit me up. Looking Glass is my project :)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on January 31, 2021, 04:59:51 pm
Hi, i think here is a missing arg ... like "name=" or any other. how can i see which commands are possible in qemu?

Code: [Select]
args: -device 'vfio-pci,host=2d:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=RTX4000MOD.rom,x-pci-vendor-id=0x10de,x-pci-device-id=0x1eb1,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x12a0'
Find some args from  qemu 2.0.x :

Quote
$ qemu-system-x86_64 -device vfio-pci,? 2>&1 | grep "x-*"
>> vfio-pci.x-pci-sub-device-id=uint32
>> vfio-pci.x-no-kvm-msi=bool
>> vfio-pci.x-pcie-lnksta-dllla=bool (on/off)
>> vfio-pci.x-igd-opregion=bool (on/off)
>> vfio-pci.x-vga=bool (on/off)
>> vfio-pci.x-pci-vendor-id=uint32
>> vfio-pci.x-req=bool (on/off)
>> vfio-pci.x-igd-gms=uint32
>> vfio-pci.x-no-kvm-intx=bool
>> vfio-pci.x-pci-device-id=uint32
>> vfio-pci.host=str (Address (bus/device/function) of the host device, example: 04:10.0)
>> vfio-pci.x-no-kvm-msix=bool
>> vfio-pci.x-intx-mmap-timeout-ms=uint32
>> vfio-pci.bootindex=int32
>> vfio-pci.x-pcie-extcap-init=bool (on/off)
>> vfio-pci.addr=int32 (Slot and optional function number, example: 06.0 or 06)
>> vfio-pci.x-pci-sub-vendor-id=uint32
>> vfio-pci.x-nv-gpudirect-clique=uint4 (NVIDIA GPUDirect Clique ID (0 - 15))
>> vfio-pci.x-no-mmap=bool

Find some args from  qemu 5.x :

Quote
qemu-system-x86_64 -device vfio-pci,? 2>&1 | grep "x-*"
  addr=<int32>           - Slot and optional function number, example: 06.0 or 06 (default: -1)
  bootindex=<int32>
  host=<str>             - Address (bus/device/function) of the host device, example: 04:10.0
  x-balloon-allowed=<bool> -  (default: false)
  x-igd-gms=<uint32>     -  (default: 0)
  x-igd-opregion=<bool>  - on/off (default: false)
  x-intx-mmap-timeout-ms=<uint32> -  (default: 1100)
  x-msix-relocation=<OffAutoPCIBAR> - off/auto/bar0/bar1/bar2/bar3/bar4/bar5 (default: "off")
  x-no-geforce-quirks=<bool> -  (default: false)
  x-no-kvm-intx=<bool>   -  (default: false)
  x-no-kvm-ioeventfd=<bool> -  (default: false)
  x-no-kvm-msi=<bool>    -  (default: false)
  x-no-kvm-msix=<bool>   -  (default: false)
  x-no-mmap=<bool>       -  (default: false)
  x-no-vfio-ioeventfd=<bool> -  (default: false)
  x-nv-gpudirect-clique=<uint4> - NVIDIA GPUDirect Clique ID (0 - 15)
  x-pci-device-id=<uint32> -  (default: 4294967295)
  x-pci-sub-device-id=<uint32> -  (default: 4294967295)
  x-pci-sub-vendor-id=<uint32> -  (default: 4294967295)
  x-pci-vendor-id=<uint32> -  (default: 4294967295)
  x-pcie-extcap-init=<bool> - on/off (default: true)
  x-pcie-lnksta-dllla=<bool> - on/off (default: true)
  x-req=<bool>           - on/off (default: true)
  x-vga=<bool>           - on/off (default: false)
  xres=<uint32>          -  (default: 0)

I find somethjng interesting to get the vendor id over opengl

https://stackoverflow.com/a/42249529 (https://stackoverflow.com/a/42249529)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 02, 2021, 04:48:28 am
@bayx Thanks for posting the list of arguments for QEMU. I have never seen many of these before and I suppose they will be quite helpful for us here. I don't know too much about OpenGL but what I can say is that there are a few QEMU args we can try. First of all, the
Code: [Select]
romfile arguments is pretty much useless on these nvidia cards and I still need to try it with and AMD/ATI graphics card to further prove the lack of usability with the feature. I say it is useless because the GPU is going to read right off of its own internal ROM. The only practical use of romfile is to get the bootscreen working on a passed through GPU. But it only works if you keep the PCI ID the same. I think Nvidia has outsmarted us in this area and it's understandable.

You also listed a "No GeForce Quirks" argument and that is something worth trying. I don't know where the documentation is but I have a feeling it might be a useful argument for us here. The path to success here requires that we get the QEMU bootscreen working with a spoofed GPU, and the reason this is very important is because it goes to show that the device successfully acts like the GPU we wanted to spoof it as.

As for @gnif, I am interested in getting LookingGlass to work on MacOS as it could benefit from one. Newer versions of MacOS also come with QEMU and VirtIO drivers so it might even be possible. MacOS is pretty similar to BSD but you can also run Linux code using HomeBrew. I am not the most experienced, but I could try to make something and get it working. MacOS can function as a host for QEMU now with pretty good performance. I don't know about GPU passthrough on MacOS QEMU but they have their own Paravirtual graphics device. As for using MacOS as the LookingGlass server to serve a Linux VM host, I think it would be possible to acheive if Linux can also act like a Windows guest in a typical LookingGlass setup.

I only have 8GB of RAM so these Virtualization projects are particularly interesting because a Windows VM with 4GB is practically useless. DDR4 prices are quite high :/
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 02, 2021, 10:34:46 pm
I find something interesting, there is a app called "regal" this is a wrapper. A wrapper for opengl requests. Its running on the host Maschine.
But i have no idea how.
No idea how to create from sources.
How to install
and howto run
aaaand last but not least how to confige it in proxmox?!

I am 100% sure this is Integrated in qemu but nobody calles about this.
TOP SECRET

https://github.com/p3/regal (https://github.com/p3/regal)

Here thread about regal

https://pyra-handheld.com/boards/threads/regal-opengl-wrapper.82518/ (https://pyra-handheld.com/boards/threads/regal-opengl-wrapper.82518/)

And this args
Code: [Select]
-device virtio-vga,virgl=on no idea how/does you can use "virgl=on,renderer=Quadro RTX 4000" (or something like this) in our x-line
Code: [Select]
args: -device 'vfio-pci,host=2d:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=RTX4000MOD.rom,x-pci-vendor-id=0x10de,x-pci-device-id=0x1eb1,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x12a0
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 03, 2021, 03:02:13 am
@bayx thanks for bringing up the topic of "VIRTIO GPU/VIRGL." Essentially what it is, is a driver that allows Linux Guest VM to access a KVM host GPU only for OpenGL and possibly Vulkan in the future. It will only work on Linux, and it is a paravirtualized adapter so there is not much that can be done with it.

I also looked at this "Regal3D" and it is very old and not being developed anymore. I am certain it has been replaced by VirtIO VirGL. If you plan on running Linux this VirtIO GPU will be fine but it will be useless outside of that. I don't think SOLIDWORKS is on Linux either, so why bother. Some people are trying to get VirGL driver on Windows but the success is very limited so you can't count on that.

Today I will try an ATI HD 4650 and ATI FirePro V5700. Both are the same cards but one is certified for SOLIDWORKS 2008 and other CAD programs, and one is for consumers. I will also try the old 660 Ti but first I must install the latest QEMU on my proxmox.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 03, 2021, 04:38:07 am
I give up :(
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 04, 2021, 12:46:26 am
I give up :(

That's unfortunate :( I haven't had much success lately either, because most of the mods only work by flashing the GPU ROM which I don't have time for. I am looking into using Linux for some other graphics related projects though, maybe with VirtIO GPU to provide some virtual Linux desktops with minimal overhead and no virtualization.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 04, 2021, 02:07:59 am
Put it on ebay... Buy me a Quadro RTX 4000
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 17, 2021, 05:44:07 pm
Now it is working :)))))
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 18, 2021, 02:31:44 am
Now it is working :)))))
Awesome! What was the solution?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 20, 2021, 10:14:44 pm
Now it is working :)))))
Awesome! What was the solution?

A Quadro card :D
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: DualCoder on February 22, 2021, 07:06:07 pm
Oh, man. This driver is putting up a hell of a fight. But at last I am making some sort of progress (see attached screenshot).

I will push the code to github later. The README is going to need an update, things got ... complicated.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 22, 2021, 11:33:34 pm
Nice job. But what did it means? :)
Its done but it takes a few updates or
Many milestones done but some milestones must to work out?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 23, 2021, 06:37:32 pm
Nice job. But what did it means? :)
Its done but it takes a few updates or
Many milestones done but some milestones must to work out?

https://github.com/DualCoder/vgpu_unlock (https://github.com/DualCoder/vgpu_unlock)

It's a pretty incredible project that DualCoder is working on. It will allow for vGPU to work on consumer graphics cards to create virtual Quadros for Virtual Machines. Only thing is that you would still need a license for vGPU which costs far too much to actually be worth it. The more practical solution is obviously to buy a second GPU, but the appeal of vGPU is to save space and use on graphics card. It also works quite well compared to other solutions like AMD MxGPU and Intel GVT-G. It's definitely a cool project worth contributing too and I will load it on my Proxmox server to test functionality with it later today. If it works, it could make for like a dual 1050 Ti gaming server. (I already have gaming pc which is cheaper than a vGPU license so its really only gonna be for fun and not practical use.)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 24, 2021, 12:51:51 pm
Nice job. But what did it means? :)
Its done but it takes a few updates or
Many milestones done but some milestones must to work out?



"(I already have gaming pc which is cheaper than a vGPU license so its really only gonna be for fun and not practical use.)"
:-DD :-DD :-DD :-DD :-DD :-DD :-DD :-DD :-DD
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 25, 2021, 02:53:14 am
Massive thanks to @DualCoder for making the vGPU Unlock program. It works fairly well!
I tested it out with PROXMOX hypervisor (KVM) and a Windows 10 Virtual Machine. I was even able to game at 60 FPS! Only problem is that after 10 minutes it capped me at 3 FPS because I can't afford a license  :-DD

In all seriousness though, this is awesome work and it is actually very well done. I suggest all of you try it out and contribute to the project!

Next step: trying to figure out how to bypass licensing...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 25, 2021, 10:20:59 am
Nice. There is a post in this thread with working hacked vgpu grid driver. Why you not ask him for a working solution?

Find:
https://www.eevblog.com/forum/general-computing/hacking-nvidia-cards-into-their-professional-counterparts/msg3012514/#msg3012514 (https://www.eevblog.com/forum/general-computing/hacking-nvidia-cards-into-their-professional-counterparts/msg3012514/#msg3012514)
 Here goes to the hack:
https://forums.developer.nvidia.com/t/vgpu-on-gtx-or-rtx-or-quadro/162719 (https://forums.developer.nvidia.com/t/vgpu-on-gtx-or-rtx-or-quadro/162719)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 25, 2021, 06:52:08 pm
Quote
There is a post in this thread with working hacked vgpu grid driver. Why you not ask him for a working solution?

He only said that he will not release that. I know the solution to hacking licensing but it's obviously against the Nvidia terms of service.

There's 2 options. Make an add-on to DualCoder's script that takes out the licensing requirement. OR, hack the licensing server because it runs FlexNet license server which is apparently very easy to crack.

I probably can't do any of these because my vGPU Evaluation license expired 3 days ago  :palm:
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on February 26, 2021, 09:43:06 am
Quote
There is a post in this thread with working hacked vgpu grid driver. Why you not ask him for a working solution?

There's 2 options. Make an add-on to DualCoder's script that takes out the licensing requirement. OR, hack the licensing server because it runs FlexNet license server which is apparently very easy to crack.


Still waiting for a working noob version. 😊
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 27, 2021, 07:13:40 pm
Quote
Still waiting for a working noob version. 😊

This is about as noob friendly as it gets... I suppose I could write an automation script. It's working on Proxmox just fine, albeit a little fiddly. The performance with vGPU is shockingly good apparently. I used parsec and VMware horizon to do remote desktop.
I am looking into finding a driver hack to temporarily bypass licensing.
I haven't tried specviewperf but that's next on my list, just waiting for Nvidia to send me a new evaluation license  :=\

Edit: This is very funny... if you never open Nvidia control panel after installing the driver it won't check for license. (Only for 10 minutes, though. My VM is slow so it took a while, but yours might be faster.)
Time for the SpecViewPerf test! For anyone wondering, this also unlocks the anti-aliasing in Solidworks.

Edit 2: Specviewperf is 17GB so this is going to take a really long time...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on February 28, 2021, 06:51:14 am
Update: I ran SPECViewPerf and the performance was pretty abysmal to say the least. Anything with OpenGL crashed for some reason and gives me the "A TDR has been detected" error. The DirectX tests like Autodesk ran fine and I saw anywhere from 10-60 FPS so I'm fine with that.
The setup I ran is GTX 1080 Spoofed to Tesla P4 thanks to @DualCoder's script and then created a P4-4Q which is half of the graphics card's full resources.

My expectations were definitely exceeded, but I won't ever use this because all the apps I run work on a GTX 1060.

Edit: The vGPU host driver has a timer that automatically drops an unlicensed vGPU to 15 FPS after exactly 20 minutes, unfortunately. I am not so sure how to hack the driver to get around licensing at this point. Maybe a host driver hack could solve that...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: bayx on March 01, 2021, 07:23:41 pm
I hope somebody hack the driver...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 01, 2021, 08:39:23 pm
Hello everyone!

I have recently obtained Tesla K10 (converted as K2) from eBay. Unfortunately, K2 drivers (non-vGPU) are not supported by modern Linux, so I decided to convert it back to K10 for now. I installed resistors and I got it displayed as K10, however I cannot find a correct BIOS dump for those GPUs.
I used nvflash with override to flash one of the chips using this one: https://www.techpowerup.com/vgabios/213266/213266 (https://www.techpowerup.com/vgabios/213266/213266)

Does anyone have full BIOS dump from original K10 for both vBIOS chips? From what I understand, they are not the same.
  :-//
P.S. I plan to work on some interesting project with final goal to convert dual GPU Tesla K10 to dual K5000. K10/K2 and K5000 share similar GPUs (GK104) of different part#, however number of CUDA cores, TMUs and ROPs is the same. (same story as GK104 on GTX690 VS GK104 on K5000 or GK104 on GTX680).
Tesla K10:        10de:118F
Grid K2:           10de:11BF
Quadro K5000: 10de:11BA

So far. all the values of resistors mentioned on this topic are valid for real K10 as well. Picture below shows resistors used for the K10 BIOS chip (rear one, near power connectors). R2 and R3 are responsible for the byte change from 8 to B while R4 and R5 are responsible for the GDDR5 manufacturer (Samsung VS Hynix). R1 and some supporting resistors around are the part of the ROM circuit that is identical to GTX7xx lineup. I compared values and reverse engineered schematic of the ROM. Schematic is attached on the second picture. vBIOS model is the following: http://ww1.microchip.com/downloads/en/devicedoc/doc0606.pdf (http://ww1.microchip.com/downloads/en/devicedoc/doc0606.pdf)

From my understanding, 4th byte difference comes not from the vBIOS circuit (because it affects 3rd byte only), but from the strap #2 on the GPU die itself. GTX780ti schematic is attached for your reference. I have found it on some Russian electronics repair forum. I have seen it was told that I can change 4th byte using BIOS straps, however I did not understand how to do it. That would be great if someone can elaborate on this. Thank you.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 02, 2021, 03:14:22 am
Hello everyone!

I have recently obtained Tesla K10 (converted as K2) from eBay. Unfortunately, K2 drivers (non-vGPU) are not supported by modern Linux, so I decided to convert it back to K10 for now. I installed resistors and I got it displayed as K10, however I cannot find a correct BIOS dump for those GPUs.
I used nvflash with override to flash one of the chips using this one: https://www.techpowerup.com/vgabios/213266/213266 (https://www.techpowerup.com/vgabios/213266/213266)

Does anyone have full BIOS dump from original K10 for both vBIOS chips? From what I understand, they are not the same.
  :-//
P.S. I plan to work on some interesting project with final goal to convert dual GPU Tesla K10 to dual K5000. K10/K2 and K5000 share similar GPUs (GK104) of different part#, however number of CUDA cores, TMUs and ROPs is the same. (same story as GK104 on GTX690 VS GK104 on K5000 or GK104 on GTX680).
Tesla K10:        10de:118F
Grid K2:           10de:11BF
Quadro K5000: 10de:11BA

So far. all the values of resistors mentioned on this topic are valid for real K10 as well. Picture below shows resistors used for the K10 BIOS chip (rear one, near power connectors). R2 and R3 are responsible for the byte change from 8 to B while R4 and R5 are responsible for the GDDR5 manufacturer (Samsung VS Hynix). R1 and some supporting resistors around are the part of the ROM circuit that is identical to GTX7xx lineup. I compared values and reverse engineered schematic of the ROM. Schematic is attached on the second picture. vBIOS model is the following: http://ww1.microchip.com/downloads/en/devicedoc/doc0606.pdf (http://ww1.microchip.com/downloads/en/devicedoc/doc0606.pdf)

From my understanding, 4th byte difference comes not from the vBIOS circuit (because it affects 3rd byte only), but from the strap #2 on the GPU die itself. GTX780ti schematic is attached for your reference. I have found it on some Russian electronics repair forum. I have seen it was told that I can change 4th byte using BIOS straps, however I did not understand how to do it. That would be great if someone can elaborate on this. Thank you.

I could only find GPU2 vBIOS on TechPowerUp. One thing you might be able to do is convert the card to Quadro K5000 by doing the resistor method. You may not have to flash vBIOS for this, but if you do have to, flash the K5000 vBIOS onto GPU1, and flash Tesla K10 on GPU2. Someone here might have K10 GPU1 vBIOS...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 02, 2021, 03:47:15 am
That's exactly what I am looking for, GPU1 vBIOS from K10. If someone has it, it would help me a lot.
Also, I wonder if community here figured out where 4th byte resistor is connected to on GK104 chips. I understand it goes to the GPU die, however I cannot reverse engineer it without disassembling GPU itself.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 02, 2021, 03:50:14 am
That's exactly what I am looking for, GPU1 vBIOS from K10. If someone has it, it would help me a lot.
Also, I wonder if community here figured out where 4th byte resistor is connected to on GK104 chips. I understand it goes to the GPU die, however I cannot reverse engineer it without disassembling GPU itself.
Here is GPU1:
https://www.techpowerup.com/vgabios/213893/213893 (https://www.techpowerup.com/vgabios/213893/213893)
Here is GPU2:
https://www.techpowerup.com/vgabios/213266/213266 (https://www.techpowerup.com/vgabios/213266/213266)

Give it a shot, may or may not work, hoping it does.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 02, 2021, 07:45:10 pm
Cannot flash vBIOS #1 because chip has device ID ending with eight zeros. How to resolve this? Thank you.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 02, 2021, 08:02:59 pm
Cannot flash vBIOS #1 because chip has device ID ending with eight zeros. How to resolve this? Thank you.

Those last 8 numbers are the Subsystem ID. GPU1 is supposed to be Subsystem 10DE 0970. So you will need to change that first. What you can do is force the GPU1 flash by entering the force arguments for NVFLASH. There is a modded a version of NVFLASH that bypasses these IDs. Please try that and see if it will let you flash.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 02, 2021, 10:16:07 pm
Cannot flash vBIOS #1 because chip has device ID ending with eight zeros. How to resolve this? Thank you.

Those last 8 numbers are the Subsystem ID. GPU1 is supposed to be Subsystem 10DE 0970. So you will need to change that first. What you can do is force the GPU1 flash by entering the force arguments for NVFLASH. There is a modded a version of NVFLASH that bypasses these IDs. Please try that and see if it will let you flash.

Yeah, I have tried this already. Seems like EEPROM was not accessible and it refused to flash it. I am currently playing with Raspberry Pi flashrom software to flash this chip outside of the GPU. I will see how it goes  |O

P.S. still no success. My plan now is to get CH341A from Amazon and try to flash it using that tool.

P.P.S. GOT IT WORKING!  8)
Patched "NVflash with mismatched ID" does not work at all for PCI subsystem ID mismatch

I used NVFlash 5.670 with the following command: nvflash.exe --index=0 --overridesub TeslaK10-1.rom
Proof below: I use it my Proxmox Ubuntu 20.04 server VM
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: user567876 on March 13, 2021, 09:07:08 pm
Quote
There is a post in this thread with working hacked vgpu grid driver. Why you not ask him for a working solution?

There's 2 options. Make an add-on to DualCoder's script that takes out the licensing requirement. OR, hack the licensing server because it runs FlexNet license server which is apparently very easy to crack.


Still waiting for a working noob version. 😊

Same for me, I’ve tried to find out how to extend the trial on the licensing server, but I looks like I’ll just have to keep signing up for trial licenses...
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 17, 2021, 01:05:59 am
Quote
Same for me, I’ve tried to find out how to extend the trial on the licensing server, but I looks like I’ll just have to keep signing up for trial licenses...

Well actually I called their enterprise support and they said that they do not provide more trial licenses. Based on my testing, the internal timer to license requirement starts at 20 minutes of guest VM Nvidia driver running. If you can mask that, you get the features forever. But that is harder to do. The easier solution that I have figured out is to just use a vGPU profile that doesn't have a licensing requirement. Inconveniently, this is only possible on the Grid K1/K2 cards which means that you have to create your own profile and sign it with a key. OR, you could add the Grid K2 profile to the list of profiles in VgpuConfig.xml and then modify DualCoder's script to spoof your GPU to the PCI ID of GRID K2. Unfortunately, CUDA has not been enabled on the GRID K2 profiles for some ridiculous reason so you won't get the benefit of that. Happy modding, let us all know if you have any updates or successes!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: DualCoder on March 19, 2021, 07:47:47 pm
Based on my testing, the internal timer to license requirement starts at 20 minutes of guest VM Nvidia driver running. If you can mask that, you get the features forever. But that is harder to do.

The guest's driver? On a Windows guest? Then here is a crazy idea: Attach CheatEngine to the driver, enable speedhack, speed = 0, done. I have no idea if that could work, it will probably cause other problem though.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 21, 2021, 09:27:10 pm
krutav's method works and I managed to split Tesla K10 into two Quadro K5000s for two Windows VMs under Proxmox (screen attached).

What's working:
1. 3D acceleration benchmarks like FurMark run perfectly
2. 1st Gen NVENC movie transcoding for MKV containers using XMedia Recode (according to CraftComputing vGPU does not support NVENC)
3. Converting Tesla K10 to other GK104 GPUs (e.g. GTX770) with all the drivers installed properly
4. MSI afterburner temperature monitoring and even overclocking

What's not working:
1. When I try to run, for example, a game (not a Steam cuz Steam detects VMs), 3D acceleration is not working.
2. Parsec refuses to load whatsoever. So, I guess, RDP or VNC is the only option.
3. I am also working to make SolidWorks run as well as other CADs to use Quadro K5000 for what it is intended for, however SolidWorks with my university license just refuses to run under KVM virtualization whatsoever.

Interesting notes:
1. Fake Quadro K5000 inside Windows VM can be detected as Tesla K10 by Quadro Experience that offers to install Tesla drivers instead of Quadro drivers, however nothing prevents you from downloading drivers from Nvidia website and install them yourself. Quadro Experience will indicate your graphics card as Quadro K5000 after it.
2. After I changed config to turn K10 into GTX770 and ran my VM with K5000 drivers, MSI afterburner indicated it as Tesla K10, while Device Manager and Nvidia drivers show it as GTX770. I guess this method allows to trick Nvidia to install drivers and partially work with 3D acceleration, however I believe it is not fully enabled, unless your host GPU is 3D capable by itself (here is why my next step is to rebuild K10 back to Grid K2).

Next step:
Convert K10 back to Grid K2 with resistor and BIOS mod and try Windows VM again using krutav's method. I previously bumped into the issue that Grid K2 gives Error 43 inside Windows VM and neither of Proxmox tricks help this.
1. Grid K2 (actual) -> krutav's method -> Grid K2 in Windows and see if drivers work.
2. Grid K2 (actual) -> krutav's method -> Quadro K5000 (I want to see if 3D acceleration issue can be resolved by physicall enabling 3D acceleration on the host card).

For those who would like to repeat this experiment, I attach my Proxmox VMID.conf line. BIOS is available at TechPowerUp.
Code: [Select]
args: -device 'vfio-pci,host=06:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=quadrok5000.rom,x-pci-vendor-id=0x10de,x-pci-device-id=0x11BA,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x0965'
UPD: Unigine Heaven 4.0 works perfectly. Screen attached. Stable 60-80 FPS in 720p with DirectX 9 with Tesla K10 tricked to appear as K5000.
UPD2: Games do not work whatsoever on Tesla K10 faked as K5000.
UPD3: Solidworks does not work on Tesla K10 faked as K5000. It runs, but system becomes incredibly slow. Next test is to try both Grid K2 and Grid K2 (faked as K5000).
UPD4: DirectX games do not work at all. Vulkan/OpenGL games work on Tesla K10 faked as Quadro K5000. Older games (e.g. HL2, S.T.A.L.K.E.R) refuse to run either in Steam versions or pirated versions. Steam Doom (2016) runs perfectly with Steam Remote Play.

UPD5 (March 22nd, 2021): SolidWorks actually works but I guess it is slow because of Windows RDP. Quadro K5000 is properly utilized.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 22, 2021, 04:39:39 pm
Based on my testing, the internal timer to license requirement starts at 20 minutes of guest VM Nvidia driver running. If you can mask that, you get the features forever. But that is harder to do.

The guest's driver? On a Windows guest? Then here is a crazy idea: Attach CheatEngine to the driver, enable speedhack, speed = 0, done. I have no idea if that could work, it will probably cause other problem though.

CheatEngine won't work simply because the host system driver starts an internal 20-minute timer the moment the windows vGPU driver turns on. I have tried everything from killing the NV Container process to deleting it entirely, but host is smart and can see if the vGPU has any activity on it. The solution I found out is to create a new vGPU profile with <license> set to none and get it signed by the private key. That part I don't know how to do but maybe it's possible.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 22, 2021, 04:49:52 pm
Quote
mcerveny: "470.05_gameready_win10-dch_64bit_international.exe" allow passthrou of GTX card without any virtualiaztion quirks (and without error code 43) ?

Quote
however SolidWorks with my university license just refuses to run under KVM virtualization whatsoever.

If you enable Hyper-V on the guest system, for whatever reason the VM becomes a regular computer and doesn't register as a VM, allowing you to play pretty much any game with VM detection anticheat. I'm sure Solidworks will work on VMs because that's the main selling point of vGPU in the first place. If it doesn't work, make sure you install Hyper-V, on guest, enable nested virtualization on host, and set CPU model to 'host' or 'passthrough.'

Edit 1: Also make sure to install QEMU guest driver or it wont work. I will also test out 470.05 drivers and see if that bypasses the checks.
Edit 2: You probably don't even need to enable HyperV in the first place. With CPU set to 'host' and Nested VT enabled, my VM just works with no Error 43 at all!

Quote
1. Fake Quadro K5000 inside Windows VM can be detected as Tesla K10

I should have probably mentioned earlier that all that this PCI ID spoof does is change the PCI ID and name of the GPU, but it still recognizes as whatever the GPU actually is. That's why it's not a very effective method. My recommendation for you is to convert each chip on the K10 to a Quadro K5000, or a Grid K2 and it pass it through either as Grid K2 OR K5000 and hopefully all display technologies can activate, such as DirectX. Let me know what works for you and what doesn't.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: kevinshane on March 23, 2021, 06:10:57 pm
Massive thanks to @DualCoder for making the vGPU Unlock program. It works fairly well!
I tested it out with PROXMOX hypervisor (KVM) and a Windows 10 Virtual Machine. I was even able to game at 60 FPS! Only problem is that after 10 minutes it capped me at 3 FPS because I can't afford a license  :-DD

In all seriousness though, this is awesome work and it is actually very well done. I suggest all of you try it out and contribute to the project!

Next step: trying to figure out how to bypass licensing...

Hi dear krutay, does the whole "gtx1080 fake to a p4-4q" method can run multiple win10 vm at the same time? say for example, 4 of the "fake p4-4q" vm running on proxmox? Thanks

edit1: Oh sorry I just double check the p4-4q profile and it's a 4G card, so if I understand it correctly, this type of profile can run 2 win VMs at the same time theoretically? so how about the "P4-1Q" profile? as the nvidia doc said it can support up to 8 vgpus per board, so theoretically your gtx1080 can at least run 8 VMs simultaneously?

edit2: for the nvidia license price, I don't get it why you are saying it's freaking expensive, because I just asking a guy who sell those licenses for like 150 US$/8vDWS or around 150US$/32vPC, I don't know what exactly the difference between vPC and vDWS tho.. but the price sounds good to me(if the license is legal, which again have no idea).. May I ask you what was the price for your location that nvidia charge you?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: user567876 on March 23, 2021, 09:24:34 pm
Who quoted you that price? According to Nvidia’s website and what I see on Dell.com it’s $50 per year per user which has to be bought in 4-5 year increments. Check out this link. https://www.nvidia.com/en-us/data-center/buy-grid/] [url]https://www.nvidia.com/en-us/data-center/buy-grid/ (http://[url)[/url]
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 24, 2021, 02:01:56 am
Quote
mcerveny: "470.05_gameready_win10-dch_64bit_international.exe" allow passthrou of GTX card without any virtualiaztion quirks (and without error code 43) ?

Quote
however SolidWorks with my university license just refuses to run under KVM virtualization whatsoever.

If you enable Hyper-V on the guest system, for whatever reason the VM becomes a regular computer and doesn't register as a VM, allowing you to play pretty much any game with VM detection anticheat. I'm sure Solidworks will work on VMs because that's the main selling point of vGPU in the first place. If it doesn't work, make sure you install Hyper-V, on guest, enable nested virtualization on host, and set CPU model to 'host' or 'passthrough.'

Edit 1: Also make sure to install QEMU guest driver or it wont work. I will also test out 470.05 drivers and see if that bypasses the checks.
Edit 2: You probably don't even need to enable HyperV in the first place. With CPU set to 'host' and Nested VT enabled, my VM just works with no Error 43 at all!

Quote
1. Fake Quadro K5000 inside Windows VM can be detected as Tesla K10

I should have probably mentioned earlier that all that this PCI ID spoof does is change the PCI ID and name of the GPU, but it still recognizes as whatever the GPU actually is. That's why it's not a very effective method. My recommendation for you is to convert each chip on the K10 to a Quadro K5000, or a Grid K2 and it pass it through either as Grid K2 OR K5000 and hopefully all display technologies can activate, such as DirectX. Let me know what works for you and what doesn't.

UPD #1: burned vBIOS #2 chip while soldering with fan ( :palm:). I will buy a replacement one. Model is GD25Q20B.

UPD #2: vBIOS #1 was flashed as Grid K2 and I still have driver issues with K2 under Windows VM. No idea why.

UPD #3: K2 cannot be PCI ID spoofed into K5000 to resolve this. K5000 drivers can be installed but they fail after reboot in the same way as K2 drivers. K10 can be spoofed into K5000 and work with SolidWorks and some OpenGL/Vulkan games.

UPD #4: I have found a set of resistors that might help to turn K10 into dual K5000. Values are ranging between 5K and 45K just like GTX780ti schematic I sent before. I guess this might help. I will do more tests and research and make an update. Picture #1 shows GPU die straps for #1 (PCIe side), Picture #2 is for GPU #2 (power connector side)

P.S. GPU#2 straps will be in 2nd post, because 5000kb max per post.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 24, 2021, 02:03:49 am
GPU die straps for GPU#2 (power side)  :-//

Edit 1: These are NOT vBIOS straps. Those are related to GPU die straps and responsible for the various settings such as VGA enable etc.

Quote
mcerveny: "470.05_gameready_win10-dch_64bit_international.exe" allow passthrou of GTX card without any virtualiaztion quirks (and without error code 43) ?

Quote
however SolidWorks with my university license just refuses to run under KVM virtualization whatsoever.

If you enable Hyper-V on the guest system, for whatever reason the VM becomes a regular computer and doesn't register as a VM, allowing you to play pretty much any game with VM detection anticheat. I'm sure Solidworks will work on VMs because that's the main selling point of vGPU in the first place. If it doesn't work, make sure you install Hyper-V, on guest, enable nested virtualization on host, and set CPU model to 'host' or 'passthrough.'

I tried again today with single K2 chip. Windows 10 does not detect VM after Hyper-V installation (sounds like another microsoft bug), but Grid K2 still gives Error 43.

My server is based on Dell T3600 that uses C600 chipset just like on R720 and all IOMMUs are correct. Again, Tesla K10 (either by itself or K5000) works perfectly as well as Radeon Vega cards work inside VMs. I have issues only with Grid K2 or lower Quadro cards (I tested with P400 before) and only under Windows. Linux has no issues with VMs and Nvidia. I previously got Grid K2 to work under Linux and even run some gears OpenGL benchmarks.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 26, 2021, 01:08:42 am
3D acceleration fully enabled for "physically" unmodded Tesla K10 under QEMU KVM Proxmox 6.3 with Windows 10 VM.

Both DirectX 9-11 with finally full support for both games and benchmarks as well as full support under Vulkan.

Will post my software solution a little later.

Edit #1: Parsec remote gaming works with Nvidia-based video encoding
Edit #2: Renders in Blender work, 4K render on-going
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 26, 2021, 11:01:25 pm
Quote
GPU die straps for GPU#2 (power side)

Personally, I own a GTX 660 Ti which I have done the PCI strap mod on and got it to a GRID K2. But that did not unlock vGPU so it was useless.

There is a video made by YouTuber Craft Computing where he does the Tesla K10 to K2 mod, and there are also instructions for that in this thread posted a few years ago. Were you able to get it converted into a Quadro K5000? I've been thinking about doing some sort of mod to get better workstation performance... (potato server)

In the meantime, I am going to do some experimentation on AMD cards because that seems like a pathway that nobody is really exploring right now. Let me know if any of you are interested!
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 27, 2021, 03:56:30 am
Quote
GPU die straps for GPU#2 (power side)

There is a video made by YouTuber Craft Computing where he does the Tesla K10 to K2 mod

Craft Computing YouTube recommendation is where my entire Tesla K10 journey has started. I got Tesla K10 from eBay that was already converted to Grid K2 by someone.

It works in bare-metal windows machine in a PC tower, however my goal was to use it inside of the Proxmox potato server I have. vGPU does not work under KVM (unless it is RHEL) and I have never succeeded in passthrough of the Grid K2 to the VM, unresolvable code 43. I basically gave up on K2 and my next goal is to get full hardware mode of the K10 into K5000, however I don't think it is necessary anymore.

I have created another way to do it without hardware mode.

====SOLUTION BELOW====
Solution is still under development and tested on GPU #1 ("video port" side) only on Tesla K10. GPU #2 (power connector side) and new rom test is required, however my GPU#2 requires repairs, thus I will test it only later in April when I get my components.

Disclaimer: I am not an Assembly programmer nor GPU designer (yet? still studying to become one). Whatever is written below was just my final most dumb approach (what if it just works?).

0. GPU differences:
GPU: ------- CUDA? ------- 3D enabled ------- Video out? ------- QEMU KVM?
K5000 ------ yes ------------- yes -------------- yes -------------- yes
Tesla K10 --- yes ------------ no ---------------- no --------------- yes
Grid K2 ----- no ------------- yes --------------- no ---------------- no (RHEL KVM works)

So, the goal is to bring 3D-acceleration to the Tesla K10 in one form or another...

1. Project was initially inspired by krutav's PCIe ID spoofing method, because, in my opinion, it was not tested enough.
What do we know?
PCIe ID change using hardware mode enables some of the features, but not all of them... 660Ti or some other cards converted to Grid K2 does not enable all features of the Grid K2.
PCIe ID spoofing using purely Proxmox enables some of the features, but again, not all of them... Probably, KVM limitation, probably something else.

My PCIe ID spoofing results of softstraping Tesla K10 to K5000:
DirectX: NO
Vulkan: YES (partially)
NVENC: yes
CUDA: yes
CAD: yes

What is my goal?
Make it work as true Quadro K5000.

What prevents other GPUs (including K10) from being a true hacked target GPU (e.g. K5000)?
If you check GTX780ti schematic I have sent before and you check page 28 (ROM and straps) you will see that GPU die straps are responsible for the bunch of secondary GPU settings that are not PCIe ID related. VGA enable and many other ones. I believe, some of them may affect the final GPU performance.

Additionally, my assumption that GPU's vBIOS also heavily affects final performance, because it is obviously not just VRAM config and CLK config. My assumption. that vBIOS also controls GPU functionality and allows to enable or disable features.
This assumption comes from some old Plex Media Server NVENC hack from habr.com written by some Russian user, who hacked nvidia to run multiple NVENC sessions on GeForce.

While Grid K2 and Tesla K10 share 99.99% same PCB (except for 3rd nibble resistor), Tesla K10 and VGA-enabled GPUs (GTX680, K5000 etc) do not share same strap resistor config pattern (GTX780ti, I can also drop other Kepler schematics, I have GTX770 that uses GK104), thus configuration of the Tesla K10 to K5000 may not be that simple as I initially thought.

2. What is my idea?
What if I can flash K5000 vBIOS to K10 without doing a hardware mod?
Long time ago in this thread, some users mentioned rewriting vBIOS and replacing PCIe IDs and PCIe subsystem IDs using hex editor to change values and KeplerBiosTweak to verify the checksum. That's exactly what I decided to do!
I took K5000 vBIOS and replaced PCIe and subsystem IDs of the K5000 with Tesla K10 IDs. Why? Because nvflash tool cannot even force-flash a card if hardware IDs are incorrect.

So, my solution is to flash K5000 BIOS with K10 IDs and fixed checksum. ROM is attached below for anyone who is willing to play with this. Only Tesla K10 is supported and ONLY GPU #1 is tested right now.

Use nvflash tool with mismatched ID patch.
Command:
Code: [Select]
nvflash.exe --index=0 -6 k10-1-5000.rom
Install your card under KVM based VM using krutav's method.
Code: [Select]
args: -cpu 'host,hv_time,kvm=off' -device 'vfio-pci,host=06:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on,romfile=quadrok5000.rom,x-pci-vendor-id=0x10de,x-pci-device-id=0x11BA,x-pci-sub-vendor-id=0x10de,x-pci-sub-device-id=0x0965'
Remember to change the host-0X:00.0 to your GPU IDs using lspci -v command in terminal.
Also, quadrok5000.rom is the real K5000 vBIOS from TechPowerUp, not a modified version below.

Install drivers for K5000 either using default .exe (Windows) / .run (Linux) or Quadro Experience. It just works.

3. Did it work?
Kinda. More yes than no.

DirectX: supported now both under games and benchmarks (DirectX < 12), older games written in DirectX9 tested and work
Vulkan: works (as much as it can)
OpenGL: works
3D rendering: works (Blender and PhotoView360 tested)
NVENC: fully enabled (including cloud streaming e.g. Parsec Remote Gaming)
CUDA: works
CADs: work (SolidWorks 2020)

4. Conclusion:
I plan to do same mod to the second vBIOS of the K10 and run two VMs under Proxmox with full GPU passthrough.
Whatever bug inside drivers/Proxmox/vBIOS compare to original krutav's method actually encloses your true GPU to the system and Quadro Experience, MSI Afterburner and games/benchmarks see it as Tesla K10, while Windows sees it as K5000.

vBIOS is available below:
https://github.com/amidg/teslak10-3d-enabled
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: user567876 on March 27, 2021, 04:23:44 am
Quote
GPU die straps for GPU#2 (power side)

Personally, I own a GTX 660 Ti which I have done the PCI strap mod on and got it to a GRID K2. But that did not unlock vGPU so it was useless.

There is a video made by YouTuber Craft Computing where he does the Tesla K10 to K2 mod, and there are also instructions for that in this thread posted a few years ago. Were you able to get it converted into a Quadro K5000? I've been thinking about doing some sort of mod to get better workstation performance... (potato server)

In the meantime, I am going to do some experimentation on AMD cards because that seems like a pathway that nobody is really exploring right now. Let me know if any of you are interested!

I tried the AMD FirePro S1750 and the card was cheap but I was never able to get the MXGPU to function properly with esxi 7 as they only support up to 6.5. (So I did get it working but it would crash under load)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 27, 2021, 07:02:33 pm
Quote
====SOLUTION BELOW====
Solution is still under development and tested on GPU #1 ("video port" side) only on Tesla K10. GPU #2 (power connector side) and new rom test is required, however my GPU#2 requires repairs, thus I will test it only later in April when I get my components.

Disclaimer: I am not an Assembly programmer nor GPU designer (yet? still studying to become one). Whatever is written below was just my final most dumb approach (what if it just works?).

0. GPU differences:
GPU: ------- CUDA? ------- 3D enabled ------- Video out? ------- QEMU KVM?
K5000 ------ yes ------------- yes -------------- yes -------------- yes
Tesla K10 --- yes ------------ no ---------------- no --------------- yes
Grid K2 ----- no ------------- yes --------------- no ---------------- no (RHEL KVM works)

Wow @dgusev thank you so much for the writeup! Can't wait to get it it working on the 660 Ti perhaps.

As far as vGPU is concerned on K10's and GRID K2's, I'm thinking of building the XEN Grid 350 drivers for RHEL so that all of us linux users can enjoy Grid K2 on KVM! The drivers across the 2 operating systems are very similar, the only difference being that XEN does not use VFIO-MDEV for VFIO mediated devices, which is what we need for RHEL/linux KVM support. Because the XEN driver uses RPM, it will be pretty easy to work with on RHEL, not sure about other operating systems though. Because I don't own a GRID K2 or Tesla K10, I have no way of testing this and may have to resort to modding DualCoder's vGPU unlock script to support GTX 660Ti. There is also no NVENC or CUDA support on GRID K2 vGPU :( (Not that I know of)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 28, 2021, 03:51:23 am
Quote
====SOLUTION BELOW====
Solution is still under development and tested on GPU #1 ("video port" side) only on Tesla K10. GPU #2 (power connector side) and new rom test is required, however my GPU#2 requires repairs, thus I will test it only later in April when I get my components.

Disclaimer: I am not an Assembly programmer nor GPU designer (yet? still studying to become one). Whatever is written below was just my final most dumb approach (what if it just works?).

0. GPU differences:
GPU: ------- CUDA? ------- 3D enabled ------- Video out? ------- QEMU KVM?
K5000 ------ yes ------------- yes -------------- yes -------------- yes
Tesla K10 --- yes ------------ no ---------------- no --------------- yes
Grid K2 ----- no ------------- yes --------------- no ---------------- no (RHEL KVM works)

Wow @dgusev thank you so much for the writeup! Can't wait to get it it working on the 660 Ti perhaps.

As far as vGPU is concerned on K10's and GRID K2's, I'm thinking of building the XEN Grid 350 drivers for RHEL so that all of us linux users can enjoy Grid K2 on KVM! The drivers across the 2 operating systems are very similar, the only difference being that XEN does not use VFIO-MDEV for VFIO mediated devices, which is what we need for RHEL/linux KVM support. Because the XEN driver uses RPM, it will be pretty easy to work with on RHEL, not sure about other operating systems though. Because I don't own a GRID K2 or Tesla K10, I have no way of testing this and may have to resort to modding DualCoder's vGPU unlock script to support GTX 660Ti. There is also no NVENC or CUDA support on GRID K2 vGPU :( (Not that I know of)

I would be happy if we can find a way to run vGPU under Proxmox on Kepler-based cards, however I don't think we can do it. Even with @DualCoder's solution, because Kepler generation does not have a Debian KVM compatible Grid driver, so we basically need to write our own. My server based on Dell T3600 runs everything including TrueNAS, Plex (K2000 in the same server for NVENC) and Windows VMs with GPUs, thus I believe the solution above is pretty much what I have been looking for.
K2000 occupies nvidia driver in proxmox kernel, while K10 uses vfio-pci driver.

Ultimately, this method allows to get two K5000 without vGPU and other struggles and everything is pretty much enabled compare to Grid K2 that has CUDA and NVENC disabled. I think this is probably the only solution for Kepler-based Tesla cards.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on March 29, 2021, 11:02:01 pm
Quote
Ultimately, this method allows to get two K5000 without vGPU and other struggles and everything is pretty much enabled compare to Grid K2 that has CUDA and NVENC disabled. I think this is probably the only solution for Kepler-based Tesla cards.

I think your solution is awesome and it will definitely come in handy for many others. I should mention that this requires a KVM host for the PCI ID spoof, and unfortunately my server won't enable passthrough for KVM so I have to use ESXI. Because of this, everyone who is not using a KVM hypervisor or is using as a bare-metal graphics device will need to do PCI ID straps resistors, something covered with great detail on this forum.

Only problem is that I have GTX 660 Ti which has the lowest binned silicon compared to the Tesla and Quadros, which means that your method has a low chance of working on the low-end GK104 cards. I'd love to be wrong though, so if I have time I will try soldering some new resistors on.

And one more thing for all of you, I have the schematics/boardviews for Kepler series graphics cards like the GTX 760 (GK104) and GTX 780 (GK110) which you can reference if you want to do a mod or repair your graphics card. Not sure if I can link them here, but they are available on a BadCaps forum if you need.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on March 30, 2021, 05:58:57 pm
Quote
Ultimately, this method allows to get two K5000 without vGPU and other struggles and everything is pretty much enabled compare to Grid K2 that has CUDA and NVENC disabled. I think this is probably the only solution for Kepler-based Tesla cards.

I think your solution is awesome and it will definitely come in handy for many others. I should mention that this requires a KVM host for the PCI ID spoof, and unfortunately my server won't enable passthrough for KVM so I have to use ESXI. Because of this, everyone who is not using a KVM hypervisor or is using as a bare-metal graphics device will need to do PCI ID straps resistors, something covered with great detail on this forum.

Oh, yeah, as stated on GitHub that's basically tested only for K10 and I targeted my Proxmox server with KVM.
I probably need to clearly state this on GitHub that this solution is only for compatible cards that share same GK104 variant (or at least very similar) with same VRAM etc. I am sure it will not help 660ti or any other lower-end GeForce card because vBIOS/drivers will have to deal with non-existing CUDA cores, non-existing VRAM etc.

That solution is super niche.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on April 01, 2021, 04:19:43 pm
Quote
Yes, it is official now. GTX/RTX is enabled for passthough without modding from R465 beta drivers.

Awesome! Personally I never had code 43 issues, GTX passes through fine and driver doesn't care at all about VM.  :-DD

I think we'll definitely be looking at a more open future of consumer graphics cards. Also, for those of you are working remotely with GeForce cards, Nvidia released a patch you can download called "nvidiaopenglrdp.exe" that enables remote desktop OpenGL for CAD users working remotely. You'll need to create an Nvidia developer account to download it.

Edit: @dgusev my P106 is broken so I cannot try the 3D enable mod similar to how you did with the Tesla K10. It may work... but for some reason the +5V line is going straight to GND.  :palm:
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on April 01, 2021, 10:36:14 pm
Quote
Yes, it is official now. GTX/RTX is enabled for passthough without modding from R465 beta drivers.

Awesome! Personally I never had code 43 issues, GTX passes through fine and driver doesn't care at all about VM.  :-DD

I think we'll definitely be looking at a more open future of consumer graphics cards. Also, for those of you are working remotely with GeForce cards, Nvidia released a patch you can download called "nvidiaopenglrdp.exe" that enables remote desktop OpenGL for CAD users working remotelye. You'll need to create an Nvidia developer account to download it.

Edit: @dgusev my P106 is broken so I cannot try the 3D enable mod similar to how you did with the Tesla K10. It may work... but for some reason the +5V line is going straight to GND.  :palm:

Looks like capacitor short circuit
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on April 02, 2021, 04:53:43 am
Looks like capacitor short circuit

Probably is... I don't have schematics for this model so I'll never know. Anyway, I got good use out of it for the $16 it cost to buy P106 back in the day. I don't have any other 3D disabled graphics cards to test with, and I don't see any purpose in shelling out $200+ for a Maxwell Tesla because all these consumer GeForce cards are far better in everything but OpenGL. However, the Nvidia Studio driver which supports Pascal series graphics cards does have some OpenGL optimizations I think, and the performance in Blender is pretty good so I don't worry too much about buying a Quadro just for that OpenGL boost.

As far as the P106 goes, a 12v to 5v step-down converter bust and I'm not sure what that did because the surroundings are in perfect condition. I'll need to get GTX 1060 (Zotac preferably) schematics/boardviews to get a better idea of how to go about fixing it, so I'll be on the lookout for some of these files, and I can get back to experimenting!

One big problem: P106 has no display outputs or NVENC, so I don't see any method of actually enabling normal function with it even if I use the @dgusev vBIOS 3D unlock method...
Edit: Only Quadro can create virtual display instances so there's that.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: dgusev on April 04, 2021, 04:10:24 am
I recently installed Nvidia OpenGL RDP fix that is not required for Quadro cards...  :palm:
So far, before this dumb move from my side, GPU had no issues in virtualized gaming and even CADs. Everything worked as promised.

All kinds of VMs ended up with unfixable Error 43.

Result: bricked vBIOS on GPU #1 (the only that was working hahah). Cannot reflash it using nvflash. Waiting for my CH341 to force flash chip.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: keggerbra on May 27, 2021, 07:46:04 am
Hello Everyone! My name is Adam, found this thread randomly and thought I would pop in.

This sounds like an amazing project you guys are working on. Has anyone here considered trying to flash or convert an AMD FirePro S9150 series card? I have a few available and would be willing to dedicate them to the effort if anyone is interested.

I have a professional background creating VDI architecture for hospitals and large scale production environments. These cards are currently part of my home lab and I used them for proof of concept for a technology patent. However I’m in the same boat as you guys, I like to try new things and experiment! While I get to work on some serious hardware, I’m limited in my homelab and the current state of GPU availability, application/OS compatibility, and licensing is abysmal. I have various projects on hold due to limited options when it comes to options.

I would love to see the capability of these cards running as mxgpu in VMware ESXi, KVM, Xen and if I can help contribute to make it a possibility, please feel free to contact me or reply. Thanks!!


https://www.amd.com/en/support/professional-graphics/firepro/firepro-s-series/firepro-s9150 (https://www.amd.com/en/support/professional-graphics/firepro/firepro-s-series/firepro-s9150)

(https://i.imgur.com/Bsc6rfC.jpg)

Some more pictures of my cards
https://imgur.com/a/sl6iIDM (https://imgur.com/a/sl6iIDM)
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on May 31, 2021, 02:04:04 am
Quote
I would love to see the capability of these cards running as mxgpu in VMware ESXi, KVM, Xen and if I can help contribute to make it a possibility, please feel free to contact me or reply. Thanks!!

Hello Adam,

Unfortunately, the FirePro S9150 is a GCN 2.0 GPU marketed towards VDI, but it does not support SR-IOV. The MxGPU feature requires SR-IOV functionality, which was implemented in the next generation. This new generation is GCN 3.0, more specifically the "Tonga" AMD chip in the FirePro S7150s supports SR-IOV and MxGPU as a result. So you probably aren't going to be able to get MxGPU on S9150 sadly.

There are other options though like VMware vSGA shared graphics, but that is old. New in Microsoft's HyperV is GPU-P which is the successor to RemoteFX and works on most cards, including the FirePro S9150. It works really well, but it's only an option worth considering if your environment is primarily Windows.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on June 04, 2021, 07:31:13 am
Based on my testing, the internal timer to license requirement starts at 20 minutes of guest VM Nvidia driver running. If you can mask that, you get the features forever. But that is harder to do.

The guest's driver? On a Windows guest? Then here is a crazy idea: Attach CheatEngine to the driver, enable speedhack, speed = 0, done. I have no idea if that could work, it will probably cause other problem though.

Quick tip for anyone whos fighting on the license.

1. Forget about FlexNet. Its not that easy to crack after all

2. When Guest(Windows) enters limited performance mode (after 20min), try to disable the vGPU device in Device Manager and start again.
This will reset 20min timer and gives you big hint that where the 20min gets calculated.
I tested this on vGPU 10.2 driver so not sure about latest vGPU 11 though
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: gotofbi on June 04, 2021, 07:34:00 am
This sounds like an amazing project you guys are working on. Has anyone here considered trying to flash or convert an AMD FirePro S9150 series card? I have a few available and would be willing to dedicate them to the effort if anyone is interested.

I dont think you can make S9150 SR-IOV compatible.

After all, S7150 has special bios for SR-IOV that other card does not have.

My suggestion will be get W7100, put bigger BIOS chip, flash S7150 bios, override PCI-ID in guest OS to allow AMD gpu driver to be installed.

Detailed info can be found here:
https://forum.level1techs.com/t/how-to-sr-iov-mod-the-w7100-gpu/164186
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: krutav on June 06, 2021, 03:41:50 am
Quote
Quick tip for anyone whos fighting on the license.

1. Forget about FlexNet. Its not that easy to crack after all

So me and some other folks running the vGPU_Unlock Discord server and Wiki have figured out how to bypass the license entirely with "x-pci" QEMU argument. I won't go into details for obvious reasons, but this completely throws away license requirements. Of course, if you want to use vGPU I highly recommend paying Nvidia for it, but yes there is a workaround. I may have posted the Discord link here, though if it isn't there, send me a message.

Quote
My suggestion will be get W7100, put bigger BIOS chip, flash S7150 bios, override PCI-ID in guest OS to allow AMD gpu driver to be installed.

If you have a bunch of S9150s lying around, what's the point of spending more money? The MxGPU technology on S7150 is not very advanced and Nvidia vGPU is better than it in many ways. My recommendation for Adam is to use them in standard passthrough mode, that way the cards don't go to waste. With 8 of those GPUs, I don't think GPU mediation is necessary anyways. These S9150s aren't very new, nor that great, but they can be used in a remote gaming or workstation setup I suppose.

Perhaps the best use of those cards is Folding At Home, where you can give unused compute power to help with scientific calculations that can benefit society.
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: BLEACH on August 14, 2021, 06:20:43 pm
Has anyone attempted this on the new 30 series cards ive found the resistors by the bios chip ive unlocked the mismatch id by changing it in the bios but keep getting caught by the certification on nv flash im trying to change device id from 2216 to 2206 with the resistors ?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: BLEACH on August 15, 2021, 05:29:50 pm
im going to attempt this on a newer 3080 but i noticed in nvflash the eprom always keeps the same id number and ive noticed nividia marks them with different paint so i need to know if anyone has a 3080 450-480 watt model 2206 bios and if they can get me the number nividia use on that exact vbios chip in it i will be replacing it as a second bios replacing the switch and trying different resistors to see if i cange 2216 to 2206 thank you in advance !
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Rettep on October 14, 2021, 01:49:55 am
Can you do that with the mining P106-100 without having the limitations of the old drivers?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Rettep on October 17, 2021, 07:19:46 pm
Can you do that with the mining P106-100 to use it as a normal 1060?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Dave Boechler on October 25, 2021, 05:13:16 pm
Have a GTX 690 which resistors have been changed and want to set it back to stock anyone have a picture of the resistor locations and values for a stock GTX 690?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Xii-Nyth on May 10, 2022, 09:08:55 pm
Any luck?
Title: Re: [MOVED] Hacking NVidia Cards into their Professional Counterparts
Post by: Rickochet on November 03, 2022, 09:48:36 pm
@Rettep
Any luck? or still going with 422.15 ?
Either this: Directx12 does not crash, but NVDIA control panel does not open: https://github.com/iiiyx/p106-100-p104-100 (https://github.com/iiiyx/p106-100-p104-100)
Or that:   Directx12 games crash,  but NVDIA control panel  opens:  ( change that MShybrid registry key) :   https://youtu.be/dkE4aAVUIzU


I would love to turn P106-100 into a 1060 6GB on a firmware level. Can't we just reprogram the bios EEPROM chips?

Also for some reason my Asus P106-100 has 2 display out ports (DP and HDMI) that are used as screwholes and blocked by the IO-plate. I wonder if I can utilize those ports and get somehow displayoutput from them? ( If the video driver amplifier circuitry is not missing?)

https://i.imgur.com/jJy7bh0.jpeg    https://i.imgur.com/S6PEkES.jpeg