[pgsql-jp: 30725] SMP環境下でのサーバ設定

Yasuo Ino y-ino @ daj.co.jp
2003年 8月 7日 (木) 21:52:43 JST


DELLのPowerEdge2400をpostgresqlサーバにしようと思いまして、
Redhat7.3を突っ込んでみたのですが、激遅で悩んでいます。

・スペック
P3-733MHz×2
MEM:1GB
HDD:9GB×3(DELL PERCRAID-5)
OS:RedHat7.3(Kernel 2.4.20-19.7smp←最新)
DB:postgresql7.2.3-5.73(RH提供のrpm版最新)

OSを入れ終え、自動でinitdbを行い、他のpostgresqlで使っている
設定ファイルをコピーして再起動させ、外部から接続して動作確認
しました。

ここでpgbenchを使って、ベンチマークを取ってみたのですが、
# pgbench -i test
(省略)
# pgbench -c 64 -t 20 test
starting vacuum...end.
transaction type: TPC-B (sort of)
scaling factor: 1
number of clients: 64
number of transactions per client: 20
number of transactions actually processed: 1280/1280
tps = 7.871469(including connections establishing)
tps = 7.912055(excluding connections establishing)
と惨憺たる有様です。

postgresqlの設定というか、細かいチューニングを知らない・してないので、
こんなものなのかもしれませんが、同じ設定・ソフトウェアの別マシン
(Cele733MHz/512MB/IDE-120GB)での結果でもtps=14とか出ているので、
不思議に思っています。(これも酷いといえば酷い結果ですが)

Webで調べると、7.2系くらいからSMP環境での性能向上がかなりあると
有ったので期待していたのですが、これではダメですよね・・・

SMP環境下で性能を出すには、何か設定のコツがあるのでしょうか?
それともsourceからmakeしないとダメだったりするのでしょうか?
何か知っている方がいらしたら、ヒントください・・・
御願いします。

あ、postgresql.confでは以下あたりを弄っています。
--------------------
tcpip_socket = true
max_connections = 128
port = 5432
shared_buffers = 256
--------------------

# MLの過去ログで、石井達夫さんが、Linux RedHat 6.0
  (2.2.5smp kernel)/Pentium 500MHz×2/512MB/UltraWideSCSI/RAID5
  で、150-200tps位の値が出ているという記事を見つけて、ビックリ!
  こ、この差はなんだー!?(←ウデの差だって、、、_| ̄|○)


Yasuo Ino <y-ino @ daj.co.jp>




pgsql-jp メーリングリストの案内