Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
Yes, I did use GPU-Z to monitor the clock speed in Windows, it will step up / down when necessary, not locked at 300/150 or 501/1250, but no flickering.

If the Windows driver changes clock speed and there's no flicker, that makes me think the problem is not with the RAM clock speed but with the code in the Apple driver that changes it. I'm sure you figured that out already but thought it worth saying for anyone following the conversation.

I must admit that I'm curious whether the higher clock speed would let my Mac boot with the monitor on. I'm surprised there isn't a configuration file for the driver when it initially loads.

I haven't tried booting it in MST mode yet so that's probably the next thing. Just so that we have as much information as possible.
 

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
A screen recorder probably wouldn't capture the flicker but a camcorder definitely can.
Frame1 -- shows the screen as it should be
Frame2 -- you can see the top menu bar starting to appear a little way down, as though vertical sync has been lost. This seems to be a full frame being drawn as the next frame shows the browser windows having shifted down the same amount. But...
Frame3 -- suddenly things go very wrong indeed. Past the LCD lag, we can see a new frame is being drawn where the browser windows are now at the top left of the screen instead of the bottom right.
Frame4 -- just when you think things couldn't be worse, the full horror makes itself visible. It's not a sync problem at all. Those browser windows haven't moved on the desktop. Instead, if you look carefully, you can see that the whole desktop has been reduced in height by a third and rolled left a third of a screen. That bit of island on the right of the screen is the bit of island that was in the centre. The real give away is the dock.
Frame5 -- heading back to normal with just a bit of LCD ghosting.

So I have no idea what the Apple 7950 driver is doing but that scaling of the desktop means it's definitely not a RAM problem, even if the change of RAM clock is happening at the same time.
 

Attachments

  • Frame1.jpg
    Frame1.jpg
    135.6 KB · Views: 169
  • Frame2.jpg
    Frame2.jpg
    137.1 KB · Views: 153
  • Frame3.jpg
    Frame3.jpg
    123.7 KB · Views: 180
  • Frame4.jpg
    Frame4.jpg
    127.5 KB · Views: 162
  • Frame5.jpg
    Frame5.jpg
    134.2 KB · Views: 157

h9826790

macrumors P6
Apr 3, 2014
16,614
8,546
Hong Kong
Thanks for your info. It's the very 1st time that I can see clearly what's happening when the flickering occur.

Anyway, I don't want to hijack this thread. May be we should go back to another thread which is specifically for this issue.

Last but not least, 2 more news for you about my newly testing solution. The good news is that there is no need to change the GPU or VRAM speed. However, the Bad news is this fix also require to flash the card. Basically, I disable the 501/1250 state, and let the card switch between 300/150 and 800/1250 only. It seems as long as there are only 2 working profiles, no flickering will occur in OSX.
 
Last edited:

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
Anyway, I don't want to hijack this thread. May be we should go back to another thread which is specifically for this issue.

You should probably let people know on that thread about your firmware edit. I'm sure they'll be just as happy to hear about it as I am! Could you post it up there, please?

Back on topic, the windows resize problem seems to be application specific. I hadn't put two-and-two together but only some applications do it. Last time, my browser, the calendar and Finder were affected but iPhoto wasn't.
 

stevemr123

macrumors 6502
May 27, 2010
323
226
Ok, this thread was hijacked. :)

However, I still have the original issue: when my mac returns from sleep, all windows are resized and moved to the top left corner. It happens only through displayport connection, when using HDMI, there is no isse - however HDMI can only carry 4K@30Hz (versus 4K@60Hz over DisplayPort). I think the problem is more on the display side (Samsung U28D590D), since if I activate the screen with the power (joystick) button just before I wake the Mac, the windows are not resized. So probably the display wakes up too slowly, and without the display, the mac reverts to a baseline resolution, resizes windows, and when the display starts broadcasting itself again, ti resizes the screen to 4K, but the windows remain resized.

