2

AWS EC2 インスタンス (c1.medium) で GCC を使用してプログラムをコンパイルしようとしています。プロセスは正しく開始されcc1plusますが、しばらくすると CPU の使用が停止し、完全なコンパイル プロセスが遅くなり、終了しません。

では、コンパイルが遅くなると同時にtop" " 統計が大幅に増加することがわかります。wa

最初に:

%Cpu(s): 88.1 us,  5.4 sy,  0.0 ni,  0.0 id,  0.5 wa,  0.0 hi,  0.0 si,  6.0 st

コンパイル プロセスが遅くなると、次のようになります。

%Cpu(s):  0.2 us,  0.3 sy,  0.0 ni, 50.2 id, 49.3 wa,  0.0 hi,  0.0 si,  0.0 st

多くの異なるインスタンス タイプを試しましたが、すべて同じ結果でした。

私が理解しているように、高い wa/iowait は遅いディスクを意味します。そのため、ec2 インスタンスのさまざまなマウントでアプリケーションをコンパイルしようとしましたが、改善されませんでした。

EC2 で c/c++ アプリケーションをコンパイルした経験があり、この問題を解決する方法を知っている人はいますか?

更新 2013-03-06 08:00

コメントで要求されたとおり:

$ gcc --version 
gcc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2
4

2 に答える 2

2

解決策は、8 GB を超える RAM を搭載したマシンを使用することでした。GCC は、この特定のプログラムをコンパイルするために大量の RAM を使用したようです。

于 2013-03-07T08:55:57.100 に答える
1

ご自身で解決策を見つけられたことを嬉しく思います。

また、コードのコンパイルなど、プロセッサの負荷が高い操作を実行しているときに、マイクロインスタンスでこの種のハングアップ動作が発生する可能性があることにも気付きました。この種の作業は常に少なくとも小さいサイズで行い、必要に応じて、完了したらマイクロに戻します。

于 2013-03-07T23:12:52.133 に答える