10 返信 最新の回答 日時: May 2, 2011 4:28 AM ユーザー:830749

    Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには

    855550
      以下の環境で動作させているのですが、どうもOracleが8cpu分しか使っていないようです。

      Dell R610 : Xeon E5540(4Core x HT) x 2CPU = 16理論CPU
      OS : Windows Server 2008 R2
      Oralce : 10g 10.2.0.5

       確認には、OSのタスクマネージャーでのパフォーマンスで16個並んでいるCPUの利用履歴で
      8つまでは履歴の%で動きはあるのですが、それ以外はほとんど履歴での%が0のままです。


       確認した事項

      ・レジストリ「ORACLE_AFFINITY」は空で、設定は何も行っていません。

      ・v$parameterの cpu_count : 16 となっておりました。
       select * from v$parameter where name = 'cpu_count'

      ・V$OSSTATでのCPU数に対応するところも 16 になっておりました。
       select * from V$OSSTAT where STAT_NAME = 'NUM_CPUS' ;


       お手数をおかけしますが、確認箇所・設定個所などがあれば、ご指導いただければと思います。
        • 1. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
          827071
          無限ループするPL/SQLを多数(最低でも16個)同時実行するとか・・・
          • 2. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
            855550
            リプライありがとうございます。

            質問内容の記載が悪かったみたいでして。

            通常の利用中でタスクマネージャーを見ていると8つ分のみを使って、処理を行われているようで、
            残り8つが全く使われていない感じなのです。

            以下にタスクマネージャーのキャプチャを上げました。
            ttp://www.fastpic.jp/images/856/1615581645.png

            左側8つはそこそこ使われていますが、右側8つは使われていない感じです。

            折角2ソケットにCPUを載せているのに半分しか使われていない感じなので、マシンの性能をフルに
            使うために設定が何か必要なのかと思い、質問させてもらっております。
            • 3. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
              827071
              リリース前に実施した走行テストではすべてのCPUを使っていることを確認済みとか
              使ってるエディションはちゃんと16個分使えるものを使っているのかなどの情報も書かれると良いかも・・・
              • 4. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
                855550
                リプライありがとうございます。

                ・リリース前に関しては、未チェックでした。
                 もしかすると、セットアップ時からこうだったかもしれません。

                ・エディション: Standard One です。
                 現行とは別に購入予定があり(こっちは1P6Cの構成予定)、その構成の見積もり時にOracle Directに確認をしたら、
                このエディションではソケット数での上限はあるけど、コア数での上限ではないという返答をもらっております。
                OS側の設定ではないかということでした。
                • 5. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
                  wmo6hash
                  左側8つはそこそこ使われていますが、右側8つは使われていない感じです。
                  特異な感じがします。
                  OS側の設定ではないかということでした。
                  他のソフトウエアでは生じていない現象でしたら、 Oracle Database をインストールするときに Standard One を選択してインストールしただけでこのような現象になるような設定が新たにされるとは考えにくいです。
                  Windows Server 2008 R2のインストールも含め、どこから入手した何の各ソフトウエアやパッチをどのようにインストールしたのかをより具体的に明示された上で、Oracle Directからの返答がこのようなものであったことを伝えながらサポートへ問い合わせられたほうが良いと思います。


                  Edited by: wmo6hash on 2011/04/25 3:55
                  ここからは あとがき です。
                  http://forums.oracle.com/forums/messageview.jspa?messageID=9539860 へ、上に私が書いた内容は自分でおかしいと思っているということを書きました。そのまま残しておきます。
                  他のソフトウエアでは同じ現象が生じないか試された後で Oracle Database だけだと特異かもしれませんが、そうでないなら特異ではないと思っています。
                  • 6. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
                    827071
                    OS側の設定ではないかということでした。
                    Core Parking のことかな?
                    • 7. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
                      wmo6hash
                      852547 さんは特に何かされていないということなので、 Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには で私の書いていることは、おかしいですね。
                      おかしいということを、そのまま残しておきます。

                      user1028717 さんのおっしゃるとおり
                      折角2ソケットにCPUを載せているのに半分しか使われていない感じ
                      はコアパーキングによるものと思います。
                      • 8. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
                        855550
                        user1028717 さん、wmo6hash さんリプありがとうございます。

                        Core Parkingをgoogleで調べてみました。なるほど、省電力向けの関連で、コアの利用制御が出来るんですね。

                        サーバ機での確認・設定変更はこれからしますが、試してみます。
                        • 9. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
                          855550
                          結果報告です。

                          CoreParkingの設定は特にされていませんでした。

                          また、コントロールパネルの「電源オプション」が「バランス」になっていたので、「高パフォーマンス」に設定してみました。
                          レジストリでのCoreParkingの設定を無効にしてはおりますが、再起動が出来ていないので、設定の反映状況は不明です。

                          高パフォーマンスに変更しただけで、追加で1~2個分の利用が増えた感じです。
                          もう少し設定調整とタイミングをはかった再起動を行ってみます。
                          • 10. Re: Windows Server 2008 R2と10g 10.2.0.5でCPUを使いきるには
                            830749
                            状況がよく分かってないので的外れなことを言うかもしれませんが。

                            念のために確認しますが、そもそも複数プロセスで実行されるような仕込みはどうされているのでしょうか。
                            もし、パラレル実行用のSQLとかテーブル等の設定とか何もしてなければシングルスレッドで動いていて
                            内部プロセスやバックグランドを含めて使われるCPUが数個しかない状況は普通じゃないんでしょうか。