[Contents] [TitleIndex] [WordIndex

Most of the issues listed have been fixed in the more recent version of Scilab

On Scilab-5.0 alpha version you may have notice that Scilab is much slower than Scilab 4.

After investigation we found several major bottlenecks:

Bottlenecks

Text rendering

Synchronization with OpenGL thread

Use of Java2D OpenGL Pipeline

Benchmarks

Synchronization with OpenGL thread

scf();
drawlater();
plot3d;
a = gca();
a.axes_visible = "off";
drawnow();
for i = 1:10000,a.rotation_angles(2) = i;end;

Java2d / OpengGL pipeline Enable

window

Temps moyen nécessaire pour la fonction display : 5.5ms

Temps moyen nécessaire pour OpenGL : 2.5ms

full screen

Temps moyen nécessaire pour la fonction display : 7.5ms

Temps moyen nécessaire pour OpenGL : 4.5ms

Java2d / OpengGL pipeline Disable

window

Temps moyen nécessaire pour la fonction display : 9ms

Temps moyen nécessaire pour OpenGL : 6.5ms

full screen

Temps moyen nécessaire pour la fonction display : 35ms

Temps moyen nécessaire pour OpenGL : 26ms

scf();
drawlater();
plot3d;
a = gca();
a.axes_visible = "off";
drawnow();
realtimeinit(1);
for i = 1:1000,realtime(i);a.rotation_angles(2) = i;end;

Java2d / OpengGL pipeline Enable

window

Temps moyen nécessaire pour la fonction display : 3.0ms

Temps moyen nécessaire pour OpenGL : 1.75ms

full screen

Temps moyen nécessaire pour la fonction display : 5.5ms

Temps moyen nécessaire pour OpenGL : 4ms

Java2d / OpengGL pipeline Disable

window

Temps moyen nécessaire pour la fonction display : 5ms

Temps moyen nécessaire pour OpenGL : 3.5ms

full screen

Temps moyen nécessaire pour la fonction display : 21.5ms

Temps moyen nécessaire pour OpenGL : 20.5ms

Text Rendering

scf();
drawlater();
plot3d;
xstring(0,0,"Scilab power!!!");
a = gca();
a.axes_visible = "off";
drawnow();
for i = 1:5000,a.rotation_angles(2) = i;end;

Java2d / OpengGL pipeline Enable

window

Temps moyen nécessaire pour la fonction display : 6ms

Temps moyen nécessaire pour OpenGL : 3ms

full screen

Temps moyen nécessaire pour la fonction display : 7ms

Temps moyen nécessaire pour OpenGL : 4.5ms

Java2d / OpengGL pipeline Disable

window

Temps moyen nécessaire pour la fonction display : 10ms

Temps moyen nécessaire pour OpenGL : 8ms

full screen

Temps moyen nécessaire pour la fonction display : 36ms

Temps moyen nécessaire pour OpenGL : 27ms


2022-09-08 09:27