PDA

View Full Version : pip window swapping performance



dizz
03-31-2008, 09:21 PM
I managed to get the screen swapping feature working well in keyclone, mapping my shift f1-f4 keys to swap my various toons into the main window. However when I do this I experience a pretty severe perf spike where my window is effectively unplayable for 10-15 seconds. Now my hardware is not absolute top notch, and i'm curious how perf is for others who have better hardware. I am currently running 4 at a time, but i'd like to run 5 and am wondering how my performance would be if I do so and upgrade my hardware to a quad core with an 8800gts. What kind of perf are you all experiencing with the window swapping? my windows aren't exactly the same dimensions, so i imagine much of the cpu time is being spent recalculating layout.

Simulacra
03-31-2008, 09:58 PM
Hi, funnily enough I have a Q6600 and an 8800gts - the PiP swap takes around 3 seconds for me and I run 5 toons. I have 1 main window and the other 4 are tiled on another screen.

keyclone
04-01-2008, 12:24 AM
try this. make 4 windows, all the same size, on the same or different screens. assign pip hotkeys to them. then, while in wow, try the pip swap. it will be instant.

then, make one of them a different size... THEN pip swap them. performance spike.

the issue is within wow, and not keyclone. there isn't much i can do about the performance problem. on better cards i believe it is improved

Djarid
04-01-2008, 03:22 AM
First thing to consider, are you running multiple copies of wow or one copy?

I run significantly different resolutions for my main and clones (1536x1200 vs 380x300) I found PiP swap was taking 3 secs

then I used junction (on XP) to create parse points in the NTFS node table to link to a single data directory from each of my wow installs. This has not only reduced PiP swap to <1sec it has improved startup and zone loading times.

btw the first time you swap is normally the longest (for each window) subsequent swaps usually take much less time.

my hierarchy


d:\world of warcraft
Cache
Data
Interface
WTF

d:\WoW3
Cache -> linked to d:\world of warcraft\Cache
Data -> linked to d:\world of warcraft\Data
Interface -> linked to d:\world of warcraft\Interface
WTF

d:\WoW4
Cache -> linked to d:\world of warcraft\Cache
Data -> linked to d:\world of warcraft\Data
Interface -> linked to d:\world of warcraft\Interface
WTF

d:\WoW5
Cache -> linked to d:\world of warcraft\Cache
Data -> linked to d:\world of warcraft\Data
Interface -> linked to d:\world of warcraft\Interface
WTF

0xdeadbeef
04-01-2008, 04:01 AM
I believe this issue has to do with Direct3D and how the game renders to a window. Direct3D has something called a 'back buffer' this is essentially a memory buffer that game objects get rendered to, and then flipped to a 'front buffer' when it is ready. The problem is when you switch from a window of a certain resolution to another, this back buffer needs to be recreated. When the windows are of the same size, this buffer doesn't need to be recreated and this is why it is instant.

Might help improve speed if when the PiP key is hit the larger window is first reduced and moved before the smaller window is enlarged. The other way around will cause the need for two large buffers (even if temporary) causing stuff to get pushed onto virtual memory depending on how much RAM is available.

In any case the biggest problem is actually recreating the buffer and I don't know of any easy way around that.

keyclone
04-01-2008, 09:09 AM
@Oxdeadbeef

hmmm.. that might help. thanks

dizz
04-01-2008, 04:43 PM
GREAT advice! I will try junction first, and then if that doesn't help enough i'll do the "same resolution" thing. Thanks guys!

dizz
04-01-2008, 06:53 PM
junction == HUGE difference. Yes i was running separate copies of wow on 2 different hard drives. I actually have a dual raptor configured in raid 1 as one of them and was only using it for a couple of the sessions, now they're all mapped to one copy on that array. Swapping out the different sized windows is now under 1 sec latency. Woot!

I'll try adjusting my regions to equal each other and see how that improves things.

Ozbert
04-02-2008, 05:47 AM
First thing to consider, are you running multiple copies of wow or one copy?


d:\WoW3
Cache -> linked to d:\world of warcraft\Cache


Are you sure linking the Cache folder is safe? It seems to me that it's only safe to link folders that WoW doesn't attempt to write to while the game is running. Cache is not such a folder. I'd expect it to cause major problems if multiple WoW instances kept modifying a shared cache.

Djarid
04-02-2008, 06:53 AM
hmm I may not have linked Cache ;) I will check when I get home. If I have, then I am having no problems at all ;)

Anozireth
04-02-2008, 11:37 AM
Linking multiple installs to the same cache folder would have the same effect as running multiple instances from the same install, which works fine. I don't see how that would be a problem.