哲思官方群认证群组  - 讨论区

标题:[zeuux-universe] Vista有Readyboost技术,Linux没

2009年12月28日 星期一 08:56

Zhang Weiwu zhangweiwu在realss.com
星期一 十二月 28 08:56:38 CST 2009

周末逛技术网站,读网上文章,发现网上说Vista使用U盘Readybooost加速,对1G
以下内存的机器如老本本,效果很明显。但是Linux上没有对应的技术。Google一
下,发现从07年人们就在热议此事。又发现有博文讨论此事(英文),认为
Readyboost如果Linux内核也有支持的话,也应该能提升Linux性能:
http://apcmag.com/readyboost_for_linux.htm

作为readyboost的替代,网上有人建议把swap移到U盘上(现代U盘每部分被写得一
样多,所以不容易写坏掉),我试了感觉没什么加速效果。测试平台:Apple
iBook G4 1200MHz,内存768MB,运行OpenSuSE和Gnome。

我照下面这个贴子说的做法,用USB提高了一台笔记本电脑的性能。

http://www.pubbs.net/ubuntu/200909/76760/

简单说就是把随机读操作较多的部分,即/usr/lib移到U盘上。

效果:启动电脑快了25%。应用程序Evolution、OpenOffice、GNUCash感觉上是快
了,但是没有计算。





