-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compare rendering performance terminal widget vs CommandOutputConsole. #7029
Comments
ConclusionsI completed comparing the performance of current CommandOutput widget and widget based on xterm.js and widget based on Orion. During investigation I created widgets based on xterm.js and Orion. For all widgets I set up scroll-back size 5000 lines. For test I used rendering of an output from a file and received this output with the help of a custom command. This command reads n lines from a huge file (40148 lines). Each step I changed the amount of lines (100, 200, 500, 1000, 2500, 5000, 10000) and measured the performance (full rendering time) with the help of Google Chrome Development tools. You can see the comparison in the table and the graphic (time in seconds):
On each step the fastest was xterm.js based widget, the second was Orion based widget, and the last one was current CommandOutputWidget. On the big output xterm.js was faster than current widget in 3-9 times. Attach plugin for terminal was designed for using with web-sockets so we can't use it to speed up terminal more. Xterm.js (2.4.0)Pluses: rendering performance, xterm.js contains control sequence parser (to display text colors, progressors, text-based user interface), contains auto scroll feature, linkify url feature. Orion (14)Pluses: better rendering performance than current CommandOutput widget for big output. Ability to turn on /off word wrap feature. |
@AndrienkoAleksandr do you were able to test with Xterm.js 3 branch ? |
I think we should do it in the frame of the issue eclipse-che/che-lib#57 |
Description
Compare rendering performance terminal widget vs CommandOutputConsole
What should be done:
The text was updated successfully, but these errors were encountered: