Why are rendered Graphics so bad on OS X? Observations as a programmer.

Discussion in 'MacBook Pro' started by shnn2011, Mar 14, 2013.

  1. shnn2011, Mar 14, 2013
    Last edited: Mar 15, 2013

    shnn2011 macrumors member

    shnn2011

    Joined:
    Feb 19, 2013
    #1
    Shortly after purchasing my MBP with Geforce 650M and 1 Gig of RAM it became obvious that there are serious rendering issues in OSX.

    I first noticed this while benchmarking with Unigine Heaven 3D.

    There are horizontal artifacts and inconsistencies, which look like lines at which point the continuation of the frame is slightly off. These breaks occur at different frequencies.

    It seems like the frame buffer is not being fully dumped to the display memory before the next frame is drawn to it. An inch or two of a frame from the top down then an inch or two of the next, and so on.

    When you dual boot your machiene into Windows 8, the problem is no longer there.

    I remember learning to program at the age of 14 or so, I ran into an issue similar to this.

    Back then, I wanted to get into 3D programming. OpenGL, Glide3D and Direct3D were not yet mature.

    I began writing my own graphics library in DOS. This is when I was introduced to the concepts of frame buffers; double buffering; tripple buffering; and direct memory transfers.

    Judging by what I have read on the fora this issue is not something recent has been ongoing for years.

    The question is: If a 14 year old kid can solve this issue in the early 90s with virtually no documentation, and only early stage open source development tools in less that 2 months, why can't Apple with their massive funds hire somebody to find a fix for this issue?

    Furthermore, I found another issue that plagues every 2012 Macbook I have tested it on at the Apple store.

    When there is a black background displayed with grey horizontal lines close together in a consistent pattern at certain distances and or zoom levels, there is a sweeping flicker that is obvious.

    I first noticed this while viewing a website. I thought it was some kind of code on the page causing this effect, but further testing revealed it was an inability of the Macbook to properly display this image.

    One last thought:

    The best graphics processor on the Macbook Pro is a Geforce GT 650M.

    People who purchase this nearly 3000 dollar laptop are looking for a desktop replacement.

    Now, I understand that it is not feasible to have the full power of a desktop in a laptop of that size, but performance wise were talking the equivalence of 4 years ago's midrange desktop graphics card which is barely acceptable and technically unacceptable given the price for value.

    Especially, considering that there would not be any major heat or battery consumption issue by switching to a late model higher power and possibly even smaller die size, drop in replacement chip with minimal if any modification to the current logic board design. This would most likely cost only a few dollars more per unit during production if anything.

    If anyone is wondering, my findings were escalated to the Apple engineers.

    In Apple's advertisements the engineer states "the most powerful graphics processor available."

    This is simply false advertisement.







    Important responses:

     
  2. Ultra AleM macrumors 6502a

    Ultra AleM

    Joined:
    Jun 22, 2012
    Location:
    Italy
    #2
    OS X 10.8.3 is out. It has new graphics drivers. Let us know if something improves.
     
  3. shnn2011 thread starter macrumors member

    shnn2011

    Joined:
    Feb 19, 2013
    #3
    I will post my findings.
     
  4. saturnotaku macrumors 68000

    Joined:
    Mar 4, 2013
    #4
    New drivers, but no new OpenGL extensions, at least for my Radeon 6770M.
     
  5. xShane macrumors 6502a

    xShane

    Joined:
    Nov 2, 2012
    Location:
    United States
    #5
    Were you using the rMBP (MacBook Pro with Retina)? There are some known graphics issues with the machine.

    Also, if you claim to be so good at programming, why are you not working for a major company (such as Apple in this case) at the corporate level, working to make things better?

    It's not nearly $3,000, more like nearly $2,000. You're off by 50%, which is pretty major. No one if forcing you to buy an Apple product. If you don't like how things work on it, you don't have to buy it. It's really that simple.

    What you're saying about the Nvidia 650M is absurd. I never have frame rate problems playing modern video games on my MacBook Pro.
     
  6. joshhedge macrumors regular

    Joined:
    Sep 23, 2012
    #6
    Witcher 2 on my 15" rPro is pretty much unplayable for me, even at 1440*900 medium settings. Even after the latest updates.
     
  7. WordMasterRice macrumors 6502a

    Joined:
    Aug 3, 2010
    Location:
    Upstate NY
    #7
    Are you sure you aren't talking about v sync issues? What's actually happening is that the monitor is refreshing slower than the frames are being rendered. Because of this, half the screen (or more or less) gets drawn, then the frame buffer gets a new frame and the bottom half gets the bottom of the next frame.
     
  8. xShane macrumors 6502a

    xShane

    Joined:
    Nov 2, 2012
    Location:
    United States
    #8
    Do you meet the recommended requirements for the OS X version of the gaming?

    Have you tried running it through Bootcamp?
     
  9. B... macrumors 68000

    B...

    Joined:
    Mar 7, 2013
    #9
    15' rMBP meets all requirements for Witcher 2 but: AT LEAST a NVidia 950M 512 MB graphics, RECOMMENDED 1 GB. So, 940M isn't quite ideal.
     
  10. fisha macrumors regular

    Joined:
    Mar 10, 2006
    #10
    maybe when you read up about the frame buffering and dma, you should have read up about v-sync as well ?

    consider what your benchmarking ... you're bench marking the computers ability to render the scene and how many frames it can render per second

    ... which is totally different from how many frames the display can actually display per second.

    ( beaten to the post by WordMasterRice ... doh! )
     
  11. Ultra AleM macrumors 6502a

    Ultra AleM

    Joined:
    Jun 22, 2012
    Location:
    Italy
    #11
    Anyways it is not so new that Mac OS is less optimized than Windows in these tasks. Windows has the 95% of the Market, it is normal that all the companies just spend more time and work on it.
     
  12. shnn2011 thread starter macrumors member

    shnn2011

    Joined:
    Feb 19, 2013
    #12
    No tested on both retina and non retina.

    I never made a claim that I did not work for and major company.

    The price of the custom Macbook Pro I purchased was about 2850 with tax. I did not cheap out.

    I also never made any claim that I was playing games.

    Further, the apple employees were shocked at my demonstration and immediately escalated the issue.

    If you don't want to report a problem and ask for a fix then that's well within your rights.

    There's a major difference between a sycophantic fan of a product or brand and somone who actually uses the product for real work, because it's simply the best in the market for a given job.

    This does not mean the product can't be made better via user feedback and in fact Apple incurages that.
     
  13. joshhedge macrumors regular

    Joined:
    Sep 23, 2012
    #13
    The GT 650M, aka GTX 660M meets the requirements to play at 1680*1050 at high I believe. I had a bootcamp partition for a while, but currently without one I have 25GB free space on the SSD.

    Off topic, but is it possible to instal a bootable partition of windows on an external USB 3 or thunderbolt HDD?
     
  14. shnn2011 thread starter macrumors member

    shnn2011

    Joined:
    Feb 19, 2013
    #14
    You are correct, but vsync had no effect in fixing the issue in many of my tests.

    ----------

    Depends on what your doing, and yes it is possible, but a PITA.
     
  15. Krevnik macrumors 68040

    Krevnik

    Joined:
    Sep 8, 2003
    #15
    It'd be good to know VSync is actually doing anything in the engine/app in question. I've seen plenty of threads where it gets disabled by one thing or another on both Windows and OS X. But what you are describing is tearing. Double buffering has been around before OS X in Apple's implementation of OpenGL, so that's not your culprit.

    But in general, OS X does not enable VSync for normal 2D acceleration. I'm not 100% sure, but I don't know if VSync does anything with windowed apps. It might depend on the hardware too, I see nVidia users complaining about VSync disabling itself in windowed mode on Windows all over Google. I wonder if that limitation is also true on OS X.

    The problem with VSync is that while it makes the image more stable when you are rendering quickly enough, it also messes up your framerate if you aren't by dropping frames on you down to some specific fraction of the display's refresh rate. That means you actually lose smoothness if you aren't already as fast as the display. So the trade-off is having a slower, but more stable framerate, or getting what smoothness you can.

    Also, Safari itself has a couple specific rendering issues since it uses it's own OpenGL acceleration layer rather than building on top of Quartz's acceleration. Those are bugs in how Safari talks to OpenGL (or performance issues), and not really an issue with the underlying rendering platform, per se.

    Usually, the big complaint is that OS X's OpenGL stack is noticeably slower than Windows'.
     
  16. shnn2011 thread starter macrumors member

    shnn2011

    Joined:
    Feb 19, 2013
    #16
    Thank you.

    That is actually great information.

    What puzzles me is that I can tell when vsync is on due to the slow down but it has no effect.

    Also 90 percent of my tests were in full screen mode.

    And strangest of all is the fact that the new imac does not have the flicker issue that all of the laptops did on the grey over black horizontal lines.
     
  17. robvas macrumors 68020

    Joined:
    Mar 29, 2009
    Location:
    USA
    #17
    Some LCD's do it, some don't. It's a known issue and has been for a long, long time. Look up 'pixel walk'.

    http://www.lagom.nl/lcd-test/inversion.php
     
  18. saturnotaku macrumors 68000

    Joined:
    Mar 4, 2013
    #18
    It would be helpful if Apple would write drivers that fully exploited the entire OpenGL feature set available in the more modern GPUs. I believe even the GeForce 330M supported OpenGL 4. Even 10.8.3 provides zero support for any OpenGL 4.0+ extensions on my Radeon 6770M.

    If Apple didn't want to do this, they could at least open up their code and GPU switching capability to AMD and NVIDIA so they could provide proper drivers.
     
  19. JordanNZ macrumors 6502a

    Joined:
    Apr 29, 2004
    Location:
    Auckland, New Zealand
    #19
    You might want to look at 'core profile'... There are bunch of new extensions in 10.8.3.
     
  20. briancis macrumors newbie

    Joined:
    Mar 14, 2013
    #20
    Glad to see others finally discovering this. Check out Carmack's post here:

    http://smoothmouse.net/forum/topic/34-pointer-lag/
     
  21. MBPDiva macrumors regular

    Joined:
    Nov 1, 2008
    Location:
    on Orion's Belt
    #21
    This thread has convinced me to forego getting a MBP retina. I will purchase a Mac Pro instead. I work with intensive graphics and I need a color correct, easy to calibrate monitor similar to my 2008 MBP classic, which I love. I already have a 27-inch monitor which is perfect for a Mac pro. I simply don't have the time to wait for Apple to fix the many issues with their retina monitors, and the MBP 2013 classic monitor is garbage. Thanks OP! :)
     
  22. shnn2011, Mar 15, 2013
    Last edited: Mar 15, 2013

    shnn2011 thread starter macrumors member

    shnn2011

    Joined:
    Feb 19, 2013
    #22
    Amazing, I was not aware of this. It is funny that all current MacBooks seem to suffer from this, and even more so since Apple prides themselves on the quality of their displays as a selling point.



    I honestly don't know how anyone would miss this. It was obvious as soon as I started using the MacBook.


    Please remember that the non-retina models are no exception. I would like to recommend to you the high resolution antiglare screen, because of its calibration.

    Also of note, in my opinion the retina screen is still an immature technology and has inconsistent blotches and discoloration to those with good enough vision, especially the early ones.

    From my understanding, the Retina is also very susceptible to burn in.

    Some people won't ever see these issues, some models may be seem flawless to the human eye (they are lucky.) Some people have complained about yellowish spots and Miura spots all over the place, especially in the dark and while displaying dark shades of colors. This was even more of an issue on the first models according to a friend of mine who is an apple store manager.

    Many cell phone screens suffer from this issue as well.
    http://forum.xda-developers.com/showthread.php?t=1365032

    Plus later on if and when optical drives are obsolete you can jam an SSD where the cd drive goes.

    Of note: There have been complaints of the Retina models chipping against the keyboard and or palm rest. This is reportedly due to the new thin redesign. However this issue seems rare.

    Why do I know all of this?

    Simply because I researched the matter heavily before I made my purchase; hopefully I helped others as well by posting.
     
  23. leman macrumors 604

    Joined:
    Oct 14, 2008
    #23
    I never had any problems with framebuffer or rendering corruption in OS X on my retina MBP. Furthermore, OS X leverages OpenGL rendering for UI composition, if what OP writes were indeed correct, every OS X user would see image corruption all the time. The only real issue with OpenGL in OS X is that drivers have considerably lower performance than their Windows/Linux counterparts.

    Besides, programming OpenGL on OS X is a blast compared to the horrible WGL on Windows ;)
     
  24. shnn2011 thread starter macrumors member

    shnn2011

    Joined:
    Feb 19, 2013
    #24
    [/COLOR]
    It is present in only certain tasks. The new update seems to have toned it down a lot though. Test for yourself.
     
  25. shnn2011 thread starter macrumors member

    shnn2011

    Joined:
    Feb 19, 2013

Share This Page