Contribute
Register

Ideas and try to get overclocked Nvidia card natively work

Status
Not open for further replies.
Hey Glennv !

Still around, since the last bench post I've not updated my system, that's why there was no update about it :)

Can't do a long answer now but will be more aviable in 48h :)

To be clear, you flashed your GC in windows, following instructions in my fist post to hard code frequencies and tdp limits in the GC itself ?

It's the only way to make them seen on Mac.

- You test them on windows to be sure of the stability (with any msi afterburner like)
- Put any "software" oc to 0 (however it will overclock by soft your overclock in GC bios haha)
- Hardcode frequencies in the bios with this link (would be the same for the TI) http://www.overclock.net/t/1517316/...d-980-firmware-zosons-h2o-and-air-custom-bios
- Re-read my fist post with some tips
- Use cinebench on OSX to see if correct values trigger

If you done that and have a problem with your max core frequency it may be the regular/boost frequency in bios.
You put 1500 in core speed and not on the boost and the system take boost value which is supposed to be the max ... But still at 1240 :)
Best thing to do is remove boost and put same value for max regular and boost to be sure.
You can compare my bioses on the first post to see if you have similar values in all your cases from your stock to your OC one.
Be just extra careful to not mix your one and mine then upload mine in your GC ;)
Keep me updated !

Edit: long time I did it but be sure to also have put correct values in the power supply part (which could be confusing, check my oc bios to compare).
It should be the bios part of this option you put to 75w in Windows (75w is the PCI express port max power if I remind well)
Don't increase it more than 75w as it will draw power from your motherboard and may cause instability and too much stress on the compos.
It's much better to take it directly from your power supply on two different line if she can handle it (check max power/12v line on it), if you have a good power supply it should not be a problem.
Do not use a splitter to feed the GC, take power from somewhere else if needed but keep 2 different 12v lines dedicated to the GC.
On my bios I had 1 power line at 160w and the other at only 78w (which is stupid)+ PCIe at approx 75w or less (default is 60w or 75w, no more sure, you can check on my default bios).
Put both power supply lines to 160w, like this it can draw all it need directly from the power supply, if it's stable like this, keep pcie power to default value (the less you touch it/increase it the better it is).

Don't forget to increase max tdp accordingly (and have a good cooling !)

Last thing, check if you increased voltage on the late stages of power to tell the card to draw the power you allowed her to draw on the power supply page.

My guess would be a mistake in power value somewhere :)

Put my oc bios on a side and your one on the other and check if you have corresponding values modified with your own settings, page by page, should work :)

Also, post your original bios and your modified one after you did the checks above and I may take a look in few days if it still don't work :)
If it works, I would be happy if you could post why it wasn't (for reference to future bios overclockers ... And me) and the original and overclocked working bios :)

Here is the quote from first post:

Did also some other modifications to bios:
- Fanless mode (not totaly working on mine but still reduced minimum fan speed to 25 instead of 30)
- Increased max voltage on all late power state mode to avoid any voltage limitation/increase stability earlier
- Increased max tdp to 300w and default to 285 to not be limited too as there is no soft to allow card to go past default value on mac (will not increase it more, TDP in burn at 90% so approx 260W)
- Set power from both supply lines to 160 instead of 78+160 by default. I prefer take max power from it than PCIE port.

Btw I will update my OS when I will have time (maybe 1 month or 2) and try to do bench for most versions as I did for previous ones :)
For now still work perfect !
 
Last edited:
Last thing, values seen on Istat (and any utility I know on OS X) are, for an unknown reason, different from what you put on the bios.
It doesn't mean that your overclock don't work, it's just displayed by a different manner (don't asks me why !).

But if you modify your bios overclock, there will be a change in the OS X value you get.

By example here is what I get:

Hardcoded the values into my 980 Bios:
Core: 1447 Mhz (with boost)
Memory: 4001 Mhz

Istat output:
Core: 1140 without boost and 1190 when it trigger.
Memory: 8000

