柳澤です。 Hirosi Osumi wrote: > AMD 64x2 CPU を購入し、FreeBSD/amd64 6.2-RELEASE をインストールしたのですが、 > すこし疑問に思うところがありまして投稿しました。 > > dmesg には以下のように CPU が二つ認識しているようですが (snip) > top コマンドを実行しても CPU 行が1行しか表示されません。
FreeBSDのtopコマンドはたとえSMPであったとしても、 昔(といっても、3.xの頃は知りませんが)からCPUは1行しか 表示されないようです。そして、すべてのCPUを最大で使うと 100%になるという表示の仕方のようです。各々を表示させる 方法はmanを読む限り見つかりませんでした。 なお、topをSMP環境で動かすとCというカラムが 追加されていて、各々のプロセスがどのCPUで実行中か というのがわかります。 > また、CPU 使用率も dnetc/RC5-72 を実行しているので > 使用率は 100% になるかと思ったのですが、50% で止まっていて > 片方しか使っていないようです。 > dnetc のログを見ると2つ並行して動かしているように見えるのですが。。。 > [Mar 12 14:39:54 UTC] Automatic processor detection found 2 processors. > [Mar 12 14:39:54 UTC] Loading crunchers with work... > [Mar 12 14:39:54 UTC] Automatic processor type detection found > an AMD K8-11 processor. > [Mar 12 14:40:17 UTC] RC5-72: using core #1 (KBE-64 3-pipe). > [Mar 12 14:40:17 UTC] RC5-72 #a: Loaded CB:7C3645AA:00000000:1*2^32 (31.50% > done) > [Mar 12 14:40:17 UTC] RC5-72 #b: Loaded CB:7C3645A7:00000000:1*2^32 (31.50% > done) using core #1とあるのでCPUを1つしか使ってないということは ないんですかね。試しに、dnetcを自分も同じ環境のマシンで 動かして、ps -aHで見てみましたが1つしかdnetcが無いので、 1スレッドで動いていて、CPUを2つは使っていないようです。 この手の静的にリンクされたアプリケーションでは KSEは使えないような気がするのですが... CPU使用率を100%にするだけなら、無駄なループを回り続ける shellスクリプトをCPUの個数分動かすという手段もありますよ。 # 質問の内容と関係ないですが、最後に一つだけ。 # 時計の設定なのですが、 # PCの時計はJSTなのに、OSの時計をGMTにしているように思います。 # 設定ミスというより、設定をしていないだけのように見えますが。
