hi,
We were doing some profiling of our application as we moved from Esri 3.x to Esri 4.29. We basically had an application with 6 maps using just a GraphicsLayer on each map and drawing various polygons representing different regions. We just load our application and render the 6 maps like this:
With Esri 3.x, the heap snapshot is around ~ 220MB.
Loading the same application with Esri 4.29, the heap snapshot is more than double at a whopping 520MB+ !
Obviously the first biggest difference are all these ArrayBuffers and JSArrayBufferData objects - many of them seem related to the Esri 4 MapView and probably WebGL i presume but this incredible that the memory usage would double?
I am just wondering if there is anything we can do with the way we use Esri 4 to reduce our memory usage?
Double the memory usage seems quite excessive.
This is causing a potentially ship killer issue for some of our colleagues who are trying to use our application in a mobile environment where memory usage is important. we are at a loss to explain why we have more than doubled our memory by going to Esri 4.29.
I've also been tracking memory in our application and see the huge JSArrayBufferData objects. These seem to be mostly owned by the MapView in something called mosaicData.
Seeing this in our experience builder move. Going from 800 mb on average used to 2 gbs +. It's hard to explain that experience builder is the future to team members with this bad of performance.
Did either of you figure out a way to reduce the JSArrayBufferData sizes?