So 1190 in Istat mean 1447 in reality ... Which mean overclock works.
I was at 1160 in Istat with 1400 MHz as max boost, moved to 1447 and got 1190.
+ 47 in bios, only +30 in Istat.

If you revert to original bios it will be less than default values.
In Windows, correct values are displayed ;)

So maybe you did everything all right and this difference between what you put in bios and what you see is just how it's displayed !

But recheck it with everything I said before is also important as you have to find to what this 75w case you tick in Windows mean in the bios to hard code it.
If you did it right, you should not have to tick anything on Windows to unlock full power as it's already in your bios.
In fact I've to underclock the card on Windows with MSI afterburner as it lead to instability with my bios frequencies on Windows and it's perfectly fine on OSX.

All this lead me to an idea.

OSX could underclock all cards core and this difference on core value displayed we are experiencing is not a different way to display but a real system automatic underclock.

It could be possible as OS X is mainly made for laptop or little tubes as we seen on the last Mac Pro.
So in laptops, heat and consumption are a problem and frequencies need to be lower to limitate it and in the last Mac Pro, the cooling is an issue, same way to avoid it: core frequency.

Same thing for iMovie which was only using half cpu (50/55% max) and absolutely not the graphic card to do rendering when I did thoses tests.
They have **** graphic cards and even more in laptops, so it would be no help and proc is half used cuz cooling is **** on everything.
Thanks to Ive, soon We will be apple to swallow a Mac, it's already thick enough, only 2 axis to reduce even more ;)

They limit power usage to keep heat under control.

Said like this it sounds a bit like alien theory but maybe not.
Plus we put differences of performances on the same app (and they are few) between Windows and Mac drivers optimizations, system etc, there is no way to really compare.

On a low perf card like the one they give it's not really an issue to reduce frequency by approx 20%, even more if the programs are willingly not made to use it (it's already just enough for the iMac 5k) but for us thoses limitations are useless.

I can't test it before quite some time but here is how I would do:

I would calculate the factor of difference between the default core value and the displayed one under OS X then do the same with the overclocked one.
We will find something around 20% I think.

Keep a backup of bios ready to be restored with the procedure on first post (it works well, I tried it ;))

After I will underclock the card frequencies to maximum under Windows using msi afterburner to be able to boot.