[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 09:04

Botu Sun sunbotu在gmail.com
星期一 十二月 28 09:04:40 CST 2009

难道 Linux 下不提供 ReadyBoost 技术是因为内存管理比较 NB 吗(笑)?

但是,从目前来看,大于 4GB 的内存上跑的服务中,我还真的很少能见到使用到很多 swap 空间的地方

时常内存都占不满,更何况现在的服务器都是 8GB 起步了

所以…用 U 盘挂 SWAP 分区肯定不会有想象中的提升高了。

2009/12/28 Zhang Weiwu <zhangweiwu在realss.com>:
> 周末逛技术网站,读网上文章,发现网上说Vista使用U盘Readybooost加速,对1G
> 以下内存的机器如老本本,效果很明显。但是Linux上没有对应的技术。Google一
> 下,发现从07年人们就在热议此事。又发现有博文讨论此事(英文),认为
> Readyboost如果Linux内核也有支持的话,也应该能提升Linux性能:
> http://apcmag.com/readyboost_for_linux.htm
>
> 作为readyboost的替代,网上有人建议把swap移到U盘上(现代U盘每部分被写得一
> 样多,所以不容易写坏掉),我试了感觉没什么加速效果。测试平台:Apple
> iBook G4 1200MHz,内存768MB,运行OpenSuSE和Gnome。
>
> 我照下面这个贴子说的做法,用USB提高了一台笔记本电脑的性能。
>
> http://www.pubbs.net/ubuntu/200909/76760/
>
> 简单说就是把随机读操作较多的部分,即/usr/lib移到U盘上。
>
> 效果:启动电脑快了25%。应用程序Evolution、OpenOffice、GNUCash感觉上是快
> 了,但是没有计算。
>
>
>
>
> _______________________________________________
> zeuux-universe mailing list
> zeuux-universe在zeuux.org
> http://www.zeuux.org/mailman/listinfo/zeuux-universe
>
> ZEUUX Project - Free Software, Free Society!
> http://www.zeuux.org

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 09:09

仲光泽 jlu3389在gmail.com
星期一 十二月 28 09:09:04 CST 2009

Zhang Weiwu 写道:
> 周末逛技术网站,读网上文章,发现网上说Vista使用U盘Readybooost加速,对1G
> 以下内存的机器如老本本,效果很明显。但是Linux上没有对应的技术。Google一
> 下,发现从07年人们就在热议此事。又发现有博文讨论此事(英文),认为
> Readyboost如果Linux内核也有支持的话,也应该能提升Linux性能:
> http://apcmag.com/readyboost_for_linux.htm
>
> 作为readyboost的替代,网上有人建议把swap移到U盘上(现代U盘每部分被写得一
> 样多,所以不容易写坏掉),我试了感觉没什么加速效果。测试平台:Apple
> iBook G4 1200MHz,内存768MB,运行OpenSuSE和Gnome。
>
> 我照下面这个贴子说的做法,用USB提高了一台笔记本电脑的性能。
>
> http://www.pubbs.net/ubuntu/200909/76760/
>
> 简单说就是把随机读操作较多的部分,即/usr/lib移到U盘上。
>
> 效果:启动电脑快了25%。应用程序Evolution、OpenOffice、GNUCash感觉上是快
> 了,但是没有计算。
>
>
>
>
> _______________________________________________
> zeuux-universe mailing list
> zeuux-universe在zeuux.org
> http://www.zeuux.org/mailman/listinfo/zeuux-universe
>
> ZEUUX Project - Free Software, Free Society!
> http://www.zeuux.org
我的本本有这个鸟东东,不过用起来的效果不是很明显,主要是对它实现原理不清 
楚,不知道到底做了什么。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 09:21

pan shizhu pan.shizhu在gmail.com
星期一 十二月 28 09:21:17 CST 2009

2009/12/28 Zhang Weiwu <zhangweiwu在realss.com>:
> 周末逛技术网站,读网上文章,发现网上说Vista使用U盘Readybooost加速,对1G
> 以下内存的机器如老本本,效果很明显。但是Linux上没有对应的技术。

我的理解,性能提升是针对性能瓶颈而言的。对于 vista 启动和 linux 启动的性能瓶颈并不完全相同,使用 readyboost
技术解决的是 vista 启动的性能瓶颈而不是 linux 启动的性能瓶颈。照搬此技术并无意义。

Linux 有自己的快速启动技术,也有很多人在进行相关研究,跟 vista
走简直是南辕北辙,毕竟两者内核都不同,交换的机制也很不同。google chrome os 10 秒启动,人家可没用什么
readyboost 技术。ubuntu 最近两个版本的启动速度就比以前一直在提高,也没用什么 readyboost 技术。

这些“技术”其实噱头的成分多于实际,你提高启动速度就提高吧别拿技术名词唬人。一个简单的事实就是:vista 使用了 readyboost
“技术”,但启动速度仍然比不过 XP 和 win7。后面两者可都没有吹嘘过任何技术。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 09:23

Botu Sun sunbotu在gmail.com
星期一 十二月 28 09:23:39 CST 2009

ReadyBoost 应该是通过在 U 盘上模拟出来内存,加速系统的

和什么启动加速、快速启动没联系吧?

2009/12/28 pan shizhu <pan.shizhu在gmail.com>:
> 2009/12/28 Zhang Weiwu <zhangweiwu在realss.com>:
>> 周末逛技术网站,读网上文章,发现网上说Vista使用U盘Readybooost加速,对1G
>> 以下内存的机器如老本本,效果很明显。但是Linux上没有对应的技术。
>
> 我的理解,性能提升是针对性能瓶颈而言的。对于 vista 启动和 linux 启动的性能瓶颈并不完全相同,使用 readyboost
> 技术解决的是 vista 启动的性能瓶颈而不是 linux 启动的性能瓶颈。照搬此技术并无意义。
>
> Linux 有自己的快速启动技术,也有很多人在进行相关研究,跟 vista
> 走简直是南辕北辙,毕竟两者内核都不同,交换的机制也很不同。google chrome os 10 秒启动,人家可没用什么
> readyboost 技术。ubuntu 最近两个版本的启动速度就比以前一直在提高,也没用什么 readyboost 技术。
>
> 这些“技术”其实噱头的成分多于实际,你提高启动速度就提高吧别拿技术名词唬人。一个简单的事实就是:vista 使用了 readyboost
> “技术”,但启动速度仍然比不过 XP 和 win7。后面两者可都没有吹嘘过任何技术。
> _______________________________________________
> zeuux-universe mailing list
> zeuux-universe在zeuux.org
> http://www.zeuux.org/mailman/listinfo/zeuux-universe
>
> ZEUUX Project - Free Software, Free Society!
> http://www.zeuux.org

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 09:40

pan shizhu pan.shizhu在gmail.com
星期一 十二月 28 09:40:47 CST 2009

> ReadyBoost 应该是通过在 U 盘上模拟出来内存,加速系统的
> 和什么启动加速、快速启动没联系吧?

从技术上说,windows 下两者没区别。因为 windows
中每一个用于执行的程序都被当作交换文件,而交换文件也等效于内存。所以,不论是模拟需要装载的程序,还是模拟内存,对 windows
系统来说都是一个概念。

根据这里 http://en.wikipedia.org/wiki/ReadyBoost
的描述,它确实缓存了小文件用于提速,换句话说:普通硬盘读取大文件快,闪存读取小文件快,这个技术把系统读取过的小文件都缓存到闪存中。从而提升了整个系统读取小文件的性能。――但如果你的系统硬盘就是
SSD,那么将无从提升。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 10:00

pan shizhu pan.shizhu在gmail.com
星期一 十二月 28 10:00:09 CST 2009

2009/12/28 Botu Sun <sunbotu在gmail.com>:
> 难道 Linux 下不提供 ReadyBoost 技术是因为内存管理比较 NB 吗(笑)?

是一种权衡,提升一方面的性能可能造成其他方面的性能下降。

所以这个并不是 Linux 比较 NB,而是因为 Linux 的主要性能瓶颈不在此处。――事实上对于 Linux 来说的性能瓶颈可能对
Vista 来说根本不是问题,对 Vista 来说的性能瓶颈可能对 Linux 来说根本不是问题。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 10:46

Zhang Weiwu zhangweiwu在realss.com
星期一 十二月 28 10:46:45 CST 2009

Botu Sun 写道:
> ReadyBoost 应该是通过在 U 盘上模拟出来内存,加速系统的
>   
我的理解是U盘用作文件缓存,而非内存

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 10:58

Zhang Weiwu zhangweiwu在realss.com
星期一 十二月 28 10:58:02 CST 2009

pan shizhu 写道:
>
> 根据这里 http://en.wikipedia.org/wiki/ReadyBoost
> 的描述,它确实缓存了小文件用于提速,换句话说:普通硬盘读取大文件快,闪存读取小文件快,这个技术把系统读取过的小文件都缓存到闪存中。从而提升了整个系统读取小文件的性能。——但如果你的系统硬盘就是
> SSD,那么将无从提升。
>
>   
我将 /usr/lib 放在U盘上提高了系统表现是事实,这是因为将常用小文件放在U盘
上了,这个方法显然有用。这个方法不优秀,因为并不是所有经常访问的小文件都
在 /usr/lib 里。

第一问有什么办法知道经常访问的小文件都在哪里?

一个简单的想法是: # find / -atime -1 -size -1024k


第二问是如何把小文件都缓存一份在U盘上?简单的想法是用symlink,但是有两个
缺点。

   1. 用symlink后原来的文件不在,这样机器离了U盘无法使用了。
   2. 访问symlink本身的效率不一定高,先访问symlink 再访问U盘不一定有加快。

你有什么建议?

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 12:15

Zhang Weiwu zhangweiwu在realss.com
星期一 十二月 28 12:15:02 CST 2009

Zhang Weiwu 写道:
>
> 第一问有什么办法知道经常访问的小文件都在哪里?
>
> 一个简单的想法是: # find / -atime -1 -size -1024k
>
>   
我发现其实不到1M的小文件所占空间不多。不到300M:

# find / -atime -1 -size -1024k -type f | xargs -d $'\n' -n1 ls -l | cut -d ' ' -f 5  | sed -e '2,$s/$/+/' -e '$ap' | dc

290545766

如果按512字节一个block来算,54万个block,仍然不到300M空间:

# find / -atime -1 -size -1024k -type f | xargs -d $'\n' -n1 ls -l --block-size 512 | cut -d ' ' -f 5  | sed -e '2,$s/$/+/' -e '$ap' | dc

544073

但是这样的小文件数量很多
# find / -atime -1 -size -1024k -type f | wc -l
33646

以上环境是Ubuntu 9.10 + fluxbox,笔记本电脑。



[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 13:12

pan shizhu pan.shizhu在gmail.com
星期一 十二月 28 13:12:48 CST 2009

> 你有什么建议?

ext4 早就想到这个了,所以它支持一种独特的双盘模式,也就是,逻辑上看还是一个分区,但实际上连接两个盘,一个盘存大文件,一个盘存小文件,大文件自动到大盘,小文件自动到小盘。如此以来,就直接从文件系统级解决了这个问题。

直接使用 ext4 的这个功能便可以实现想要的效果。只是,这个功能并没有被非常广泛的使用(毕竟同时使用SSD+普通硬盘的这种配置并不普遍),所以可能稳定性并不能100%得到保证。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 13:20

Zhang Weiwu zhangweiwu在realss.com
星期一 十二月 28 13:20:44 CST 2009

pan shizhu 写道:
>
> ext4 早就想到这个了,所以它支持一种独特的双盘模式


你说的这种技术,英文怎么说?中文搜索找不到有效信息。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 13:45

pan shizhu pan.shizhu在gmail.com
星期一 十二月 28 13:45:13 CST 2009

2009/12/28 Zhang Weiwu <zhangweiwu在realss.com>:
> pan shizhu 写道:
>>
>> ext4 早就想到这个了,所以它支持一种独特的双盘模式
>
> 你说的这种技术,英文怎么说?中文搜索找不到有效信息。

刚刚搜索了一下,这个技术在描绘 ext4 美好蓝图的时候经常被描述到,在ext4未在内核中正式发布时,当时很多人介绍通过实验代码来提前体验
ext4 的文章中经常描述这个特性。

不过从现在的搜索情况来看,它好像仍然只在实验代码中,正式发布的ext4似乎并没有大肆宣布这个特性。具体原因你可以再搜搜各种邮件列表的
archive,我没有细看,也许因为这个功能还没有完善,以后版本的内核才会收录,或者也许这个功能被取消了,不再收录。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 13:47

Zhang Weiwu zhangweiwu在realss.com
星期一 十二月 28 13:47:33 CST 2009

pan shizhu 写道:
>> 你有什么建议?
>>     
>
> ext4 早就想到这个了,所以它支持一种独特的双盘模式,也就是,逻辑上看还是一个分区,但实际上连接两个盘,一个盘存大文件,一个盘存小文件,大文件自动到大盘,小文件自动到小盘。如此以来,就直接从文件系统级解决了这个问题。
>
>   
似不如“小文件有一个副本在某盘上”来得稳定。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月28日 星期一 14:07

pan shizhu pan.shizhu在gmail.com
星期一 十二月 28 14:07:07 CST 2009

2009/12/28 Zhang Weiwu <zhangweiwu在realss.com>:
> pan shizhu 写道:
>>> 你有什么建议?
>> ext4 早就想到这个了,所以它支持一种独特的双盘模式,也就是,逻辑上看还是一个分区,但实际上连接两个盘,一个盘存大文件,一个盘存小文件,大文件自动到大盘,小文件自动到小盘。如此以来,就直接从文件系统级解决了这个问题。
> 似不如“小文件有一个副本在某盘上”来得稳定。

是的,严格的说来,这个技术还是对于启动的作用更大一些。

因为很多文件是会更改的。而小文件的读取速度更快并不意味着写入速度也同样的快。至少对于大多数U盘而言,其写入速度不怎么样,(除了那些专门为写加速设计的SD卡)。

简单的例子,编译一次 android
会产生3万多个小文件,大小约3G,平均每个文件大约90k。如果说系统中所有小文件都进缓存的话,这3万多个小文件很快就把U盘缓存清洗干净了。系统下次启动的时候,小文件缓存将都是些没意义的数据。

所以,除非使用某种策略只将你需要的一小部分从不修改的文件放进U盘,才能够提升系统速度。而这,也许才是 readyboost 的主要技术含量。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月30日 星期三 20:31

Zhang Weiwu zhangweiwu在realss.com
星期三 十二月 30 20:31:22 CST 2009

在 2009-12-28一的 09:04 +0800,Botu Sun写道:
> 难道 Linux 下不提供 ReadyBoost 技术是因为内存管理比较 NB 吗(笑)?
> 
> 但是,从目前来看,大于 4GB 的内存上跑的服务中,我还真的很少能见到使用到很多 swap 空间的地方
> 
> 时常内存都占不满,更何况现在的服务器都是 8GB 起步了
> 
> 所以…用 U 盘挂 SWAP 分区肯定不会有想象中的提升高了。

一定存在桌面Linux电脑上使用U盘提高磁盘硬盘系统性能的空间。

我这样说是因为首次启动应用程序的时间是影响桌面用户的一个重要指标,典型是
每次开机后,首次使用GIMP和OOO使用的时间。这个时间按我理解不太受内存大小
影响,因为首次启动的程序缓存里肯定没有。

对服务器不同,服务器一启动运行数月或数年,内存大的情况下,缓存里内容很丰
富。对笔记本电脑效果可能好。

对内存不大的桌面电脑,首次启动之外,算法合适时,也应总体提高性能。


[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

2009年12月30日 星期三 20:41

pan shizhu pan.shizhu在gmail.com
星期三 十二月 30 20:41:15 CST 2009

> 一定存在桌面Linux电脑上使用U盘提高磁盘硬盘系统性能的空间。

当然存在。不然 SSD 就没有必要诞生了。


> 我这样说是因为首次启动应用程序的时间是影响桌面用户的一个重要指标,典型是每次开机后,首次使用GIMP和OOO使用的时间。

分两种情况,休眠和关机。提高休眠恢复速度可能比提高启动速度更重要,因为如果我真的随时需要用电脑的话,我可能希望我要用的程序随时都开着。

> 这个时间按我理解不太受内存大小影响,因为首次启动的程序缓存里肯定没有。

休眠恢复的速度肯定受内存大小影响,首次启动确实影响不大。


> 对服务器不同,服务器一启动运行数月或数年,内存大的情况下,缓存里内容很丰富。对笔记本电脑效果可能好。

服务器?笔记本?两者什么关系?

> 对内存不大的桌面电脑,首次启动之外,算法合适时,也应总体提高性能。

ubuntu 每个版本都在致力与提升启动性能,chrome 一直都在致力,redhat 一直都在努力,所有大发行版都在努力。我们不应无视这些努力。

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-universe]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号