linux – ramfs和tmpfs之间的性能差异

前端之家收集整理的这篇文章主要介绍了linux – ramfs和tmpfs之间的性能差异前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要为大约10 GB的数据设置一个内存存储系统,包括许多100 kb的单个文件(图像).将有大量的读取和相当周期性的写入(添加文件,删除一些旧文件).
现在,我知道tmpfs的行为类似于常规文件系统,例如,您可以使用df检查空闲/已用空间,这是一个很好的功能.但是我很感兴趣ramfs是否会在IO操作速度方面提供一些优势.
我知道在使用ramfs时我无法控制消耗内存的大小,并且如果它完全消耗了可用RAM,我的系统可能会挂起,但在这种情况下这不是问题.

总结一下,我很感兴趣:
性能明智,速度更快:ramfs或tmpfs(也可能是为什么)?
– tmpfs什么时候使用交换空间?是否将已保存的数据移动到交换(为当前正在运行的其他程序释放RAM)或仅移动新数据(如果此时没有剩余空闲RAM)?

解决方法

我的建议:

在正常条件下测量和观察现实生活中的活动.

这些文件不太可能是所有需要的,并且始终从缓存中提供.但是有一个很好的工具叫做vmtouch可以告诉你在特定时刻缓存中的内容.您还可以使用它将某些目录或文件锁定到缓存中.所以看看经常使用后的样子.在这种情况下,不需要使用tmpfs和ramfs.

见:http://hoytech.com/vmtouch/

我想你会惊讶地发现最活跃的文件可能已经驻留在缓存中了.

就tmpfs与ramfs而言,没有明显的性能差异.存在运营差异.一个真实的用例是Oracle,其中ramfs用于允许Oracle管理RAM中的数据,而不存在交换风险. tmpfs数据可以在内存压力下换出.动态调整大小和修改设置也存在差异.

猜你在找的Linux相关文章