English Amiga Board


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 21 April 2012, 21:10   #1
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Huge slowdown with low-latency vsync + no buffering + interlaced screen

Hi,

I think I originally mentioned this issue somewhere in the 2.4.0 beta thread, but I've done some more testing and it doesn't seem to be beta-specific. The problem happens both in native Windows Vista and under Wine. In some situations there's a huge slowdown (mouse pointer jumps, only moving once or twice each second). As far as I can tell, it happens when:
  • Low-latency vsync is used, and
  • No buffering, and
  • CPU emulation speed is set to Fastest possible, and
  • Emulated Amiga video output is interlaced
It happens with both none and Null filter, Direct3D and DirectDraw, sound enabled or not, JIT and non-JIT. To hopefully reproduce the problem:
  • Boot a Workbench disk. Set screenmode to PAL:High Res Laced.
  • Run a program which opens a non-interlaced screen, e.g. SysInfo.
  • Press F12, enable low-latency vsync and select No buffering. Everything should be working fine at this point.
  • If you're using Kickstart 2.0+, hold left Amiga and drag the pointer down to move the SysInfo screen down. When part of the Workbench is revealed, the Amiga output becomes interlaced and you should notice the slowdown. (If using Kickstart 1.x instead press left Amiga-N to bring Workbench to front and see slowdown. You can drag WB screen down to reveal SysInfo screen.)
  • If you drag the SysInfo screen back up (so the video output is non-interlaced again) the slowdown vanishes.
I'm using the Nvidia driver, both in Windows and Linux. Geforce Go 7300 chip, 2.1GHz Core 2 Duo T8100 CPU.

Edit: Problem seems to only happen when CPU emulation speed is fastest possible.

Last edited by mark_k; 22 April 2012 at 11:02.
mark_k is offline  
Old 23 April 2012, 18:18   #2
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Hopefully the attached config and disk image should show the problem. (Remove .zip from the disk image filename before using.)
Attached Files
File Type: uae SysInfo_test3.uae (9.4 KB, 168 views)
File Type: zip SysInfo_test2.adf.bz2.zip (36.4 KB, 172 views)
mark_k is offline  
Old 23 April 2012, 19:04   #3
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
Does today's beta still have same problem?
Toni Wilen is offline  
Old 23 April 2012, 19:56   #4
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Yes, still present with today's winuae.zip (executable 7738368 bytes long, MD5 3490c89857ce089cd671ca8e169f7009). Edit: Also present in 2.4.1 beta 10.
mark_k is offline  
Old 23 April 2012, 20:52   #5
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
I can't duplicate. Shows stable 50FPS or 60FPS, both interlaced WB invisible and visible, using your configuration and boot disk.
Toni Wilen is offline  
Old 23 April 2012, 21:42   #6
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
The config I attached doesn't have low-latency vsync enabled. Did you enable it after booting the disk and running SysInfo? After enabling l-l vsync, I get the slowdown when I drag the SysInfo screen down.
mark_k is offline  
Old 23 April 2012, 21:51   #7
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
Yes, tried both windowed and fullscreen 50Hz and 60Hz.
Toni Wilen is offline  
Old 24 April 2012, 13:49   #8
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Aaargh, that's annoying!

I just double-checked that the problem does still happen in Windows Vista with 2.4.1b10.

I noticed that sometimes, if I change mode (normal → ll vsync → legacy vsync → normal → ll vsync etc.) several times, on changing back to ll vsync there is no slowdown. So it doesn't happen all the time. And as far as I could tell, once it works without slow-down with ll vsync, the slow-down does not happen again even after resetting with Ctrl-A-A. You need to quit and run WinUAE again for the slow-down to happen again. My laptop screen refresh rate is 60Hz by the way.

When you tested the disk image, had you just run WinUAE and loaded the config, or had you already started emulation with different settings, then loaded the config and reset?

Could this be related to the graphics driver? When the Amiga output is interlaced, does WinUAE access the texture differently from the non-interlaced case? If there is a difference, and it's slower than the non-interlaced case, if WinUAE doesn't take that into account maybe its timing calculations could be affected???

Last edited by mark_k; 24 April 2012 at 13:55.
mark_k is offline  
Old 24 April 2012, 14:18   #9
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
Do you have interlaced host screen mode? It will change everything if both Amiga and output screen modes are interlaced. (attach logs)
Toni Wilen is offline  
Old 24 April 2012, 14:23   #10
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
No, I'm just using the laptop's default 60Hz on its built-in screen. I'll try to upload logs when I next boot into Windows.
mark_k is offline  
Old 24 April 2012, 14:28   #11
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
It could be interlaced mode misdetection. At least it would explain perfectly this kind of slowdown.
Toni Wilen is offline  
Old 27 April 2012, 21:30   #12
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,333
Testing 2.4.1 beta 11 under Wine I can't reproduce the slow-down issue, so it looks like you fixed it.

