首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在linux中增加i/o吞吐量以实现更快的读取?

问如何在linux中增加i/o吞吐量以实现更快的读取?
EN

Stack Overflow用户
提问于 2012-07-09 13:46:27
回答 2查看 1.1K关注 0票数 1

我有一个从标准输入中读取数据的C程序。我将在linux上使用dd命令测试我的程序,使用(4KB的读缓冲区)2 2GB的数据。

我在3.20 got的机器上得到了565MB/s的速度。我在300 got的机器上得到了更少的。有什么技巧可以最大限度地提高输入速度。我已经阅读了一些proc条目,但可以获得任何帮助。(这是不是可以最大化内核io缓冲区大小来提高速度?)请尽快简短回复。

该领域的初学者。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-10 19:12:31

增加读缓冲区(当前为4K)将有助于提高速度。没有其他相关的可调参数可以始终如一地帮助您。减少上下文切换和更大批量的工作应该是你的关键方法。

票数 0
EN

Stack Overflow用户

发布于 2012-07-09 17:58:58

如果您的2 2GB输入是在磁盘上的连续块中,您可以尝试设置内核的fadvise。这将使Linux内核的预取窗口更大。

请注意,只有当访问硬盘是瓶颈时,这才会有帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11389616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档