-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Description
Last year, I had a brief conversation via IRC with Joel about optimizing portions of the code base by re-implementing some of the code in ASM.js and making use of web workers. It's been a while, but I'm interested in re-engaging that conversation.
The company I work for (Guru Labs) uses noVNC in a training/collaboration application and it generally works very well. We have one view, though, where it's possible that 40 or 50 simultaneous sessions might be displayed at once. If all of the machines on the page become active at once, though, it can get really laggy and we've started to get some customer complaints about the interface being "slow".
Seems like a good time to move forward on those ideas, and I've got an engineer who is interested in taking this on as a project.
As a first step, I would like to re-implement some of the routines as a drop-in ASM.js module and then compare how much of a speedup we get. From there, the next step might be to start looking methods for putting that processing in a web worker.
Which I guess brings me to the point: do you have any feedback on where we might start to experiment? We can always spend quality time with the profiler, but having some candidates on portions of the code that might stand for a rework using ASM.js would be greatly appreciated.