Wed Dec 04, 2013 4:59 pm by Sylver
Mosg2 wrote:I have noticed a few performance related issues with VFX that I'll share with you--I can't necessarily say that this is your problem but it definitely is/was *my* problem.
First, I use an I7 2600k that is moderately OC'd to 3.8k, 16 gigs of DDR3, and a GTX 770 4g video card.
My CPU usage does not increase linearly with the number of VFX viewers I have present. My original setup had 63 VFX on my main screen with 7 VFX sources per client. With all of them loaded, I was getting ~20 fps on my main and 100% CPU usage. No amount of tweaking with the CPU assignments solved the problem. As soon as I hid the VFX, back to capped 60fps. So, since I wanted to maintain all of the VFX, I checked to see if hiding the VFX in windows that were not focused fixed it.
Blam, went from 100% CPU usage/20fps to ~60% CPU usage/30fps. I don't know why, but ISBoxer/Innerspace/whatever was still using CPU to generate those VFX in my other 9 screens even when they weren't the focus window. Now, that still doesn't solve my problem as I went from terrible fps (for me) to only marginally better fps (for me). So, saving a VFX set in your alt screens that only has their VFX sources present and loading that when they're not focused *may* save some CPU for me. I gained considerably (not enough for my personal tastes, but still a major gain).
Going to cross-post this to the VFX forums and see if anyone there has further suggestions. Hopefully it helps you some!
When I was making the Neverboxer config I originally had VFX on all of the client screens for all logged in characters and also noticed the performance hit you are talking about. It's actually the price of using VFX (actually created through Aero in Win7/8, so it's not really ISBoxer, although it manages them) that we have to pay to have those wonderful VFX effects.
To solve this problem I destroyed the VFX when exiting a client screen and then created the necessary VFX when entering a new client screen. This improved overall performance at the cost of having a slight delay when client screen swapping while the VFXes were killed off and created new. The biggest negative to this way that I saw was that all of this creating and destroying sometimes caused client screen hangups if you make any minor mistakes in implementing the process, so you'll have to test your keymap "code" well to make sure you completely eliminate those errors.
Eventually to optimize my implementation, I created all of the VFXes up front and then showed/hid them as I swapped client screens. It gave a decent performance boost without the delay caused when creating/destroying them.
Hope that helps a bit - it's just based off of my experience.
- Sylver