gpt4 book ai didi

python - 是否可以加速 python IO?

转载 作者:IT王子 更新时间:2023-10-28 23:52:03 25 4
gpt4 key购买 nike

考虑这个 python 程序:

import sys

lc = 0
for line in open(sys.argv[1]):
lc = lc + 1

print lc, sys.argv[1]

在我的 6GB 文本文件上运行它,它在大约 2 分钟内完成。

问题:有可能走得更快吗?

请注意:

wc -l myfile.txt

所以,我怀疑我的问题的答案只是一个简单的“不”。

另请注意,我的真实程序正在做一些比仅仅计算行数更有趣的事情,所以请给出一个通用的答案,不是行计数技巧(比如在文件中保留行计数元数据)

PS:我将这个问题标记为“linux”,因为我只对特定于 linux 的答案感兴趣。如果您有答案,请随意给出操作系统不可知论者甚至其他操作系统的答案。

另见follow-up question

最佳答案

用硬件解决问题。

正如 gs 所指出的,您的瓶颈是硬盘传输速率。所以,不,你不能使用更好的算法来改善你的时间,但你可以购买更快的硬盘。

编辑 gs 的另一个好点;你也可以使用 RAID配置以提高速度。这可以通过 hardware 来完成或软件(例如 OS XLinuxWindows Server 等)。


控制方程

(转账金额)/(转账率)=(转账时间)

(6000 MB)/(60 MB/s) = 100 秒

(6000 MB)/(125 MB/s) = 48 秒


硬件解决方案

The ioDrive Duo据说是企业环境中最快的解决方案,并且“将于 2009 年 4 月推出”。

或者您可以查看 WD Velociraptor 硬盘(10,000 rpm)。

另外,我听说 Seagate Cheetah是一个不错的选择(15,000 rpm,持续传输速率为 125MB/s)。

关于python - 是否可以加速 python IO?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/849058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com