fang5566
管理员
管理员
  • UID3719
  • 注册日期2005-03-07
  • 最后登录2024-04-25
  • 发帖数18483
  • 经验4837枚
  • 威望5点
  • 贡献值4316点
  • 好评度1115点
  • 社区居民
  • 最爱沙发
  • 忠实会员
  • 终身成就
阅读:3796回复:11

[Aurora] Firefox 26.0a 仅解码可见区域内的图片,改善内存占用

楼主#
更多 发布于:2013-10-06 18:51
在 Firefox 23 及以前的版本中,在浏览包含大量图片的网站时,Firefox 的内存会飙升,达到1G或更多乃是家常便饭。这是因为 Firefox 会一次性解码这个网站下面的所有网页,不管你看没看到,并且保留在内存中,直到关闭网站或切换到后台才会释放。

在 Firefox 24 当中,Firefox 已经有了很大改进,Firefox 仍会一次性解码所有图片,但仅在内存中保留可见区域内的图片。这样做,在打开网页时,一开始仍会占用 1G 乃至更多内存,但一会儿后会大幅下降,在你继续浏览非可见区域图片时,内存也不会猛然上升。

在最新的 Firefox 26 当中,Firefox 继续改进,仅仅解码可见区域的图片,其他区域在滚动时再解码。表现为从打开网页一开始,Firefox 就仅占用几百MB内存,并且在浏览过程中,内存不会飙升,保持平稳


这里有一个对比图,紫色为 23,绿色为24,红色为26


about:config 参数可以开关(感谢pcfirefox):
layout.imagevisibility.enabled



Bug 847223 - Don't decode images that aren't visible when we download them

有关文章:
MemShrink progress, week 117–120

最新喜欢:

hillhill
Firefox More than meets your experience
dsyo2008
狐狸大王
狐狸大王
  • UID34824
  • 注册日期2010-12-10
  • 最后登录2022-06-13
  • 发帖数515
  • 经验206枚
  • 威望0点
  • 贡献值86点
  • 好评度11点
  • 社区居民
  • 忠实会员
1楼#
发布于:2013-10-06 18:51
27呢。。。
teredarguiterep
千年狐狸
千年狐狸
  • UID39204
  • 注册日期2012-12-20
  • 最后登录2018-06-10
  • 发帖数1028
  • 经验615枚
  • 威望4点
  • 贡献值288点
  • 好评度105点
  • 社区居民
  • 忠实会员
2楼#
发布于:2013-10-06 18:51
dsyo2008:27呢。。。回到原帖


nightly包含所有版本的特性,当然包含这个改进。
大道有狐
狐狸大王
狐狸大王
  • UID37815
  • 注册日期2011-11-19
  • 最后登录2021-05-07
  • 发帖数455
  • 经验270枚
  • 威望0点
  • 贡献值156点
  • 好评度33点
  • 社区居民
  • 忠实会员
3楼#
发布于:2013-10-06 18:51
今天正好注意到24的相关新特性,在某些设计不佳的“长”页面上效果很不好,尤其是快速滚动屏幕的时候,页面会有一种极其难看的破碎感。个人觉得还是应该解码并在内存保存一个完整的页面。“伪加速”只是暂时掩盖了一个“缺点”,在大内存快硬盘的新机器上反而带来另一个问题,影响体验。--原来是这个页面没全开可以看其他页面等着后台开好再切过去,现在变成只能傻等了。

不知道有没有参数可以调整为一次打开一个完整的页面。
至察不明 Lollipop-->Marshmallow
pcxfirefox
千年狐狸
千年狐狸
  • UID39042
  • 注册日期2012-06-22
  • 最后登录2018-01-15
  • 发帖数2539
  • 经验1263枚
  • 威望2点
  • 贡献值242点
  • 好评度133点
  • 最爱沙发
  • 忠实会员
  • 社区居民
4楼#
发布于:2013-10-06 18:51
大道有狐:今天正好注意到24的相关新特性,在某些设计不佳的“长”页面上效果很不好,尤其是快速滚动屏幕的时候,页面会有一种极其难看的破碎感。个人觉得还是应该解码并在内存保存一个完整的页面。“伪加速”只是暂时掩盖了一个“缺点”,在大内存快硬盘的新机器上反而带来另一个问题,影响体验。--原来是这个页面没全开可以看其他页面等着后台开好再切过去,现在变成只能傻等了。