With SwitchResX I was able to force the window positions to be saved (so at least they are not collected to the top left corner), but windows resizing still remains as an issue. I don't have any such problems in Windows. Strangely, I don't have these problems with my 13" MBP as well with the same display. Maybe it's an nVidia driver problem?
 

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
Ok, this thread was hijacked. :)

However, I still have the original issue: when my mac returns from sleep, all windows are resized and moved to the top left corner. [Snip!] Strangely, I don't have these problems with my 13" MBP as well with the same display. Maybe it's an nVidia driver problem?

No hijacking intended; all of these problems came together for me. Hopefully the thread was only diverted a little and is now back on course.

Have you got the same application thing as me? That some apps move/resize and some don't? Try leaving iPhoto running in the bottom right of the screen. I know it won't fix the problem but it might help nail it down a bit more.

I'm using an AMD 7950 so it's not just an nVidia driver problem.
 

stevemr123

macrumors 6502
May 27, 2010
323
226
For me, iPhoto is resized as well + pops up a warning that the screen resolution is not optimal.

The issue seems to be more generic. I checked sleep in Windows, and it behaves exactly the same - windows are resized and moved to the top left corner.

I searched some forums, it seems like this is a common issue with some 4K displays (like Asus 4k PB287Q or the Samsung U28D590D) using DisplayPort 1.2 connection.

The root cause is that the display does'nt remain active during sleep. During the wake process, the display adapter is initialized first, unable to read the inactive display's resolution information and assumes a baseline 1024x768 resolution instead. After the display is activated, the desktop is then again resized to the correct resolution, but the windows are stuck at 1024x768.

Thie problem affects both nVidia and AMD video cards.

