【发布时间】:2011-04-25 03:39:57
【问题描述】:
我创建的一个 python 程序是 IO 有界的。大部分时间(超过 90%)都花在一个重复约 10,000 次的循环中。在这个循环中,大约 100KB 的数据被生成并写入一个临时文件;然后它被另一个程序读回并收集有关该数据的统计信息。这是将数据传递到第二个程序的唯一方法。
由于这是主要瓶颈,我认为将临时文件的位置从我的主 HDD 移动到 (~40MB) RAMdisk(在超过 2GB 的可用 RAM 内)会大大提高此文件的 IO 速度从而减少运行时间。但是,我得到了以下结果(每个结果平均超过 20 次):
- 测试数据 1:不带 RAMdisk - 72.7s,带 RAMdisk - 78.6s
- 测试数据 2:不带 RAMdisk - 223.0s,带 RAMdisk - 235.1s
RAMdisk 似乎比我的 HDD 慢。
这可能是什么原因造成的?
除了使用 RAMdisk 来获得更快的文件 IO,还有其他替代方法吗?
【问题讨论】:
标签: performance file ramdisk