Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

In Google Chrome's about:flags, I see an opton labeled "Run PPAPI Flash In The Renderer Proces".
The only resource I've found is that PPAPI, "Pepper", is an alternative to Netscape's NPAPI.

My questions are:

  • Does this flag hinders/improves performance? How?
  • Does it protect privacy, give browser stability, etc?
  • Do I need something else (such as a special Flash build? Will it mess with Flash on Firefox)?

This question is both for Windows and Linux, but you can answer with anything you know.

share|improve this question
What I thought it would do when I first saw it was that it would cause there to be separate instances of flash for each renderer that had needed to load flash content rather than a single flash instance for the whole browser. but I don't know if it actually does that. – Dan D. Feb 7 '12 at 20:44
@DanD. I'm also guessing it does that. To a point, it could even help in my case, because sometimes I visit a flash-abusive site and Flash's memory usage skyrockets compared to what is normal. If this would just terminate it upon tab close, maybe it could help. Also, maybe Chrome does something unoptimized under NPAPI, and PPAPI is more efficient, dunno. – Camilo Martin Feb 7 '12 at 20:49
up vote 3 down vote accepted

The description in about:flags says:

If the PPAPI version of Flash is in use, run it in each renderer process rather than in a dedicated plugin process.

The PPAPI documentation says:

There are two modes of operation, "trusted" and "untrusted" plugins. Untrusted plugins use the Native Client to safely run code from the web and is cross-platform. Trusted plugins are loaded directly in either the renderer process or a separate plugin process as platform-specific libraries.

So, I think if the PPAPI version of Flash is in use, enabling the option you ask about will run Flash as a trusted PPAPI plugin in the renderer sandbox rather than as untrusted code in a separate process running in a NativeClient sandbox.

If that's correct, flash is isolated by sandboxing from the rest of your computer either way, which means it's harder for bugs in flash to, for example, cause web sites to be able to read your files. I believe neither mode of sandboxing attempts to isolate websites from one another (in general, multiple websites use a given renderer process). Running in the renderer process does mean that bugs in flash have more of a chance to cause tabs to crash, rather than just flash plugin rectangles. Presumably the option is there as a performance enhancement (some performance improvement should come because there is no interprocess communication overhead if flash is running in-process).

I think chrome (but not chromium) comes with PPAPI Flash, and enabled for use, by default.

None of this should affect firefox.

share|improve this answer
Thanks, but I really want to know if I indeed have this PPAPI version on Chrome (wouldn't this show up somewhere, I think?), and it would be very good to know about Chromium, but just being sure it's present on Chrome (and that Chrome on Linux has it too) would be enough for me to accept an answer. +1 anyway – Camilo Martin Feb 8 '12 at 0:52
What do you mean by "this PPAPI version"? If you have chrome, you have Flash running under PPAPI, if I understand correctly. You should be able to verify all this by using ps to see what processes chrome starts when flash is in use, with the checkbox checked and unchecked: I think you should see NativeClient sel_ldr processes when it's unchecked (I'm not 100% certain that's what the binary is called), and when it's checked, just renderer processes. If it's not using PPAPI, you should see (regardless of checkbox setting) NPAPI processes. – Croad Langshan Feb 8 '12 at 21:59
Just to reiterate: when I say chrome, I do mean Google chrome, and not chromium. Chromium (at least on my ubuntu machine) still runs flash using NPAPI, not PPAPI: my ps listing has an entry with a commandline containing the following: "npviewer.bin --plugin /usr/lib/flashplugin-installer/". – Croad Langshan Feb 8 '12 at 22:03
Thanks, that confirms PPAPI ships with Chrome. Regarding performance, I'll benchmark it sometime in the future, but I'm thinking it may be a bit faster. – Camilo Martin Feb 8 '12 at 23:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .