概要
演算の中枢機構(CPUコア)を二つ搭載した「デュアルコアCPU」と,シングルコアCPUを2基搭載した「デュアルCPU」とで,データベース用途における処理性能を比較した。結果,両者の処理性能の差はごくわずかだった。デュアルコアCPUでは,システムのトータル費用を下げられる可能性が見えてきた。
前号で示したとおり,演算の中枢機構(CPUコア)を二つ搭載した「デュアルコアCPU」の処理能力は,シングルコアCPU1基と比べて35ポイント以上高くなった。一般的にデュアルコアCPU搭載のサーバー機の価格は,シングルコアCPU搭載のサーバー機の数万円増し程度なので,Web/AP(アプリケーション)サーバーの用途ではデュアルコアCPUのコスト・パフォーマンスが高いことを確認できた。
引き続いて今回は,デュアルコアCPU1基を搭載したサーバー機と,シングルコアCPUを2基搭載した「デュアルCPU」のサーバー機とで,処理性能を比べてみる。というのも,CPU課金のソフトウエアの中には,デュアルコアCPUを「CPU1個」や「CPU1.5個」として扱い,「CPU2個」であるデュアルCPUよりもライセンス費で優遇しているものがあるからだ。もし,デュアルコアCPUの処理性能がデュアルCPUに大きく見劣りしなければ,デュアルコアCPUを選択することで,ソフトウエアのライセンス費や保守費を削減できる可能性がある。
結論から言えば,クロック周波数の違いが大きくなければ,デュアルコアCPU1基の処理性能はデュアルCPUと大差なかった(図1)。単位時間当たりのSQL文の処理件数を実測したところ,Xeonデュアルコア(Paxville DP)は約2783.7件,XeonデュアルCPUは約2858.3件で,デュアルコアは約2.6%(約74.6件)しか劣らなかった。この場合,Xeonデュアルコアのクロック周波数が0.2GHz低かったことなどを考慮すると,処理性能はほぼ互角と言ってよいだろう。
![]() |
図1●デュアルCPUとデュアルコアCPUの処理性能の差はごくわずか クロック周波数の違いを考慮すると,デュアルコアCPUの処理性能はデュアルCPUに見劣りしなかった。ソフトウエア・ライセンス費がデュアルCPUの場合よりデュアルコアCPUの方が割安な場合は,迷わずデュアルコアCPUを選ぶべきだろう [画像のクリックで拡大表示] |
この結果から,ソフトウエアのライセンス費でデュアルコアCPUが優遇されている場合,(クロック周波数が大きく違わない限り)デュアルコアCPUを選択するのが得だと言える。
検証編
今回の検証では,DB(データベース)サーバーとして利用した場合の実力を測定した(図2)。
![]() |
図2●検証の環境と内容 DBサーバー用途での実力を測定した。SQL Server 2005に100万件のデータを格納。DB用負荷テスト・ソフト(無償配布されている「DBStressUtil」を改造)を使い,SQL文の同時実行数を徐々に増やしたときのCPU使用率と処理件数を測定した。結果を(1)~(3)のパターンで比較する [画像のクリックで拡大表示] |
まず,米Intelの「Xeon」と米AMDの「Opteron」のそれぞれについて,デュアルCPUのサーバー機と,デュアルコアCPUのサーバー機を用意した。サーバー機はすべて日本コンピューティングシステムの「Vintage」シリーズで,CPUとマザーボード以外の構成をほぼ同等にそろえた。ただし,Intelが5月に出荷したデュアルコアCPU「Xeon 5060(コード名:Dempsey)」の搭載機はディスク周りの構成が異なるマシンしか用意できなかったので,今回は参考値として紹介する。
各サーバーには,OSとして「Windows Server 2003 Enterprise Edition」,RDBMSとして「SQL Server 2003 Developer Edition」を導入。SQL Serverには,顧客DBを想定した100万件のデータを格納した。LANスイッチには「Summit X450」(開発は米Extream Networks)を使う。
この検証システムに,DB用負荷テスト・ソフト(無償配布されている「DBStressUtil」の改造版)を使って徐々に負荷を与えた。三つのSQL文からランダムに一つを実行するスレッドを,2秒に1個ずつ増やした。実行するSQL文の内容は,顧客DBではよく使う[1]簡単なSELECT文(条件と完全一致する顧客レコードを検索),[2]簡単なUPDATE文(条件と完全一致する顧客レコードを更新),[3]LIKE句を含むSELECT文(条件と部分一致する顧客レコードを検索)である。サーバー機のCPU使用率の推移と,単位時間当たりに完了したSQL文の処理件数を計測した。どちらの指標も,数値が大きいほど,処理性能が高いことを示す。検証は複数回実施し,計測値に大きな偏りがないことを確認したうえで平均値をとった。
測定した結果を,(1)Xeon デュアルCPU vs. デュアルコア,(2)Opteron デュアルCPU vs. デュアルコア,(3)Xeon デュアルCPU vs. 仮想デュアルコア(ハイパー・スレッディングを使用)――の三つのパターンで比較する。
検証環境は32ビット版のWindows 2003とSQL Server 2005で構築したが,参考までに64ビット版で構築した場合の結果も計測した。参考比較として,32ビット・システム vs. 64ビット・システムについても紹介する。(囲み記事参照)。
検証実験と比較分析には,前号から引き続き,SIベンダーであるブリッジ・メタウェアの熊野大介氏のご協力をいただいた(囲み記事参照)。
|