Big WebGL plotting speed regression

31 次查看(过去 30 天)
f
f 2025-12-10,14:13
回答: Star Strider 2025-12-10,21:40
With the new WebGL versions (R2025a, R2025b), I am experiencing a major regression when plotting a large graph.
>> G
G =
graph with properties:
Edges: [1223248×19 table]
Nodes: [1150138×3 table]
>> plot(G, "EdgeCData", rescale, "XData", G.Nodes.x, "YData", G.Nodes.y, 'Marker', 'none');
On R2024b, this takes a few seconds to produce a usable and zoomable image.
>> opengl info
Warning: The opengl function will be removed in a future release. Use the rendererinfo function instead.
Version: '2.1 Mesa 17.1.3'
Vendor: 'Brian Paul'
Renderer: 'Mesa X11'
MaxTextureSize: 16384
Visual: 'Visual 0x9a, (RGBA 32 bits (8 8 8 8), Z depth 16 bits, Hardware acceleration, Double buffer, Antialias 0 samples)'
Software: 'true'
HardwareSupportLevel: 'none (known graphics driver issues)'
SupportsGraphicsSmoothing: 0
SupportsDepthPeelTransparency: 1
SupportsAlignVertexCenters: 0
Extensions: {152×1 cell}
MaxFrameBufferSize: 16384
On R2025b, the same command slows Matlab down to a hang, with the CPU stuck over 200%.
>> rendererinfo
ans =
struct with fields:
GraphicsRenderer: 'WebGL'
Vendor: 'Google Inc. (Google)'
Version: 'WebGL 2.0 (OpenGL ES 3.0 Chromium)'
RendererDevice: 'ANGLE (Google, Vulkan 1.3.0 (SwiftShader Device (Subzero) (0x0000C0DE)), SwiftShader driver)'
Details: [1×1 struct]
My system is a i5-1135G7 with 16GB RAM and Intel IRIS Xe Graphics (TigerLake-LP GT2), running Ubuntu 24.04.3.
  3 个评论
f
f 2025-12-10,18:40
编辑:f 2025-12-10,18:41
I can reproduce the bug with any large graph, for instance
rng(0); G = graph(sprandsym(1e5, 1e-4)); plot(G)
dpb
dpb 2025-12-10,21:12
Wonder if it would reveal anything to try to time a series of increasing sized graph plots to see if there is a breaking point or if it just scales?
My opinion would be it's worthy of an official support request; if specific issues aren't reported officially, Mathworks will have no knowledge of such issues as are arising with the new engine.

请先登录,再进行评论。

回答(1 个)

Star Strider
Star Strider 2025-12-10,21:40
When I ran:
rng(0); G = graph(sprandsym(1e5, 1e-4)); plot(G)
on my desktop (AMD Ryzen Threadripper PRO 7955WX 16-Cores, NVIDIA TU117GL [T1000 8GB]) systmem, that entire code required about 7 seconds including rendering, with tic toc giving a 2 seconds execution. No warnings.
My laptop (AMD Ryzen 9 PRO w/ Radeon 780M Graphics) gsve about the same results (7 seconds and 2 seconds), however MATLAB displayed: 'Warning: Hardware-accelerated graphics is unavailable. Displaying fewer markers to preserve interactivity.'
You might also run your test code in MATLAB Online. It should give the same results I got here.
I had a similar problem earlier this year that was magically solved with an Ubuntu update while MathWorks was working with me to solve it. The os-release information I can get only tells me that I have 24.04.3 and not any of the subsequent updates. I suggest that if you have not already done so, complttely update Ubuntu. The 'Software Updater' funciton should do this for you automatically when you invoke it.
.

类别

Help CenterFile Exchange 中查找有关 Graphics Performance 的更多信息

产品


版本

R2025b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by