Pythonでスクリプトを実行すると問題が発生します。私はPythonで並列化を行っておらず、スクリプトを実行するためにmpiを呼び出していません。「pythonmyscript.py」を実行するだけで、1つのCPUのみを使用する必要があります。
ただし、コマンド「top」の結果を見ると、PythonがCPUのほぼ390%を使用していることがわかります。私はクアッドコアを持っているので、8スレッドです。これが私のスクリプトの実行速度を上げるのに役立っているとは思いません。そこで、Pythonが複数のCPUを使用している理由を理解し、使用を停止したいと思います。
興味深いのは、2番目のスクリプトを実行すると、そのスクリプトも390%を占めることです。3番目のスクリプトを実行すると、それぞれのCPU使用率が250%に低下します。しばらく前にmatlabで同様の問題が発生し、それを解決する方法は-singlecompthreadを使用してmatlabを起動することでしたが、Pythonで何をすべきかわかりません。
それが役立つ場合は、スクリプトでポアソン方程式(まったく並列化されていません)を解いています。
更新:私の友人は自分のコンピューターでコードを実行しましたが、100%CPUしかかかりません。BLASやMKLなどは使用していません。400%のCPU使用率の原因はまだわかりません。ライブラリSLATECには、Ax=bシステムを解決するFortranアルゴリズムがあります。その部分はCPUをたくさん使っていると思います。