[pgsql-jp: 30957] Re: TL8 AMD64で共有メモリに上限?
Tatsuo Ishii
t-ishii @ sra.co.jp
2003年 9月 6日 (土) 13:01:22 JST
石井です.
> Opteronが手元にないので推測ですが,素の7.3.4ではspin lockでセマフォを
> 使うようになっているので,そのせいかもしれません.試しに,
>
> src/include/storage/s_lock.hの97行め辺り:
>
> #if defined(__i386__)
>
> を
>
> #if defined(__i386__) || defined(__x86_64__) /* AMD Opteron */
>
> に置き換えてみてはいかがでしょう?うまくいけば性能もだいぶ向上するはず
> です.ちなみに,マクロの置き換えになるので,念のためにmake distcleanす
> るか,ソースをtar ballから展開し直した方がよいかもしれません.
>
> あとは,開発中の7.4のsnapshotを試してみる手もあります.7.4ではすでに上
> のパッチがあたっています.
書き忘れましたが,64ビットモードでコンパイルするために,
gccに「-m64」というコンパイルフラグを渡す必要があります.また,このフラグを
付けずにコンパイルしたPostgreSQLで作ったDBクラスタは使えないので,
initdbが必要になります.
--
Tatsuo Ishii
pgsql-jp メーリングリストの案内