Created attachment 422201 [details] memory usage screenshot In Canvas with big count of elements memory reaches limit. It can be about 2GB. Unfortunately, I can't profile it, because dev tools fails. But in Chromium same canvas takes about 200mb. I found old tickets about the same problem, but they are not solved. This problem is critical for our product.
Seems tickets: https://bugs.webkit.org/show_bug.cgi?id=195325 https://bugs.webkit.org/show_bug.cgi?id=219780
Could you please provide a test that reproduces this issue?
Created attachment 422665 [details] Profile file
I've added profile file. Did you mean it?
We need a link to a web page which we can load ourselves to investigate the issue.
We are preparing example with not sensitive information, wait please
<rdar://problem/75307418>
I've prepared link where leak happens https://miro.com/app/board/o9J_lQfOEOc=/ My actions: - I see all "frames" in board - I try to zoom to one "frame" In safari memory it takes about 2gb memory - limit was reached In chrome memory it takes 200mb in peak I've added new profile files
Created attachment 422919 [details] Chrome profile
Created attachment 422920 [details] Safari profile
Do you have any updates?
What version of Safari are you testing, and on what OS version?
I have MacOS 11.2.2 and Safari 14.0.3
When doing little editing in https://miro.com/app/board/o9J_lQfOEOc=/, Safari can reach 1GB on my machine. Chrome uses three processes when opening this page (Google Chrome, Google Chrome Helper "Renderer" and Google Chrome Helper "GPU"). The total memory of these processes is about 880MB. So Safari takes 16% more than Chrome. But regardless of this, 1GB memory is a huge amount of memory to be taken by one page.
If I understand correctly, Chrome can parallel some processes and because it works faster them Safari? And now webkit doesn't have problems with memory and garbage collection. Could you confirm it?
The page https://miro.com/app/board/o9J_lQfOEOc=/ has three full screen canvases. On my iMacPro, each takes 5120 x 2776 pixels. The size of each backing IOSurface is 56,852,480 bytes. This is almost 57MB.
Okay, thanks. I will try to find more information about memory using. If I find something, can I write here?