This seems to be a hardware issue, probably will be fixed in the future, if the problem becomes widespread. No fix as of yet. :(

--

UPDATE: In windows there is a solution to this problem - you can enter the resolution of your active display through a registry hack if the proper resolution can't be detected. See this post here:

http://www.donationcoder.com/forum/index.php?topic=37307.msg367480#msg367480

Does OS X have something like this?
 
Last edited:

stevemr123

macrumors 6502
May 27, 2010
323
226
My quick and dirty fix is to connect both HDMI cable as well as the DP to the display and set the screen to mirrored mode. Since the problem seems to be DP specific, during the wake process the system will fall back to the HDMI connction's resolution, which should be the same as the DP resolution (since the two are mirrored). This way no resizing occures.

This is not a very nice solution. Mirroring may have some performance penalty (not noticable in desktop). An additional downside is that I have a blank screen during boot (the video is displayed through HDMI by default).

----------

UPDATE:

An other neat solution for Windows is to set the video card driver to use an exported EDID instead of the display's EDID (resolution) information. This way when the display is disconnected physically, it still remains active logically:

https://sites.google.com/site/ebobster/stuff/displayportblanking

Unfortunatelly this option is not available in OS X. :(
 

stevemr123

macrumors 6502
May 27, 2010
323
226
Breakthrough! :D

I was able to solve the display sleep resizing issue the following way:

1. Turned off my display
2. From an other mac I connected via screen sharing
3. When the display is disconnected, OS X installs a "Virtual display", with a resolution of 800x600. That's why the windows get resized when there is no displayport signal. I simply resized the virtual display to match the resolution of the physical display.

Now the resizing problem is gone altogether (this persists after reboot as well). :D
 
Last edited:

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
I simply resized the virtual display to match the resolution of the physical display.

That doesn't seem possible in my set up although I'm probably missing something. I hooked up my Air and the initial connection was a scaled version of the desktop at UHD resolution because I'd forgotten to switch the monitor off first.

So I disconnected, switched the monitor off and connected again. That gave me a 4:3 screen at Air resolution. Then I tried to change the resolution using System Preferences on the remote MP via the Air. Big mistake. Connection dropped and MP wouldn't respond.

Switching the monitor back on showed there was no signal from the MP. About a minute later the MP came back to life and started outputting a signal to the monitor again. Being dumb and a sucker for punishment, I tried the whole thing again with the same result.

To finish off, I've left the monitor switched on and connected via the Air. Which got the scaled desktop at UHD resolution again so I used "Turn Scaling Off" for good measure. I'll have to wait a while to find out if this has worked.

So my big question while waiting to find out if my bodged version of your instruction worked is, how did you change the resolution of the virtual display?

In the meantime, here's hoping everyone can share your Eureka and thanks for giving me hope.
 

stevemr123

macrumors 6502
May 27, 2010
323
226
Confirmed! Thank you for the Christmas present :D

Great, I am glad that it worked for you as well. :)

Changing the resolution can be done in the following ways:
- press ALT while clicking on "Scaled" in System Preferences/Displays. It will show you all available resolution options (hidden by default).
- alternatively you can use SwitchResX (its my favorite tool for managing displays and resolutions on OS X). It lets you create custom resolutions as well.
 

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
Another breakthrough! This time for users who don't have a second Mac. If you follow the instructions here, the whole window resizing problem goes away:

https://forums.macrumors.com/showthread.php?p=17238860#post17238860

However, it is a fairly "dirty" method of doing it. The problem is caused by OSX not detecting the new monitor properly. On my machine, the main plist file only had my old monitor in there.

If you feel like downloading Xcode (it's free) or another plist editor, you can do a proper fix.

  1. Copy your com.apple.windowserver.plist to somewhere safe as a backup
  2. Take another copy to work on in a temporary folder
  3. Take a copy of the user com.apple.windowserver.[GUID].plist file to work on in your temporary folder
  4. Copy the user plist file to somewhere safe as a backup
  5. Open both temp files in Xcode by right-clicking on them and selecting Open with ... Xcode
  6. In the main plist, delete the DisplayAnyUserSets node entirely (don't worry, OSX will rebuild it)
  7. In the main plist, open up the node /DisplaySets/Item 0/Item 0/
  8. In the user plist, open up the DisplaySets node and start hunting through the Item nodes for your 4k monitor - it may not be the first and the resolution is the best hint
  9. Check for differences between the user plist and main plist for IODisplayLocation, DisplaySerialNumber, DisplayID, DisplayProductID and DisplayVendorID. Copy them across from the user plist if they are different.
  10. In the main plist, check that Mode and UnmirroredMode are both set to 82.
  11. In the main plist, set the Width and UnmirroredWidth to 3840.
  12. In the main plist, set Height and UnmirroredHeight to 2160.
  13. In the main plist, check that IOFlags is set to 7.
  14. Close Xcode and Option-drag the main plist back into Library/Preferences -- you'll need to enter your password to do this.
  15. Delete the user plist from ~user/Library/Preferences/ByHost/
  16. Restart your machine

Warnings: This was done on a Mac Pro 4,1 with 7950 and a single P2715Q monitor attached to it. The instructions would probably be very different for a laptop.

Side effects: I don't have to use the Option key to see my preferred resolution of 3200x1800 in Display Settings, it's already there.
It doesn't get rid of the flicker.
My desktop animations are now much smoother.

Bonus points available: in theory, it should be possible to get 10bit colour working on my P2715Q but I'll leave that for another day.
 

stevemr123

macrumors 6502
May 27, 2010
323
226
Another breakthrough! This time for users who don't have a second Mac. If you follow the instructions here, the whole window resizing problem goes away:

https://forums.macrumors.com/showthread.php?p=17238860#post17238860

However, it is a fairly "dirty" method of doing it. The problem is caused by OSX not detecting the new monitor properly. On my machine, the main plist file only had my old monitor in there.

If you feel like downloading Xcode (it's free) or another plist editor, you can do a proper fix.

  1. Copy your com.apple.windowserver.plist to somewhere safe as a backup
  2. Take another copy to work on in a temporary folder
  3. Take a copy of the user com.apple.windowserver.[GUID].plist file to work on in your temporary folder
  4. Copy the user plist file to somewhere safe as a backup
  5. Open both temp files in Xcode by right-clicking on them and selecting Open with ... Xcode
  6. In the main plist, delete the DisplayAnyUserSets node entirely (don't worry, OSX will rebuild it)
  7. In the main plist, open up the node /DisplaySets/Item 0/Item 0/
  8. In the user plist, open up the DisplaySets node and start hunting through the Item nodes for your 4k monitor - it may not be the first and the resolution is the best hint
  9. Check for differences between the user plist and main plist for IODisplayLocation, DisplaySerialNumber, DisplayID, DisplayProductID and DisplayVendorID. Copy them across from the user plist if they are different.
  10. In the main plist, check that Mode and UnmirroredMode are both set to 82.
  11. In the main plist, set the Width and UnmirroredWidth to 3840.
  12. In the main plist, set Height and UnmirroredHeight to 2160.
  13. In the main plist, check that IOFlags is set to 7.
  14. Close Xcode and Option-drag the main plist back into Library/Preferences -- you'll need to enter your password to do this.
  15. Delete the user plist from ~user/Library/Preferences/ByHost/
  16. Restart your machine

Warnings: This was done on a Mac Pro 4,1 with 7950 and a single P2715Q monitor attached to it. The instructions would probably be very different for a laptop.

Side effects: I don't have to use the Option key to see my preferred resolution of 3200x1800 in Display Settings, it's already there.
It doesn't get rid of the flicker.
My desktop animations are now much smoother.

Bonus points available: in theory, it should be possible to get 10bit colour working on my P2715Q but I'll leave that for another day.

Thanks, great! It turned out that my com.apple.windowserver.plist was full of junk (probably because I was upgrading and migrating all the way back since tiger years). I simply deleted it and from my user folder as well. OS X recreated it upon boot, and everything is fine. :)
 

rMBPUser03

macrumors newbie
Jul 12, 2014
20
0
3. When the display is disconnected, OS X installs a "Virtual display", with a resolution of 800x600. That's why the windows get resized when there is no displayport signal. I simply resized the virtual display to match the resolution of the physical display.

Hi Steve,

I have exactly the problem you have mentioned. I did as you described, but how can I see this "virtual display" and how can I change the resolution?

Would be great to get some hint :)

Kind regards,
Joerg
 

jayden

macrumors member
Dec 13, 2007
41
1
10. In the main plist, check that Mode and UnmirroredMode are both set to 82.
13. In the main plist, check that IOFlags is set to 7.

Arron I've followed your steps up to point 10. I'm using screen res of 3008 x 1692. Are the values from your points of 10 and 13 still the same for me?

Thanks heaps! I've been using the Stay program to reset my window positions, but this sounds far more promising!
 

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
Arron I've followed your steps up to point 10. I'm using screen res of 3008 x 1692. Are the values from your points of 10 and 13 still the same for me?

Thanks heaps! I've been using the Stay program to reset my window positions, but this sounds far more promising!

Unfortunately, I've the memory of a goldfish for stuff like this. However, I thought it was important at the time and would have researched it so would recommend you use those numbers. That's assuming you've got the Dell as your primary display on a Mac Pro.
 

jayden

macrumors member
Dec 13, 2007
41
1
Unfortunately, I've the memory of a goldfish for stuff like this. However, I thought it was important at the time and would have researched it so would recommend you use those numbers. That's assuming you've got the Dell as your primary display on a Mac Pro.

Thanks Arron. I have a Samsung U28D590 though. Would it be safe to assume these settings are brand independent?
 
Last edited:

joeyfrigo

macrumors newbie
Aug 22, 2015
10
1
has anybody resolved this? i have MP5,1 10.10.5 with 2x Dell 27 UltraHD 4K Monitor - P2715Q and they both resize down my windows to i think 1080 when waking up from screen saver. i even set power saver to never put monitors to sleep and have only the screen saver on, when i walk away i just manually power off the monitor and it still does it. one monitor is hdmi to hdmi and the other is display port to mini display port. this is annoying as hell! i don't see any energy settings on the monitor itself but it does have a power down in 5 min when it sees no signal.
 

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
has anybody resolved this? i have MP5,1 10.10.5 with 2x Dell 27 UltraHD 4K Monitor - P2715Q and they both resize down my windows to i think 1080 when waking up from screen saver. i even set power saver to never put monitors to sleep and have only the screen saver on, when i walk away i just manually power off the monitor and it still does it. one monitor is hdmi to hdmi and the other is display port to mini display port. this is annoying as hell! i don't see any energy settings on the monitor itself but it does have a power down in 5 min when it sees no signal.

The problem is caused by OSX leaving information about your old monitor in the Plist files. The Plist rebuild that OSX does seems to have improved a lot over the last few versions.
  1. Take a copy of the two com.apple.windowserver.plist files from ~Library and ~User as a backup.
  2. Delete the com.apple.windowserver.plist files from ~Library and ~User
  3. Reboot the Mac
  4. Switch on the monitor about 2 seconds after the Mac chimes
That way OSX will take a proper look at your new monitor and rebuild the Plist files. As a bonus you should also get 10bit colour from the P2715Qs.

If that doesn't work for some reason, restore the two files from your backup and follow the instructions in post #38.
 

joeyfrigo

macrumors newbie
Aug 22, 2015
10
1
The problem is caused by OSX leaving information about your old monitor in the Plist files. The Plist rebuild that OSX does seems to have improved a lot over the last few versions.
  1. Take a copy of the two com.apple.windowserver.plist files from ~Library and ~User as a backup.
  2. Delete the com.apple.windowserver.plist files from ~Library and ~User
  3. Reboot the Mac
  4. Switch on the monitor about 2 seconds after the Mac chimes
That way OSX will take a proper look at your new monitor and rebuild the Plist files. As a bonus you should also get 10bit colour from the P2715Qs.

If that doesn't work for some reason, restore the two files from your backup and follow the instructions in post #38.


i found one file under library/preferences i can't find other under my user name/library/preferences.
so not sure where it is.
 
Last edited:

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
i found one file under library/preferences i can't find other under my user name/library/preferences.
so not sure where it is.

Modified from a kind poster on another forum:

Step 1: Delete system windowserver preferences
In the Finder, from the menu bar, select "Go -> Go to Folder..."
Enter: /Library/Preferences/
Delete the file called com.apple.windowserver.plist

Step 2: Delete user windowserver preferences
In the Finder, from the menu bar, select "Go -> Go to Folder..."
Enter: ~/Library/Preferences/ByHost/
Delete all files that start with com.apple.windowserver (E.g. on my oMP, there are two files, one is called com.apple.windowserver.3CE19AA6-343C-5828-B5CD-377D15BD8A0A.plist)​
 

Arron Rouse

macrumors regular
Apr 28, 2010
105
32
Chichester, UK
Thanks for the suggestion, unfortunately didn't help on my nMP.

Hmm, you might need to push it a little further. Maybe try it with a PRAM reset:
  1. Delete the windowserver plist files
  2. Shut the machine down
  3. Switch the monitors off
  4. Locate the following keys on the keyboard: Option, Command (⌘), P, and R. You will need to hold these keys down simultaneously in step 6.
  5. Turn on your Mac.
  6. Immediately press and hold the Option-Command-P-R keys. Continue holding the keys down until your Mac restarts, and you hear the startup sound for the second time.
  7. Switch the monitors on
Edit: a few extra thoughts. The nMP is capable of 4K out of the box so it might be worth trying the above with the monitor switched on. If that still doesn't work, try the getting a Plist editor such as Xcode (which is free) and having a look at the plist files. Or post them here so that we can all have a look and try to figure it out.
 
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.