Patch Rendering Performance R2025a vs R2021b
조회 수: 53 (최근 30일)
이전 댓글 표시
I use patch() often for simple realtime visualization of robots in our machines.
Until now we have worked with Matlab R2021b. I am looking at Matlab R2025a for evaluation.
The newer release seems to be slower at rendering patches than the older release. I made a simple script to test this, see below.
On my computer, the script has the following running time:
R2021b: 5.1 seconds
R2025a: 7.1 seconds
Why is the newer version slower? Do I need to handle patch() differently for better performance? Any suggestions?
close all
p = patch('XData', rand(100,1),'YData',rand(100,1),'ZData',rand(100,1));
view(3)
tic()
for idx = 1:100
p.XData = rand(100,1);
p.YData = rand(100,1);
p.ZData = rand(100,1);
drawnow();
end
toc()
댓글 수: 5
Walter Roberson
2025년 6월 17일
I had the hypothesis that perhaps rand() was slower, so I tried preallocating XD = rand(100,100); and likewise YD and ZD, and then P.XData = rand(:,idx); and similar. The resulting code ran a bit slower on R2025a.
채택된 답변
Meet
2025년 6월 17일
Hi Alexander,
I tested the code in both MATLAB R2025a and R2021b. The R2025a version was about 2 seconds slower than R2021b. However, when I ran the code with the "drawnow" command commented out, both versions took roughly the same amount of time. I believe the slower rendering of "patch()" in MATLAB R2025a compared to R2021b is mainly due to a significant change in the graphics rendering system introduced in R2025a. Specifically, MATLAB shifted from its previous Java-based graphics engine to a new WebGL-based system.
For more information on the new graphics rendering system refer the following MathWorks blog: https://blogs.mathworks.com/graphics-and-apps/2025/06/10/introducing-the-new-graphics-and-app-building-system-in-matlab-r2025a/
I would also recommend reaching out to MathWorks Technical Support regarding this query:
Hope this helps!!
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Graphics Performance에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!