How to trigger a child process in desktop Firefox

Firefox is now multi-process, and not just for the plugin-container process.  For example, there is now (present but disabled in Firefox 25, and likely to be released in Firefox 27) a separate process that is used to update the thumbnails shown in a new tab.

As a result, sometimes you might want to test something in the presence of multiple processes.  Here’s how I’ve been doing it.

  • Delete the images in the thumbnails/ directory within the profile’s temporary directory.
    • On Linux it’s ~/.cache/mozilla/firefox/<profile>/thumbnails/.
    • On Mac it’s ~/Library/Caches/Firefox/Profiles/<profile>/thumbnails/.
    • On Windows it’s C:\Users\<username>\AppData\Local\Mozilla\Firefox\Profiles\<profile>\thumbnails\.
    • I’m not sure about Android.
  • Open about:newtab.  This triggers a thumbnails process.  It’ll live for about 60 seconds.  (If you’ve configured about:newtab to be blank rather than showing thumbnails, this might not work, though I’m not sure.)

Please let me know if there’s a better way!

(And if anyone can give me extra info on the things I’m not sure about, I’ll update the text above accordingly.  Thanks!)

12 Responses to How to trigger a child process in desktop Firefox

  1. Note that background thumbnailing is #ifndef RELEASE_BUILD (i.e. disabled on beta/release) for the moment, so not in 25. We plan to have it ride the 27 train to release.

  2. On Windows, it’s in C:\Users\[username]\AppData\Local\Mozilla\Firefox\thumbnails

  3. Sorry, wrong one:
    C:\Users\\AppData\Local\Mozilla\Firefox\Profiles\\thumbnails

  4. Ok, last try:
    C:\Users\[username]\AppData\Local\Mozilla\Firefox\Profiles\[profile name]\thumbnails

  5. You can also flip a pref to enable e10s in Nightly builds. browser.tabs.remote, I think. Ride the future!

    • Does this mean e10s is finally mature enough to do an awsy trial run?

      • That’s an interesting idea. It might actually work, as AWSY just opens and closes pages and doesn’t do anything too weird.

      • Nicholas Nethercote

        e10s might be able to handle it, but the memory reporting infrastructure and AWSY won’t — they would only measure the parent process, not any child processes. However, the good news is that I’m partway through a patch to fix the memory reporting infrastructure, and once that lands, it’ll be a small update to AWSY’s code to take advantage of it.

    • Unless something major has changed in the last few weeks this’d be living very dangerously. The expectation then was that it would be H2 2014 before it was mature enough to enable by default. Assuming it doesn’t kaboom, I’d still be interested in seeing very preliminary benchmark results.

      https://groups.google.com/forum/#!topic/mozilla.dev.tech.electrolysis/quJZfi8tymI

      • Chris Peterson

        I don’t think AWSY results for e10s would be meaningful because many features are not working correctly and much optimization remains.

        That said, browsing websites is fairly stable… if you disable plugins. Even Adblock Plus half-works. :)