2005年10月20日(木) [過去の今日]
#1 optimize for athlon64 on i386 linux
んー、debianでemcwsをathlon64に最適化コンパイルしてみたところ、i386なemacs21用にバイトコンパイルされたelispパッケージが利用できなくなった。 *1
まあ、OSをx86-64にしちゃえばいい話なんだが、i386/i686なバイナリオンリーのアプリもいくつかあり、chroot環境から起動するってのもどーかという感じでどうしたものか。
しょうがないのでとりあえず 師匠の作ったemcws debパッケージ を最適化コンパイルして使うことに。debian/rulesに
CFLAGS := -DDEBIAN -g + CFLAGS += -O3 -mtune=athlon64 -march=athlon64 -mcpu=athlon64 + CFLAGS += -msse -msse2 -mmmx -m3dnow -mfpmath=sse,387 -pipe
こんなの付け足して、debuildしてみると、ちゃんと動いた。
しかし、よく見るとDEB_HOST_ARCHなどがi486とかになってる模様。このへんどうにかしないとオーバーヘッドついたまんまになっちゃって、性能発揮できてないんだろうなあ。
まあ、究極的にはOSまるごとx86-64にしちゃうことなんだろうが、最低でもacroreadとVMwareがx86-64 linuxに対応するまではi386のままで我慢かなあ。
(@667)
*1: ちょこっとetc/startup.elを改造してやれば、/usr/localに放りこんだemcwsからでもemacs21のelispパッケージが利用できるのである