400MB works much better as a threshold on my M10 indeed. However I’m
seeing something fishy: whenever the browser unloads a background tab to
free up some memory, a small amount of memory is indeed reclaimed
(usually less than 100MB), but the browser process continues to use up a
lot of memory. When browsing pictures on 500px.com, eventually all other
tabs get unloaded, and the only renderer process left active is
consuming around 10% memory, but the browser process is consuming up to
30% memory. After a while left idle, it goes down to < 10%, which
indicates that a lot of memory has been reclaimed at once (late garbage
collection maybe?), which alleviates significantly the memory pressure.

My wild guess is that the memory used by the unloaded tabs is not
garbage-collected by the QML engine right away when the tabs are
unloaded. This seems to be confirmed by adding an explicit call to gc()
in the unload() function of BrowserTab: unloading a tab now seems to
reclaim a much larger chunk of memory, and the memory used by the
browser process remains under control.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to webbrowser-app in Ubuntu.
https://bugs.launchpad.net/bugs/1576639

Title:
  memory threshold is too high

Status in Canonical Device Images:
  New
Status in Canonical System Image:
  In Progress
Status in webbrowser-app package in Ubuntu:
  In Progress

Bug description:
  When opening new tabs in the browser, it decides if it should close
  existing ones based on level of free memory available in the system.
  My understanding is that this is currenly set to 30% percentage of
  memory in the device.

  There are two issues with this approach and setting:
  1) a percentage means that the threshold changes from device to device. While 
theamount of memory needed to open a webpage is not device specific. For 
example at 30%, the browser would close open tabs if there less than 1.2Gb mem 
free in a 4Gb device, but will only need 300Mb free on a 1Gb device. This is a 
very large difference.

  2) In M10 with 2Gb it requires 600mb free. From idle, just opening the
  gmail in the browser, takes the avilable system memory below this.
  This means that in 2gb devices the threshold is never met, and the
  browser never runs more than one tab at the same time.  this impacts
  user experience, specially in desktop mode. For example is not
  possible to open a document in the browser while attending a hangout.

  How to reproduce
  open a tab in the browser, go to youtube and play any video
  then open a new tab

  expected:
  music/sound in the video continues to play

  actual in m10:
  sound stops playing shortly after opening the tab

To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-device-images/+bug/1576639/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to