Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Currently e10s is only using two processes

There is something that I've wondered about for a while on this Electrolysis fanciness: currently Firefox is said to be single-process. So why do I see tens of "firefox" threads in htop?



You actually said it yourself without realizing it: because it's single process but multi-threaded.


Ah, of course.

So this means any performance increase will be coming from rewriting old code in a more efficient way, which could be done independently of e10s, right?

I mean, since the new multiple processes will not share address space, there will have to be explicit communication between processes with corresponding overhead and blocking? So a priori one would expect the new code to be slightly slower? And use more memory, since some data needs to be duplicated between processes?

What also comes to mind is that introducing e10s is like taking an OpenMP-parallel code and turning it into an MPI+OpenMP-parallel code.


"Performance" in the context of e10s means improving user responsiveness rather than throughput. For instance, you can usually smoothly scroll a page or interact with the browser UI even if the page is some kind of heavyweight mess.


Why couldn't that be achieved with threads? You can have asynchronous threading, I believe. (I get the arguments in favor of e10s, like sandboxing, and I have no beef with e10s, I'm just curious.)


What first comes to mind are various common memory structures and synchronization on them.


Yes. Only adventage of e10s is that compromised tab cannot read other tabs memory. IMO instead of pushing e10s they should fix UI hiccups during loading really big pages and infinite loops in JS (currently it blocks whole browser while it waits to ask user about stopping unresponsive script)


Does your htop display threads?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: