Memory leak in 4.15?

Appears to be a memory leak since updating to 4.15. As a match of bots playing continues the frame rate is creeping to a crawl.

I suspect this may be each time a bit is destroyed something is remaining in memory.

The change in frame rate can be seen in my stream which currently running on twitch.

Check out this video Ultraball - Bots changing position on the fly. Twitch

Scrub to near the end and you’ll see a difference in frames.

Anyone have thoughts on this? Same code didn’t do this in 4.14… Note these bots are not using blackboards and are spawned blue prints auto possessing with ai controller on spawn. Actually being destroyed with and not moved when they die.

If you suspect a memory leak you can confirm this using ‘stat memory’. The simple fact that your game runs slower the longer it runs doesn’t necessarily mean the engine has a memory leak. It is also possible that your own code has a memory leak, garbage collectors are not infallible and it is always possible to create a memory leak yourself.

Either way you need to profile memory in your game to see if this is in fact a memory leak or some other kind of performance issue

I’ll check GC setting when I get home, and do a stat check on memory of nothing seems out of place I’ll remove the destruction code to further isolate it.

Thanks!

Ok it is not memory.

World tick, nav tick, and tick are where the main changes take place.

World starting at 4 calls, 10ms/13ms after a few hours 4, 91ms/90
Nav tick, starting at 2 calls 1.6/2.3 now has spike at 2 calls, 80ms/84

I believe I narrowed it down for the rebuilding of the nav mesh for dynamic obstacles. When I turn it to static nav mesh thus far has been ok as before it seems debug nav octree time slowly but surely climbed.

I was attempting to use a sphere on characters and ball to set them as obstical so they would preferably walk around eachother to reach destinations.

Not sure it’s really needed at the moment just sometimes they will destroy themselves as they try to get to a location past the harmful ball. Hmm wonder why this wasn’t a problem before