不知道有没有参数可以调整为一次打开一个完整的页面。
回到原帖

layout.imagevisibility.enabled
改为false
http://pcxfirefox.wordpress.com/
大道有狐
狐狸大王
狐狸大王
  • UID37815
  • 注册日期2011-11-19
  • 最后登录2021-05-07
  • 发帖数455
  • 经验270枚
  • 威望0点
  • 贡献值156点
  • 好评度33点
  • 社区居民
  • 忠实会员
5楼#
发布于:2013-10-06 18:51
pcxfirefox
layout.imagevisibility.enabled
改为false
回到原帖


参数有效,多谢指点!
至察不明 Lollipop-->Marshmallow
fiag
管理员
管理员
  • UID1188
  • 注册日期2004-12-21
  • 最后登录2024-04-22
  • 发帖数4681
  • 经验686枚
  • 威望0点
  • 贡献值402点
  • 好评度51点
6楼#
发布于:2013-10-06 18:51
好多主流网站用lazy load技术加载图片,这个算是起到了部分替代作用。
流量还是没剩下来。等着开启不显示不下载吧。

按楼上说的期望要更智能点,比如台式机上关闭,手机上开。

按这原理就是基于用户是顺序逐渐阅读页面的前提而优化的
pcxfirefox
千年狐狸
千年狐狸
  • UID39042
  • 注册日期2012-06-22
  • 最后登录2018-01-15
  • 发帖数2539
  • 经验1263枚
  • 威望2点
  • 贡献值242点
  • 好评度133点
  • 最爱沙发
  • 忠实会员
  • 社区居民
7楼#
发布于:2013-10-06 18:51
fiag:好多主流网站用lazy load技术加载图片,这个算是起到了部分替代作用。
流量还是没剩下来。等着开启不显示不下载吧。

按楼上说的期望要更智能点,比如台式机上关闭,手机上开。

按这原理就是基于用户是顺序逐渐阅读页面的前提而优化的
回到原帖

你说的这个智能点,实现好简单啊

源码里ifdef那些就可以了。。。
http://pcxfirefox.wordpress.com/
白左
千年狐狸
千年狐狸
  • UID34985
  • 注册日期2010-12-29
  • 最后登录2023-11-13
  • 发帖数2039
  • 经验655枚
  • 威望0点
  • 贡献值364点
  • 好评度69点
  • 社区居民
  • 忠实会员
8楼#
发布于:2013-10-06 18:51
这次是真的了?终于学过来了嘛~

用nightly试了试,是真的,和当年cr的表现一样了,楼上所说的“破碎感”是心理作用还是硬件加速导致的?我完全没遇到哦


这个是以前测试用的页面,没有用此项技术优化的fx旧版本且内存低于16G的同学请谨慎打开,已经有一个直接蓝屏和两个系统崩溃的先例
https://www.firefox.net.cn/forum/download/file.php?id=16715
-いたんですか? -ええ、ずっと
asdfcc
火狐狸
火狐狸
  • UID31778
  • 注册日期2010-01-25
  • 最后登录2020-04-20
  • 发帖数181
  • 经验45枚
  • 威望0点
  • 贡献值0点
  • 好评度1点
9楼#
发布于:2013-10-06 18:51
这次是真改过来了,非常好。以前小圆脸考据帖要占1.5G内存,26只占300M了
alanfly
千年狐狸
千年狐狸
  • UID31035
  • 注册日期2009-11-10
  • 最后登录2023-10-31
  • 发帖数2765
  • 经验576枚
  • 威望1点
  • 贡献值128点
  • 好评度99点
  • 社区居民
  • 最爱沙发
  • 忠实会员
10楼#
发布于:2013-10-06 18:51
多图杀狐终于改进了。
shenwei37
小狐狸
小狐狸
  • UID33860
  • 注册日期2010-09-01
  • 最后登录2018-04-21
  • 发帖数43
  • 经验24枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
11楼#
发布于:2013-10-06 18:51
太棒了,这才是个像样的改进,等26正式了可以把17更新上去了.
游客

返回顶部