Edit: I created logs under Wine for 2.4.1 b10 and b11 and doing this: Boot SysInfo example disk, drag screen down then up. Enable l-l vsync then drag screen down then up.

The relevant parts seem to be, for 2.4.1 b10:
Code:
23-432 [680 000x000]: Unstable vsync! 49.953194 vs 50.057980
23-572 [680 000x000]: Very unstable vsync! 50.109485 vs 33.309567, retrying..
23-712 [680 000x000]: Very unstable vsync! 50.069533 vs 33.337021, retrying..
[... similar lines omitted ...]
24-552 [680 000x000]: Very unstable vsync! 49.886362 vs 33.314217, retrying..
24-692 [680 000x000]: Very unstable vsync! 49.954240 vs 33.349600, retrying..
24-697 [680 000x000]: Unstable vsync reporting, using average value
24-697 [680 000x000]: VSync calibrated: 37.498029Hz/1.0=37.498029Hz. MinV=1 MaxV=1046i Units=31819 91.5%
24-728 [680 000x000]: VSync remembered: 37.498029Hz/1.0=37.498029Hz. MinV=1 MaxV=1046i Units=31819 91.5%
24-741 [680 000x000]: PAL mode V=37.4980Hz H=11699.3852Hz (227x312+1) IDX=10 (PAL)
24-741 [680 000x000]: P96FREQ: 312*37.4980 = 11699.3852 / 37.5 = 312
33-819 [1108 000x000]: VSync remembered: 37.498029Hz/1.0=37.498029Hz. MinV=1 MaxV=1046i Units=31819 91.5%
33-831 [1108 000x000]: PAL mode laced V=37.4980Hz H=11699.3852Hz (227x312+0) IDX=10 (PAL)
33-840 [1109 000x000]: Interlaced frame type mismatch 1<>0
33-842 [1109 223x033]: Interlaced frame type mismatch 0<>1
[... repeated many times while display interlaced and l-l vsync ...]
35-222 [1188 000x023]: Interlaced frame type mismatch 1<>0
35-253 [1190 000x000]: Interlaced frame type mismatch 0<>1
35-255 [1190 000x000]: VSync remembered: 37.498029Hz/1.0=37.498029Hz. MinV=1 MaxV=1046i Units=31819 91.5%
35-272 [1190 000x000]: PAL mode V=37.4980Hz H=11699.3852Hz (227x312+1) IDX=10 (PAL)
And for 2.4.1 b11:
Code:
58-551 [757 000x000]: VSync calibrated: 49.986279Hz/1.0=49.986279Hz. MinV=1 MaxV=1048 Units=23870 89.0%
58-579 [757 000x000]: VSync remembered: 49.986279Hz/1.0=49.986279Hz. MinV=1 MaxV=1048 Units=23870 89.0%
58-595 [757 000x000]: PAL mode V=49.9863Hz H=15595.7189Hz (227x312+1) IDX=10 (PAL)
58-596 [757 000x000]: P96FREQ: 312*49.9863 = 15595.7189 / 50.0 = 312
08-499 [1229 000x000]: VSync remembered: 49.986279Hz/1.0=49.986279Hz. MinV=1 MaxV=1048 Units=23870 89.0%
08-511 [1229 000x000]: PAL mode laced V=49.9863Hz H=15595.7189Hz (227x312+0) IDX=10 (PAL)
10-936 [1349 000x000]: VSync remembered: 49.986279Hz/1.0=49.986279Hz. MinV=1 MaxV=1048 Units=23870 89.0%
10-949 [1349 000x000]: PAL mode V=49.9863Hz H=15595.7189Hz (227x312+1) IDX=10 (PAL)
12-456 [1423 000x000]: VSync remembered: 49.986279Hz/1.0=49.986279Hz. MinV=1 MaxV=1048 Units=23870 89.0%
12-469 [1423 000x000]: PAL mode laced V=49.9863Hz H=15595.7189Hz (227x312+0) IDX=10 (PAL)
14-056 [1501 000x000]: VSync remembered: 49.986279Hz/1.0=49.986279Hz. MinV=1 MaxV=1048 Units=23870 89.0%
14-068 [1501 000x000]: PAL mode V=49.9863Hz H=15595.7189Hz (227x312+1) IDX=10 (PAL)
Attached Files
File Type: zip winuaeslowdown.zip (18.2 KB, 165 views)

Last edited by mark_k; 27 April 2012 at 21:51.
mark_k is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
low latency vsync sound issue msayed1977 support.WinUAE 22 08 May 2012 09:01
Low latency v-sync setup Kernel support.WinUAE 4 23 April 2012 17:45
low latency vsync disappearing ? Foul support.WinUAE 0 15 April 2012 21:15
No-buffering display mode with zero screen tearing, the next step? Dr.Venom support.WinUAE 87 22 January 2012 18:08

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 11:05.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.08229 seconds with 14 queries