Then create a new bios with core value increased by 15% (not 20 to not push it to far in a first time) of o/c value, flash the card and try to boot on Windows (see if it's still possible with enough software underclock to compensate bios value).
If it's not doesn't matter, it would be possible to revert to default bios.

See if it boots on OS X, read the new value on Istat which should be near the regular overclocked value and bench.

If it's working, it means that OS X reduce core frequency and we can gain 20% by increasing it in bios and under-clocking it under Windows by software to come back to our max stable value.

Quite easy as we already know the max stable core value in Windows, we should just have to increase it in the bios to not go past it in OS X with Istat value as feedback.

No card can be stable at +15% of her max overclocked core value under another OS, which would also explain why I've to underclock it already under Windows to be stable and it can take 4K encoding during 5 hours and still be stable as a rock with the same bios frequencies on OS X.

If anyone wanna try it it could be super cool :D
I will be for sure as soon as I can (more than a month or more sadly :( )

Damn it was supposed to be short ... 3 hours after I'm still posting ... All from my iPhone haha

Share your thoughts !
 
Last edited:
Hey may, yeah a realy short reply. I am am bit upset you did not the time to give me a bit longer reply. Hahahahaha.
You are like me. I talk to much my wife say.
Wil post my bios this afternoon, but to give you my short version.

Funny thing is i spend 48h straight in doing exactly all the crazy stuff you did only to then find your post to see it was like i read my own experiences. Crazy stuff.
- Did a very basic and simple OC in windows as my card seems to not give a damn when i raised the core freq to 1500. Windows died on me when i did that as i did not realise how boost worked. So dropped it to 1300 to end up at perfect 1500 with boost.
from 1600 the card started dying on me so left it there. Mem at 4000 (=8000) did not break a sweat.
(btw after my first restart with this i forgot to switch of the software OC so it blew up on me as 1800 was a bit to much for the poor card hahahaha
- did not need any extra power or voltage , but upped the power levels to 275 on rail 1 and 2 and put 75 on pcie as max safe. Total at 300w So no limits on power.
- Then flashed it after shitting my pants for a few hours only to find out its super simple (by now i have flashed about 50 times i guess)
-Then moved to OSX (Yosemite 10.10.5 , which is the only key diff between us i think, but i need it for my protools 10 rig) only to find that is seemed to boost only a little , dont remember anymore how much but was way under what i set/expected (wiil retest that one today as i kept every bios test on file)
- So read up some more and more and more and found a german site similar to your post and set all freq to 1500 , checked all upper power states and made sure they had enough juice and went back to OS.
- Then i started immediately hitting the 1500 mark. It did nice speedstepping in the lower regions so seemed to work fine but the moment i started any bench it jumped straight to 1240.
- DId all my bench tests and my main reason (Davinci resolve) where i found some great OC values already as 1240 is still al lot above 1000, but i went back to Windows to keep experimenting.
- In the mean time i fixed my AGPM so i could set it to log power state switches in the syslog as i started suspecting it got stukc at maybe a lower power state. The only place where i could find a freq 1240 was on power state 53 in the table (74 highest was at 1500.
- SO i upped the whole table so state 53 matched 1500 (75 was then in the 1700's but i set max boost to 1500 thinking it would be safe.
- Flash and not boot in windows as there it would blow (left card off in windows registry which was from then on my strategy as the new values would be all too high for windows but could work in OSX
OSX booted and when i started Cinebench it looked like for a second it jumped to a very high value and then back to 1240 and a full system crash. Not sure as was too fast. Could have been my mind playing tricks on me. But it could support our theory of OSX/Nvidia underclocking at certain power levels.
- So went back and pushed the table only a little bit to see it it could increase like 10 Mhz, but back at 1240.
- My latest bios has all power states up from about 30 or so to 74 set at min voltage i saw in my windows overclock and max voltage .2 or so above so there is no V limit. Power as described before and similar to you with 300 as max 175 per rail but pcie at 75 (not save to play there and should not be needed)
Every other value is stuck at 1500 for top 2 P states .
- My expeiriment in windows with that parameter (will tell this afternoon what value) was to set it in windows to simulate my suspcion in OSX as a possible limit. It dropped my OC in windows to around 1240 (i guess it was 1270 or so which seemed to close to be a coincidence). With a 0.010 volt increase it jumped back to 1500, what was the only reason i started touching voltages for OSX as windows bare did not need it. But OSX did not give a ****.
- All my tests in OSX with Davinci gave me same framerates as the first locked at 1240 overclock no matter how high i went over it. Cinebech does not give a sh*t and like you saw stays roughly the same . Valley reacted a bit like resolve, so much better at first OC but everytyhing after that the same no matter how high i go or what power / voltage i pump into it.
- Did play with AGPM settings but as it was already doing that properly by itself i did not see any diff in behavior.

- So left is the hard cap by the driver as one option or what i personaly find less likely the false reading. As a flase reading should still show improved performance if the real values start going up and up. A cap would whow something i (only once) experienced with the quick overjump and back jump. Unfortunately this happens so fast that in 99% of the cases you just see the needle stuck at 1240.

Giving up for now as pend waaaaaaaaay too much time on this and happy with what i have now with my i4790k sitting comfortably at 4.7 (watercooled so not even crossing 50C in max load) and my 980ti at 1240 . But it makes me mad it seemes capped . I think what you experienced if i read it correctly was mainly via your jump to El Crapitan and the latest NVIDIA drivers. I guess the Yosemity drivers have been handled as well as numbers are absolutely not bad and blowing Titan X numbers away on comparable Davinci Resolve rigs, but still.......... You know what i mean. Untapped potential.

Wish there was a way to show power/frequency and the 100% true clock of the GPU in OSX. Looked but did not find any way to confirm these numbers , which would make troubleshooting so much easier.

As mentioned later today will post my orig and final bios so you can have a look and will also compare mine with yours, but doubt if i find anything at this point. But you never know.

p.s. Grep'ed on os the nvidia drivers for any posible places where you could hardcode / mess with parameters settings etc , but nothing. All baked in i guess. Get matches on the binaries for words like "limit" "power" etc ...


Ciao dude.

Ps this i found also super usefull in OC quests http://www.overclock.net/t/1522651/disable-boost-and-bake-in-max-game-stable-clocks-for-maxwell.
On that domain there is so much info. The real OC gurus
 
Last edited:
Here my stock and final OSX OC version.

The parameter in Windows Nvidia driver i talked about :
SET_POWER_THROTTLE_FOR_PCIE_COMPLIANCE
- 0 OFF (Default setting )
- 1 ON (dropped my freq to ~1270 untill i added 0.020 v which got it back up .)
- 2 OCCT (not tested)
- 4 MSI COMBUSTER (not tested)

You can see all driver parameters with the tool "nvidia inspector" (http://www.guru3d.com/files-details/nvidia-inspector-download.html). Not for OSX of course. Typical ;-)
Server goes in prod today (small render farm) so can not test anymore probably till next weekend
 

Attachments

  • Stock_Bios_Palit_GTX980ti_3_feb_2017.rom.zip
    146.9 KB · Views: 69
  • OC_OSX_final_5_feb_2017.rom.zip
    146.8 KB · Views: 73
I have become more and more convinced, overthinking my experiences that it is a hardcoded limit in the driver.
Power and or volt limited behavior i saw in windows during mymax OC search and hard benchmarking showed fluctuating numbers , not solid number not moving unless it was the set cieling itself.
This hard 1240 number is not moving , only down to the lower p stated when idling.
So it is either a freq i set, which it is not , or an arteficial limit set by the driver, or the max number the software can display (which as i said before i do not believe as bench numbers are also stuck at same max values itrespectove of changing bios oc settings)
The fact that one even exists for windows , tells me that this will more then likely also exist for the osx drivers, albeit without tools to change them.
Different osx version may have different set parameters that affect them cap(s) differently.
 
STOP THE PRESS !!! NEWSFLASH !!!

In my previous post i made the right analyses but the wrong conclusion. I mentioned the fixed rate could only have 2 causes,
1- A number i had set
2- A hard cap

It was 1 in combination with HW monitor not showing number higher then 1240 aparantly.

I re-ran some benchmarks to post here and i included one that i had ignored before as it uses openCL and i have issue with openCL on Yosemity with current Nvidia web driver , which are less then in previous drivers according to the internet but still there. Then i just ran it nevertheless and saw in the right pane that the cpu ran at steady 1506 Mhz exactly !!!!! HWmonitor still showed 1240.

Case closed !!!!!!!!!!
Waisted a lot of time on this stupid HWmonitor, while it was working fone from the start. Anyway i did learn about everything there is to know about the bios and every little setting in there so not complete loss hahaha.

Final Bench result with current OC

VALLEY 2560x1440 fullscreen at ULTRA quality settings : 80,3 FPS Score 3358 (GPU max temp 55C on Air hahaha)

Cinebench : a lousy 121fps but not too bad (temp @44C)

Luxmark 3.1 OpenCL : 17473 but could have been higher if drivers where not still busted. Can live with it.

Davinci Resolve standard candle test (amazing results 20-25% above stock !! and temp never above 56C . Easily obliterating dual D700 macpro results for a fraction of the costs. Hail hackingtosh Hail Hackintosh )

- Temporal noise reduction (source clip = 24fps)
1 node - 24fps
2 nodes - 24fps
4 nodes - 17 fps
6 nodes - 12 fps

- Blur
9 nodes - 24fps
18 nodes - 24fps
30 nodes - 16fps
66 nodes - 7fps


FCPX BruceX - 18 secs (irrelevant for me as never user FCPX anymore. Moved to Resolve also for editing and thats Cuda)
 
Last edited:
The thread is a bit too long and hard for me to understand

But from what I've experienced, OC by modifying vBios does work, but macOS and Windows driver read it from the different base line.

On Windows side it does perform exactly like I set in the vBios while macOS has like 200MHz less and different base voltage table. Memory clock works perfectly on both side though.

So I end up give up trying for now and just look for a better card, but the more I think about it, the more I feel putting all my works back to Windows would be the best solution. By looking into recent update direction, Apple seems like totally give up gaming and Pro tasks.

I will keep following this thread, hope some day we can have full graphics performance on both platform.
 
Maybea bit hard to follow but looking at both Ainths and mine findings it seems to work fine on mac as well, its just the tools to read the correct frequencies are bust. Thats makes analysing/troubleshooting complex at least. But as you can see while i was using luxmark i was able to see the actual clockspeed matching exactly my OC i did in windows. Try it on your Oc and see if there you see the right frequencies as well (probably your AGPM has to be set up correctly as well)

There does seem to be difference in driver quality (osx drivers in combination with nvidia drivers) depending on which OSX release you are.
For me Cuda works rock solid and at full overclock speed supassing easily more expensive titan x cards and dual d700 mac pro cards.(check the davinci resolve numbers which are among the highest single gpu numbers around)
OpenGL is good as well.
OpenCL is broken on yosemite. Heared its better/fixed on el crapitan and or sierra.
 
Last edited:
I've never tried Luxmark, but on Cuda-Z it shows the number I set correctly. And from some article I've read, the first page of vBios tweaker only effects the displayed number but not the real time one.

I'm guess web driver on macOS only reads some of the features(and even different base line) to just make the card works(but not full protential) on the system. In my case, I can get some aggressive OC on Windows and resorts in slightly OC on macOS. But I found this way the card just doesn't work as good as by MSI afterburner and the amount of OC is still not enough for me on macOS(for StarCraft2 4K@60). And tweaking vBios is really a time consuming job.

That said, I will still try to have some fun before I buy a new card lol
 
Yeah man, just keep tweaking ;-) Thats part of the fun.
I guess it will all depend on the card , application you are targeting , technology it is using .
I think i am lucky that my card already performs great without requiring lots of extra power/volts to get there.
Part of the problem is that if you do not see actual power and voltage numbers , you do not easily know if it is getting limited or not .
But even is the card is not limited and running full potential, comparing windows and OSX for a specific game/app is difficult. In my case Davinci Resolve with cuda even runs way faster then windows on the same overclock, but some more game focused tests that use openGL or god forbid openCl crap run slower. I never play games but if that is your target then windows will always win as developers squeeze the max out of a game using all driver posibilities focussing on the largest usergroup / platform.
And we all now apple is just focussing on iphones so we are screwed anyway ;-)
Its up to us the hack the max out of it.

p.s. that first page theory i never heard but is easily disproven by just setting crazy high values on page one. You card will surely crash on mac proving it is realy working. It may work different then expected but it depends a lot on your power and voltage tables if what you set on page one is what you get. And if your power management on mac is screwed / not working properly , you may gets limits due to that. Try getting powerstates logged in the system log to see if you maybe get stuck in a certain lower powerstate. And let comparing with windows go and pure focus on what works and what does not o OSX. Start very low and slowly increase and record behavior with every move you make. But it remains difficult tuning blind. And dont rely on a single benchmark as what Ainth has shown Cinebech does not properly reflect what is going on.
I would say bets is to use the app you "actualy" want to use on yourr rig . Real worrld effect is what you in the end look for not beating benchmarks. Only when i started using resolve i saw how ridiculously faster it was after the overclock while some benchmarks had no significant change.

Have fun !!
 
Status
Not open for further replies.
Back
Top