【发布时间】:2015-03-22 16:57:42
【问题描述】:
我有两个大约 50GB 的文件:一个 输入 和一个 输出 文件。 我正在使用内存映射文件来管理这两个文件。
input 文件包含 3 百万个网页,在我确定了 排列 π他们,我必须以新的顺序将网页写入 output 文件。
所以,我可以选择顺序读取输入文件,并在输出不同位置写入网页 文件,根据 排列 π。
或者我可以做相反的事情:根据排列 π 随机读取输入文件并写入按顺序进入输出文件。
哪个选项更快?为什么?
【问题讨论】:
-
除了“性能咆哮”链接中的有效点外,还取决于底层硬件。在许多情况下,差异可能很小。只需在您的硬件上试一试,看看哪个更快。
标签: c# memory-mapping