bergerkiller / BKCommonLib

An extensive library I use in all of my plugins
38 stars 38 forks source link

Performance Issue on IKVM/.NET #7

Closed ghost closed 11 years ago

ghost commented 11 years ago

I tried running a CraftBukkit server with NoLagg on top of IKVM/.NET today, and there seems to be a performance problem involving the conversion call inside ChunkProviderServerBase.getChunkAt that makes the server run so slowly as to be unplayable on a machine that runs the same jar with the same mods on the JVM flawlessly (I'm looking into IKVM/.NET because .NET has a more aggressive self-tuning GC).

A few random breakpoints and stack traces show that the server is pegging a core just running the redstone physics, and the problem seems to revolve around the dynamic typechecks invoked from the above conversion call.

I filed the bug here because it seems to involve only BKCommonLib code. I'll see if I can get a more thorough performance profile later this evening.

I understand that the answer here may just be "Don't use BKCommonLib on Mono/.NET and IKVM," but I thought I should at least let you know there's an issue and try to get a good idea of what's causing it.

ghost commented 11 years ago

My apologies, the issue seems to exist with or without NoLagg/BKCommonLib. The issue seems to be a CraftBukkit issue (or my memory is bad and it's just IKVM overhead - I'll have to go get a performance baseline with the vanilla server).