Forums › English Language Forums › Technical › Bug Reports

Search

Client performance degradation

8 replies [Last post]
Mon, 08/29/2011 - 22:15
NicoyaKitty
Legacy Username

I've been having problems with the performance of the Spiral Knights game client degrading over time. Usually after an hour or two of gameplay I can expect that the client will start getting periodic (10-30 second) fits of either epically low frame rates, or outright 2-3 second freezes.

Today, for example, I was running the yellow sun gate (whichever it is, the one with FSC right now). I was doing a T2 trying to catch 4 arenas to make some mad loot. By the time I got past basil things were starting to slow down, and once I was in the third arena it was completely unplayable. I'd charge up an attack, then come around behind an enemy to unleash it, and the game would freeze for two seconds, after which I'd find myself on the other side of the arena missing half my health because my character had just continued walking through a giant melee. *Twice* I died in just one arena from the game freezing on me. I ended up running out of energy for (frankly BS) revives and had to head back up.

I should note, very clearly: THIS IS NOT NETWORK LAG. The entire game interface is freezing. No animations occur, no UI updates take place, nothing. I'm quite familiar with what network lag looks like in the game, and this isn't it.

To continue, once I was back in Haven and selling off stuff in the AH, the performance continued to degrade to the point where it was almost impossible to just navigate the AH interface. The game was freezing up or bogging down every 2-5 seconds at this point. Nothing else was going on with my system to cause these issues. No AV scan in the background or updaters running or anything like that. The only cure I've found, and it always cures it instantly, is to quit and restart the game client. This restores performance 100%, but obviously isn't an option when I'm half way through a gate.

This performance degradation is killing the game for me. It's just not fun if I'm taking hits while the game is frozen solid.

I'd love to try to make an attempt at getting "cradle and all" or "dauntless delver" achievements, but if the game grinds to a halt after less than one tier what's the point of even trying?

Tue, 08/30/2011 - 02:00
#1
Starlinvf's picture
Starlinvf
OS, java version, video card,

OS, java version, video card, Steam (or not?), and general system specs? It sounds like it could be a memory leak, but need to figure out if its in the heap or the whole JVM thats having the problem.

Tue, 08/30/2011 - 09:44
#2
NicoyaKitty
Legacy Username
XP SP3, Java 6 up 26, Radeon

XP SP3, Java 6 up 26, Radeon 4870, Steam, Athlon X2 5200+ w/ 4 gigs (SK shows as using ~512M in task manager when this performance problem shows up, the rest of the system has plenty of RAM free).

Btw, I happen to be a programmer looking for work in the bay area, so if you need an extra hand with debugging this... ;)

Tue, 08/30/2011 - 13:17
#3
Dogrock's picture
Dogrock
What version of the Catalyst

What version of the Catalyst Drivers are you using with your Radeon 4870? The spring Caralyst releases resulted in some pretty poor performence and stuttering in Spiral Knights. I'm not noticing this poor behavior with the 11.8 release.

Tue, 08/30/2011 - 11:32
#4
NicoyaKitty
Legacy Username
Looks like I'm on Catalyst

Looks like I'm on Catalyst 11.5, I'll see if the latest version helps things any.

Tue, 08/30/2011 - 15:08
#5
NicoyaKitty
Legacy Username
Upgrading the Catalyst

Upgrading the Catalyst drivers didn't help.

Tue, 08/30/2011 - 15:36
#6
Lufte's picture
Lufte
Give this a read. What I also

Give this a read. What I also do is using sun java visualvm to perform a manual garbage collection when is safe, like before starting a level o between arena rooms. You can download visualvm from oracle's site, just google it.

Tue, 08/30/2011 - 23:33
#7
NicoyaKitty
Legacy Username
You know, it's funny, when I

You know, it's funny, when I first ran across the problem I thought to myself "gee, this sure feels like a GC pause, but I thought those were fixed years ago in the JVM". Apparently I give Sun a bit too much credit (may they rest in peace).

Unfortunately, being as I'm a steam player, I don't think changing the commandline is going to be an option for me. I'm also not convinced that performing a manual GC sweep will help, since the GC is clearly running (and interrupting the game) quite frequently already.

It's funny, not too long ago I had an epic facepalm when I came across an article claiming that modern managed, GC'ed languages like Java and C# absolved developers of any memory management responsibilities, when of course nothing could be further from the truth.

Getting back on track, to help narrow this down, I have noticed this slowdown occurring while just idling in haven for extended periods without diving the clockworks. It would seem to be possibly unrelated to actual game activity.

Wed, 08/31/2011 - 01:33
#8
Starlinvf's picture
Starlinvf
If you hook jconsole or

If you hook jconsole or jvisualvm you can watch the heap activity. What your likely to see is the eden and tenure memory spaces remaining full after GC operations. The Survivor space (which very small) will then fill up, get flushed, and then repeat. The conditions that trigger it is unknown, and so far haven't noticed any patterns in user setups (had it occur on JRE7, so its that doesn't help much either).

For all we know it could be a bug in lwjgl with certain drivers.

You can kind of sorta mitigate the frequency by upping the heap size and setting a different GC. But to do it in steam, you need a batch->exe converter to replace the javaw.exe (since steam won't let you change the important launch options).

Powered by Drupal, an open source content management system