我有一个python脚本,正常运行时间约为90秒。但是,当我只更改其中的小东西(比如在我的最终pyplot
图中交替颜色)并快速连续多次执行时,其运行时间增加到接近10分钟。
我正在做的一些要点:
.dat
打开一些本地保存的numpy.genfromtxt
个文件,并用它们处理一些数字。array.columnname
广泛使用索引。if
,但没有什么花哨的,真的。 我使用multiprocessing
模块如下
import multiprocessing
npro = multiprocessing.cpu_count() # Count the number of processors
pool = multiprocessing.Pool(processes=npro)
bigdata = list(pool.map(analyze, range(len(FileEndings))))
pool.close()
analyze
是我的主要函数,FileEndings
是它的输入,一个字符串,用于创建我想要加载和评估的文件的正确名称。之后,我再次使用
pool2 = multiprocessing.Pool(processes=npro)
listofaverages = list(pool2.map(averaging, range(8)))
pool2.close()
averaging
是我的另一个功能。
@jit
装饰器来加速我在内循环中进行的基本计算,nogil
,nopython
和cache
都设置为{{1 }}。评论这些并不能解决问题。True
也无济于事。bash
表明所有处理器在运行时都处于满负荷状态。我也看到很多来自PyCharm(大约50个)的过程,每个过程都等于{7}的htop
。大多数MEM%
为0,少数例外情况在几个百分点范围内。 之前有没有人遇到过这样的问题?如果是这样,任何建议可能会有什么帮助?或者我使用的任何东西都容易引起这些问题?
答案 0 :(得分:0)
可能会关闭,问题是由我机器中的风扇故障引起的。