Core i5/i7 graphics, freezes, and performance/temperatures

Discussion in 'MacBook Pro' started by psychos, May 15, 2010.

  1. psychos macrumors regular

    Joined:
    Apr 15, 2010
    Location:
    Cambridge, MA
    #1
    So, I've been following a freezing issues thread, and noticed some interesting behavior, but that thread is getting a bit off-topic, so I'll summarize a bit here... I have a 15" i7, HR Antiglare, self-upgraded to 8GB, otherwise stock. I've had ~5 freezes in the month or so I've had the machine. I did a hard reset other than with the last freeze, having read that people's machines came back to life...and lo and behold, after about 8 minutes, my machine unfroze.

    I've noticed a few things relating to the switching, and also discovered that I can gain a huge amount of battery life and drop my system temperature by forcing Intel graphics.

    Some people have suggested HD issues. This was definitely NOT the case for me, as I was able to ssh in from another machine while it was frozen, and everything seemed to be working fine...other than the kernel and the Dock eating up CPU.

    PID COMMAND %CPU TIME #TH #WQ #POR #MREG RPRVT RSHRD RSIZE
    78543 Dock 100.6 08:15.22 5/1 2/1 138+ 309+ 4856K+ 55M 16M+
    0 kernel_task 100.5 05:01:52 87/5 0 2 593 98M 0B 408M

    Also, I've seen the following spammed in my kernel.log after rebooting, repeated several times from before the forced reboot:

    Apr 28 23:16:03 lucid kernel[0]: NVDA(OpenGL): Channel exception! exception type = 0x8 = Fifo: Watchdog Timeout Error
    Apr 28 23:16:03 lucid kernel[0]: 0000006e
    Apr 28 23:16:03 lucid kernel[0]: 00000010 00008597 00000474 00000000
    Apr 28 23:16:03 lucid kernel[0]: 0000047e 00001528 00000000 00000009
    Apr 28 23:16:03 lucid kernel[0]: 00000000 00000000 01000003

    This points to graphics. I've installed gfxCardStatus, which lets you choose between auto, Nvidia-only, and Intel-only. (Which of course the Energy Saver pref pane only lets you do the first two of.) It also displays what's currently in use, and if on Nvidia graphics, what apps are causing the Nvidia chip to be selected.

    I'm currently running the 64-bit kernel, and haven't seen the same error message. I suspect that the 64-bit drivers are just not reporting errors the same, because the freezes have been the same with both the 32-bit and 64-bit kernels.

    One interesting thing I noticed is that keeping X11 open, even if I have no X programs running, forces the machine onto Nvidia graphics. I always have X11 running, so chances are that until I installed gfxCardStatus, my machine has been on Nvidia graphics 100% of the time other than if I was rebooting and hadn't launched it yet.

    I'm now running with graphics forced to Intel-only. I'm hoping this will prevent crashes, but there's no way to know for certain. Running Nvidia-only (which you can do from the Energy Saver pref pane of course, not requiring the 3rd party app) could also prevent crashes...but I suspect it may not due to the above info about having X running.

    Switching to Intel only has significantly boosted reported battery life (running a task and unplugging for a few minutes, then looking at the estimate.) I tested under two conditions: system "idle", which for me means having Terminal/Safari/Mail/Adium/iTunes/iCal/Address Book/X11/Xcode open but not doing anything, and playing a 720p h264 movie in mplayer (with the above apps open as well.) For the "idle" test I had the LCD at minimum brightness; for the mplayer test, I had the LCD at 25% brightness.

    With the default auto-switching, and thus Nvidia being selected, my reported battery life "idle" was 6:42. When I switched to Intel-only, this went up to 9:08. With mplayer, the difference was even more striking. With auto-switching (and thus Nvidia), reported life was 3:30. With it forced to Intel, reported life was 5:38. Graphics output/system speed/etc all remained the same, because mplayer was doing software decoding. (Note that mplayer also forced Nvidia graphics, so even if I'd quit X, I'd still be stuck with Nvidia without having forced Intel with gfxCardStatus.)

    On top of that, my system is significantly cooler forced to Intel-only. Right now I'm "idle" with the enclosure at 35C and the CPU at 42C. Previously, when I had it on auto (thus Nvidia), "idle" would have the enclosure around 37 - 40C and the CPU around 51 - 54C. I *never* saw the CPU temp drop below 50C until I switched to Intel graphics only. So the Nvidia GPU is probably located somewhere near the CPU and putting out a ton of extra heat that the CPU is partially absorbing. The machine is noticeably cooler as well, on the bottom towards the back in the center, where it's always had a hot spot. (I'm using iStat Menus to get temperature info.)

    So...switching to Intel-only at the very least has given me a significant battery boost, AND dropped my system temperature overall. Lower CPU temperature also means that TurboBoost can function longer, too. So not only does Apple have to fix the freezing issue, but it's obvious that the switching is extremely non-optimal, given the heat and battery life differences I noticed.
     
  2. psychos thread starter macrumors regular

    Joined:
    Apr 15, 2010
    Location:
    Cambridge, MA
    #2
    I found the iFixit 15" i5 teardown, and if you look at steps 14 and 15, you can see that the Nvidia GPU and Intel CPU are right next to each other, AND share the same heatsink. So, the Nvidia chip being active practically causes the CPU to function as part of the GPU's heatsink! And, obviously, the Intel integrated graphics aren't putting out nearly as much heat.

    So, I ran some more heat tests. Obviously the testing conditions weren't rigorously controlled, but it's obvious from the results that there IS a huge temperature drop forcing Intel graphics. Ambient temperature was ~78F/25C during these tests. All tests were on AC power. Note that system performance was virtually identical between using Intel or Nvidia graphics, because I wasn't doing anything that would tax the GPU at all.

    Basic summary: Under mostly idle conditions, forcing Intel graphics significantly lowered system temperature vs Nvidia graphics. Under moderately loaded CPU conditions (but just light 2D GPU output), the temperatures were closer but still slightly lower for Intel. However, the Nvidia test caused the fans to noisily max out at 6000rpm, whereas the Intel test only ran them up to 3200rpm, which only slightly increased noise. To compensate, I ran the Intel load test with the fans forced to 6000rpm, and the temperature drop became much more significant.

    Additionally, reported battery life was significantly longer with Intel graphics active (see original post.)


    1. "Idle" test, had same ~10 apps from previous post open but idle, plus a bit of Terminal.app use and light browsing in Safari; waited about 5 minutes for the readings to stabilize.

    * Nvidia GPU active:
    CPU: 55C
    CPU Heatsink: 47C
    Heatsink B: 47C
    Fans: 2000rpm for duration of test
    Enclosure: 36C
    Enclosure 2: 36C
    Enclosure 3: 35C
    Battery: 30C
    GPU: 52C
    GPU Diode: 54C
    Memory Controller: 51C

    * Intel GPU active:
    CPU: 44C
    CPU Heatsink: 40C
    Heatsink B: 39C
    Fans: 2000rpm for duration of test
    Enclosure: 34C
    Enclosure 2: 34C
    Enclosure 3: 34C
    Battery: 30C
    GPU: 41C
    GPU Diode: Not reported due to Nvidia chip being disabled
    Memory Controller: 47C


    2. Load test with moderate CPU usage and graphics output (but the GPU wasn't doing anything but displaying decoded 2D frames.) Test consisted of running MythFrontend for about 10 minutes until temperatures and fans stabilized, playing 1080i MPEG2 broadcast video with software decoding+deinterlacing, streaming the content over 802.11n from a separate MythTV backend. CPU usage generally hovers around 110 - 130% doing this (of one core, app is multithreaded; full CPU usage would report as 400% due to 2 cores+Hyperthreading.)

    * Nvidia GPU active:
    CPU: 73C final stable reading; peaked to 83C while fans ramped up
    CPU Heatsink: 55C
    Heatsink B: 57C
    Fans: Maxed out at 6000rpm within about a minute and remained for duration of the test (noisy)
    Enclosure: 35C
    Enclosure 2: 36C
    Enclosure 3: 35C
    Battery: 30C
    GPU: 60C
    GPU Diode: 70C
    Memory Controller: 59C

    * Intel GPU active:
    CPU: 72C final stable reading; peaked to 76C while fans ramped up
    CPU Heatsink: 54C
    Heatsink B: 54C
    Fans: 3200rpm final stable reading, took ~3 minutes to ramp up from 2000rpm (still pretty quiet)
    Enclosure: 36C
    Enclosure 2: 36C
    Enclosure 3: 34C
    Battery: 30C
    GPU: 59C
    GPU Diode: Not reported due to Nvidia chip being disabled
    Memory Controller: 47C

    * Intel GPU active, fans forced to 6000rpm to match fan speed from Nvidia test:
    CPU: 60C
    CPU Heatsink: 46C
    Heatsink B: 47C
    Fans: Forced to 6000rpm
    Enclosure: 35C
    Enclosure 2: 35C
    Enclosure 3: 35C
    Battery: 31C
    GPU: 49C
    GPU Diode: Not reported due to Nvidia chip being disabled
    Memory Controller: 53C

    Despite the minor differences in reported enclosure temperatures, the bottom of the chassis was noticeably cooler to the touch with the Intel graphics active, so perhaps the enclosure sensors are placed at non-ideal locations, or are mis-reporting. It also seems odd that the reported battery temperature was so stable, only once deviating from 30C (and just to 31C.) But the overall reported temperatures are consistent with the temperature around the enclosure and experience measuring temperatures on older MBPs.
     
  3. Pax macrumors 6502a

    Joined:
    Dec 12, 2003
    #3
  4. issiciby macrumors newbie

    Joined:
    May 16, 2010
    #4
    hey, can you step by step explain how we can do the ''intel-only'' thing please?. if you've aldready said it i didn't understand since my english is not enough :(
     
  5. psychos thread starter macrumors regular

    Joined:
    Apr 15, 2010
    Location:
    Cambridge, MA
    #5
    Download gfxCardStatus, and set it to "Intel Only." You will likely see a significant temperature drop if you had been stuck on the Nvidia graphics before. You can always switch it back if you are actually running something that's GPU-intensive.

    I'm going to do a bit more thorough battery life testing in the morning... Temperature is just part of it, there are serious battery life issues if you get stuck on the Nvidia graphics while on battery.
     
  6. issiciby macrumors newbie

    Joined:
    May 16, 2010
    #6
    so i should go with intel-only only when im doing light stuff like surfing on the web?
     
  7. lightworker macrumors member

    Joined:
    Apr 29, 2010
    #7
    '09 --> log and unlog to change our graphics system. People tired and annoyed about this. Hoping next revision, makes the change.

    '10 --> woooha! We get auto-GFXcard-switching! Finally!!!
    But... wait... oh! Nevermind, let's get back to classics and decide manually when to use Intel or discrete and speed fans too, cause seems that there's really no innovation at all...

    Hell yeah! :rolleyes:

    I'm still waiting my money back, and not knowing wich to buy: iMac or another MBP. Of course, this last one gives me no confidence. I would really appreciate a Rev B out there SOON.
     
  8. psychos thread starter macrumors regular

    Joined:
    Apr 15, 2010
    Location:
    Cambridge, MA
    #8
    If your system is forcing you to the Nvidia graphics while doing so...absolutely so, especially on battery. For "light stuff" like web browsing, you will generally switch to the Intel graphics; however, it seems that there are a lot of random apps that will unnecessarily force Nvidia graphics. (And a LOT of excess heat/etc.)

    Again, not only does Apple need to fix the freezes...they need to fix the fact that a ton of apps that do NOT need the Nvidia graphics active make them so, and severely compromise battery life while doing so.

    I'm going to do some battery life tests tomorrow and try to get a better picture of how badly the Nvidia graphics do vs Intel graphics. Obviously, it's great to have the Nvidia chipset onboard for things like games and serious OpenCL apps...but there are a ton of things that Apple's auto-switcthing picks Nvidia graphics for (with a ton of extra heat and power usage) that run just as well with the Intel graphics.
     
  9. wirelessmacuser macrumors 68000

    wirelessmacuser

    Joined:
    Dec 20, 2009
    Location:
    Planet.Earth
    #9
    To those of you using "gfxCardStatus" is there any downside to this utility?

    Or is it 100% safe to use?

    Thanks
     
  10. psychos thread starter macrumors regular

    Joined:
    Apr 15, 2010
    Location:
    Cambridge, MA
    #10
    I've looked through the source code, and personally can say that I believe it is completely safe to use. By default, all it does is display whether the Intel or Nvidia graphics are in use. You can use its options to force either one. (Which you can only do for Nvidia graphics from System Prefs; this utility lets you force Intel graphics which you cannot otherwise do, and I have fairly definitively—in my opinion—determined that you can save a LOT of heat AND battery life by forcing Intel graphics when you don't need the Nvidia graphics.)
     
  11. spcedog macrumors newbie

    Joined:
    Jun 7, 2010
    #11
    graphics switch causes screen blink

    Hello,

    This is my first post, and I tried using mrooogle to find the issue (i've been a lurker for the most part) I can't seem to find info on this besides one other post in this thread.

    I have the 2.4 core i5 15" MBP with HR Glossy display, just got it on Monday, installed an owc ssd, and 8 gb of ram and i LOVE IT. The only issue is when the graphics card switches from the nVidia back to the Intel graphics, the screen briefly blanks out or "blinks" for a split second and the Intel graphics comes back on. It doesn't blink when it goes from intel to nvidia, only from nvidia back to intel.:confused:

    Does anyone else get this screen blink when it switches? Is this normal behavior?

    Thank you!
    -Nicky
     
  12. penter macrumors 6502a

    penter

    Joined:
    Jun 15, 2006
    #12
     
  13. killerbee79 macrumors member

    Joined:
    Jul 11, 2008
    Location:
    Wisconsin
    #13
    The CPU and GPU have been sharing the same heatsink going all the way back to 2008. You can look on iFixit for pics on that too or just look at the one I provided. Having the 2 chips share a heatsink isn't bad at all as long as the chips are kept within their rated operating temps.

    I used to work as a technician in circuit board design and my company has more than one product where 2 chips share a heatsink. On one product 2 CPU's sitting next to one another share a heatsink. As long as the heatsink is well designed, gets adequate airflow everything is fine. There are ways engineers test for that.

    Good theory, not the problem though.

    I'm more curious about it being the memory modules. My company used the same type of memory modules in our products (they are called SODIMMs) and you'd be surprised as to what they can mess up when a designer switches brands or uses more than one brand. It can mess up the whole signal timing.

    [​IMG]
     

Share This Page