最終更新日: Wed Jun 19 19:54:26 2002

Clover上でPAPI(Performance API)を動作させる

RedHat Linux(clover)上に PAPIソフトウェアを導入する際のメモです。

前準備

作業の前にシステムのバックアップを作成しておきます。 バックアップは以下の要領で作成します。

まず、cloverの置いてある机の引き出しにDDS4のテープが入っています。 今回はこの中から新しいものを使いました。 DDS4ドライブにテープを挿入し、定期バックアップ用のスクリプトを走らせます。 (バックアップ終了までの時間は42分程度)

# /root/dump_cron.sh 

インストール

インストールに必要なファイルは以下の通りです。 予めダウンロードしておき、${work}に置いておきます。

PAPI
papi-1.1.5.tar.gz
PerfCtr
perfctr-papi-1.1.4.tar.gz

まず、PerfCtrのパッチをLinux kernelに当てます。

# cd $work
# tar zxvf perfctr-papi-1.1.4.tar.gz

(まずドライバファイルを移動する)
# cd perfctr/linux
# tar cf - . | tar -C /usr/src/linux-2.2.12 xvf -

(デバイスファイルを作成する)
# mknod /dev/perfctr c 10 182
# chmod 644 /dev/perfctr

(カーネルにパッチを当てる)
# cd /usr/src/linux-2.2.12
# patch -p1 < ${work}/perfctr/patches/patch-kernel-2.2.13

(カーネルを設定する)
# make xconfig
	「General setup」を選択する。
	  「Performance-monitering counters」の項目を「y」に変更する。
	  「Virtual performance counters support」の項目を「y」に変更する。
	  「Global performance counters support」の項目を「y」に変更する。
	  (設定画面)
	「Save and Exit」する。

(カーネルを再構築する)
# make dep
# make clean
# make bzImage

(新しいカーネルをインストールして再起動)
# cp arch/i386/boot/bzImage /boot/vmlinuz-2.2.12-new
# vi /etc/lilo.conf
	以下のエントリを追加する。

image=/boot/vmlinuz-2.2.12-32smp-shm.new
	label=linux-new-test
	read-only
	root=/dev/sda5

# lilo
# lilo -q
# reboot

起動時の `LILO: 'プロンプトの際にTABを押し、新しいカーネル `linux-new-test' を選択する。

(ちゃんと起動できるのを確認したら、デフォルトの起動カーネルにする)
# cp /boot/vmlinuz-2.2.12-32smp-shm.new /boot/vmlinuz-2.2.12-32smp-shm
# lilo
# lilo -q

引き続きPAPI本体のインストールに移ります。

% cd $work
% tar zxvf papi-1.1.5.tar.gz
% cd papi/src/perfctr
% ./configure --incldir=/usr/src/linux/include
% cd ..
% make -f Makefile.linux-perfctr
% ./run_test.sh
% su
Password: ***********
# make -f Makefile.linux-perfctr DESTDIR=/usr/local/papi install

参照文献


高久雅生 (Takaku Masao)
http://masao.jpn.org/, tmasao@acm.org
$Id$