我正在使用一个简单的python 3脚本,该脚本编写用于解析一些非常大的文件。这是一个单线程脚本(我什至不知道如何设置多线程python脚本)。
但是,当我运行脚本时,该脚本在我们的计算机群集上使用了30多个核心。
该脚本仅使用argparse模块和另一个名为pyBigWig的模块。如何使用30个内核?
----编辑----
尽管这是我面临的一个实际问题,并尽我最大的努力来描述这个问题,但我不能说我为立即收到这份赞成票感到惊讶。
整个脚本取决于我在文件的每一行中浏览的简单循环:
with open(file, 'r') as fh:
for line in fh:
# assign some variables from this line
# calculate some values from these variables
# write new values to a new line of a new output file
答案 0 :(得分:0)
结果证明numpy
模块正在使用所有内核。通过将其添加到脚本顶部,我设法限制了这一点:
import os
os.environ["MKL_NUM_THREADS"] = "1"
os.environ["NUMEXPR_NUM_THREADS"] = "1"
os.environ["OMP_NUM_THREADS"] = "1"