I am using Apache ECharts (canvas renderer) to plot a basic line chart of 25 series of 100 datapoints each (so, 2500 total data points). In Edge, this runs up my GPU memory consumption by about 1GB with each chart, and it never releases: with each subsequent chart painting (new data), it adds an additional 1G each time until it gets around 7-8GB and crashes the GPU with a 10-second black screen. This black screen of death takes only about 5 or 6 chart renderings to reach. Clearly I’m doing something wrong.
Once the GPU crashes, however, Edge appears to be allocating memory differently – the GPU seems to be set aside and remain minimal, whereas new memory is allocated to the Tab (and not as quickly). I’m guessing this means hardware acceleration has been disabled? This raises the question whether or not there is a way either in ECharts config or in javascript to disable hardware acceleration from the start to avoid having to crash the GPU to do it.
Interestingly, running the same site in Chrome, the memory consumption is far less. No matter how many charts I render the GPU process stays well below 200M, and it seems to clear the memory after each chart so it doesn’t aggregate.
I need to able to support both browsers; our org mainly uses Edge, but crashing the browser with 8GB of GPU memory on the 5th chart rendering is not okay. Any ideas on how to tame Edge’s GPU memory usage when using ECharts? Is there a way I can make it behave like Chrome?