Random Things

Random Things

44M Downloads

getStrongPower() Server Lag

brad18 opened this issue ยท 6 comments

commented

Our server has been lagging for a few weeks now and earlier today we decided to run warmroast. The server performance starts out fine after a restart but starts to decline after about 3-4 hours and gradually falls to <10tps after a couple more hours.

I have attached a few warmroast screenshots below which show that a lot of the entities putting the most load on the server appear to be having some problems with checking redstone power. I noticed that your mod shows at the base of the tree just prior to the java array, so I thought it would be useful to see what you think might be causing this.

1
2
3
4

Thanks for your time.

commented

Could you maybe check whether the amount of TileEntityRedstoneInterface instances grows over time or stays mostly constant?

commented

Can you recommend a way/mod that can track this please?

commented

I don't know of any mod that can do it but VisualVM is similiar to Warmroast and has that capability.

commented

I think this is what you're looking for, but let me know if you need something else.

This is the dump from the server just after a restart:
image

And here's the dump from just before that reset (after the server had been running for 4.5 hours):
image

commented

I think this issue still persists. I haven't looked for this function in other areas, but it is definitely slowing down Refined Storage controllers. In this image, getStrongPower() is taking 4.5 ms of the controller's 11 ms overall time. There is also an example in onPostWorldTick (1.5 ms of 3.5 ms is spent on getStrongPower). I've included two sampler reports, one with RandomThings and one without.
With
Without
profiler image

commented

I think this issue still persists. I haven't looked for this function in other areas, but it is definitely slowing down Refined Storage controllers. In this image, getStrongPower() is taking 4.5 ms of the controller's 11 ms overall time. There is also an example in onPostWorldTick (1.5 ms of 3.5 ms is spent on getStrongPower). I've included two sampler reports, one with RandomThings and one without.
With
Without
profiler image

Could you create a seperate issue for this?