4 コア以上の単一コア erlang プログラムを搭載したコンピューターでテストできますか?
パラメーターを使用せずに開始すると、erlang smp は次のように 2:2 を想定します。
Erlang R14A (erts-5.8) [smp: 2:2] [rq: 2] [async-threads: 0]
Pentium 4 を使用していますが、コアが 2 つあるということですか?
デフォルトでは、使用可能なコアごとに 1 つのスケジューラーが開始され、複数の実行キューが使用されます (スケジューラーごとに 1 つ。R13 以降で使用可能)。シェル[smp 2:2]
では、2 つのコアで 2 つのスケジューラが実行されていることを意味します。[rq: 2]
は、2 つの実行キューを使用していることを意味します。
スケジューラの数を変更する場合はerl +S 4
、たとえば 4 つのスケジューラから始めます。
シングルコア システムで erlang をコンパイルする場合は、configure スクリプトで を使用して smp を有効にしてください--enable-smp-support
。そうしないと、複数のスケジューラーを使用できない場合があります。