2017-02-10 4 views
0

私は分析を行う専用アプリケーションサーバーを持っています。アプリケーションサーバーCPUを100%にするにはどうすればよいですか?

私は2CPU、8GB RAMマシンで動作しています。

私は以下のように2つの同じアプリケーションを実行しています。

python do_analytics.py & 
python do_analytics.py & 

ただし、CPUが20%未満です。 CPUを最大限に活用するために、より多くのプロセスを実行できますか?私は2つのCPUしか持っていないので、スピードアップするか、私の単一のプロセスは遅くなりますか?

ありがとうございました。

+0

CPUがマルチスレッドをサポートしていますか?あなたのプログラムのプロフィールは何ですか? I/Oを頻繁に実行していますか?計算速度を上げるためにnumpyやその他のネイティブコードライブラリを使用していますか? – abukaj

+0

@abukaj、こんにちは、それはI/Oとネットワークを頻繁にします。それはnumpyを使用しません。私はaws t2.smallを使用しています – moeseth

+1

't2.small'の場合、20%の使用率が基本性能です([ここ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-instancesを参照) .html))。あなたはCPUクレジットを持っていますか?あなたが20%に達していない理由は何ですか? – stephan

答えて

0

CPU使用率が20%を下回っているということは、CPUの負荷がさらにかかることを意味します。したがって、より多くのプロセスを実行できます。

私はCPUが2つしかないので、スピードアップするか、私の単一のプロセスが遅くなりますか?

これは、アプリケーションのその他の要因によって異なります。ほとんどの分析ロジックが処理能力とメモリを使用しているだけの場合あなたは心配する必要はありません。しかし、より多くのプロセスがより多くのディスクアクセスまたは共有リソースを意味するならば。より多くのプロセスを実行すると、全体的なパフォーマンスが低下する可能性があります。

関連する問題