Jump to content

AGPM help - GF 8800 GTS always running on full speed, power management not working


badluck
 Share

4 posts in this topic

Recommended Posts

Hello,

 

just recenty I've installed vanilla Mountain Lion and I've got everything working perfectly. Only kext I use (beside peripherals) is FakeSMC.

I've found a great DSDT.aml for my board somewhere on this forum (as I was never able to edit it properly myself).

I have Chameleon 2.1svn with GraphicsEnabler=Yes.

I'm using kozlek's HWSensors with good results (EvnxU.png).

 

My only problem is my GeForce 8800GTS 512 card (0x10de, 0x0600). It is always running full speed and heating like hell.

To be honest I'm not quite sure what I'm doing so any help will be appreciated. Here's what I have so far:

 

I've modified AppleGraphicsPowerManagement.kext to include my card under my selected mac model:


<key>iMac9,1</key>
<dict>
	<key>Vendor10deDevice0600</key>
	<dict>
			<key>BoostPState</key>
			<array>
					<integer>0</integer>
					<integer>1</integer>
					<integer>2</integer>
					<integer>3</integer>
			</array>
			<key>BoostTime</key>
			<array>
					<integer>3</integer>
					<integer>3</integer>
					<integer>3</integer>
					<integer>3</integer>
			</array>
			<key>Heuristic</key>
			<dict>
					<key>ID</key>
					<integer>0</integer>
					<key>IdleInterval</key>
					<integer>100</integer>
					<key>TargetCount</key>
					<integer>5</integer>
					<key>Threshold_High</key>
					<array>
							<integer>80</integer>
							<integer>80</integer>
							<integer>80</integer>
							<integer>100</integer>
					</array>
					<key>Threshold_Low</key>
					<array>
							<integer>0</integer>
							<integer>90</integer>
							<integer>90</integer>
							<integer>90</integer>
					</array>
			</dict>
			<key>control-id</key>
			<integer>16</integer>
	</dict>
	<key>LogControl</key>
	<integer>0</integer>
...

 

ioreg -l shows:

attached-gpu-control-path" = "IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P2@1/IOPCI2PCIBridge/display@0/NVDA,Display-A@0/NVDA/AGPM"

 

The AGPM kext is loaded. Yet still no change on my card.

Please if you could just point me in the right direction

Link to comment
Share on other sites

First, for my knowledge the GPU temp will be wrong listet 162 degrees celsius. Every gpu (and cpu) would get damaged within seconds-minutes and freeze.

= measure failtue of gpu temp by the OS X gpu temp kext

 

Second: The read out GHz/MHz for GPU/SHADER/VRAM is read from the bios and always listed as an fixed values.

So you cant see any changes in those values, even AGPM is working!

 

Last but not least: Under OS X its hard to check AGPM working or not. Normally you would see that by the fan speed (open the PC) and check if its mostly run full speed. Also check booting Windows native and compare fan speed.

 

You may beck OS X AGPM steppings by changing

 

LogControl

0

 

TO

 

1

After that reboot and look into the console (all messages) beside some OpenGL Test (windowed) an dlook for listed changes by AGMP.

Link to comment
Share on other sites

Thank's for the reply Mitch.

 

I thought that temp might be a bit exaggerated :) I did like you suggested, changed LogControls to 1 but nothing appeared in the console.

Then I noticed this in my kernel buffer (on boot):

 

[AGPM Controller] unknownPlatform

 

Couldn't google anything about it. Do you know what does it mean?

 

Log shows that my card starts in state 3 and on boot changes to 0. It stays at state 0 the whole time after boot, no matter what app I run.

 


[AGPM Controller] build GPUDict by Vendor10deDevice0600
AGPM: GPU = display Initialized, Control ID 16
AGPM: updateGPUHwPstate(3, 0): fHwPstate = 3 fFB = 0xffffff8010ef2000
AGPM: updateGPUHwPstate(): state = 3. Calling fFB->setAggressiveness()...
AGPM: GPU = display G-state set to 3 from 3, ControlID = 16. SW occupancy updated.
AGPM: updateGPUHwPstate(0, 0): fHwPstate = 3 fFB = 0xffffff8010ef2000
AGPM: updateGPUHwPstate(): state = 0. Calling fFB->setAggressiveness()...
AGPM: GPU = display G-state set to 0 from 3, ControlID = 16. SW occupancy updated.
AGPM: updateGPUHwPstate(0, 0): fHwPstate = 0 fFB = 0xffffff8010ef2000

(That last line repeats from time to time)

 

So I guess I now have to properly set everything in the Info.plist of AGPM.kext but that is not an easy task.

 

So far I've figured out that I have to set threshold for state 3 so that it is never reached. When I've expanded the range for state 3 I got black screen.

However no matter what thresholds I set for the states 1 and 2 I never reach them. Card always stays at state 0.

Any help would be great.

Link to comment
Share on other sites

 Share

×
×
  • Create New...