在我的一个python脚本中,我目前使用lsim函数来模拟一个系统模型。我最近遇到的一个问题是,lsim在多个内核上产生了许多子进程,这些子进程一起导致了沉重的CPU负载。这个事实也显示在分析日志中,我在下面附上了相关的片段。我在一台处理机上运行这个脚本,我与多个人共享它。如果我使用lsim 2,似乎不会产生子进程,但是运行脚本的时间长得令人难以忍受。有人知道如何快速运行lsim,同时使用更少的资源/只有一个核心吗?
ncalls tottime percall cumtime percall filename:lineno(function)
3740 25.422 0.007 51.062 0.014 /grid/common/pkgs/python/v3.7.2/lib/python3.7/site-packages/scipy/signal/ltisys.py:1870(lsim)
26753891 21.519 0.000 21.519 0.000 {built-in method numpy.dot}
12 0.001 0.000 21.450 1.788 /grid/common/pkgs/python/v3.7.2/lib/python3.7/subprocess.py:431(run)
12 0.000 0.000 21.265 1.772 /grid/common/pkgs/python/v3.7.2/lib/python3.7/subprocess.py:895(communicate)
24 0.000 0.000 21.265 0.886 /grid/common/pkgs/python/v3.7.2/lib/python3.7/subprocess.py:985(wait)
24 0.000 0.000 21.265 0.886 /grid/common/pkgs/python/v3.7.2/lib/python3.7/subprocess.py:1592(_wait)
12 0.000 0.000 21.264 1.772 /grid/common/pkgs/python/v3.7.2/lib/python3.7/subprocess.py:1579(_try_wait)
1条答案
按热度按时间o75abkj41#
设置环境变量
OPENBLAS_NUM_THREADS=1
对我来说很有用