Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Linux Super Page for alpha+sparc64+i386test

2 views
Skip to first unread message

nshimizu...@bosei.cc.u-tokai.ac.jp

unread,
Jul 22, 2002, 7:42:37 PM7/22/02
to
清水@東海大です。

スーパーページのカーネルパッチに実験に便利なように
sysctlとprocのインターフェイスを付け加えました。
(trial patch 020722 version)

sysctl -w super_page.nr=1

とすることで、ベースページだけに限定でき、

sparc64とalphaでは
sysctl -w super_page.nr=2 でベースページと64KBページ、
sysctl -w super_page.nr=3 でベースページと64KBページと512KBページ
sysctl -w super_page.nr=4 でベースページと64KBページと512KBページと4MBページ
を各々使い分けることができます。i386ではnr=1とnr=2のサポートで、
nr=2の時にはベースページと4MB(もしくはPAEでは2MB)のサポートになります。

たとえば、いつも確認に使っている1000x1000の
転置をAlpha(U1100-600MHz)でNRを変えながら流すと

NR store_stride(MB/S) load_stride(MB/S)
1 34.64 35.14
2 128.24 78.91
3 129.71 168.75
4 128.87 166.67

のようになりました。4MBページはこの問題には
大きすぎるのか性能が上がっていませんが、512KB
までは顕著な効果があるのが分かります。

/proc/super_page

は起動からその時までのスーパーページの予約と割り当ての
総数をプリントしますが、予約の方は数値がちょっとおかしい
のでデバグが必要となっています。
ダウングレードはまだカウントしていません。

-------- example of the cat /proc/super_page ------------
current nr: 4
order reserve allocate downgrade
0: 0 0 0
3: 451 319 0
6: 18 49 0
9: 0 20 0
---------------------------------------------------------


PS: i386はまだ動いていません。動くパッチはあるのですが、他のものと
互換性が少ないので、私が大きく構成を変更して(のんびり)デバグ中ですが、
4MBのアロケーションをしようとするとprintkも動かずフリーズする状態です。

---------------------------------->--------------------------->>
Naohiko Shimizu

Department of Communications Engineering,
School of Information Technology and Electronics, Tokai University
1117 Kitakaname Hiratsuka 259-1292 Japan
TEL.+81-463-58-1211(ext. 4084) FAX.+81-463-58-8320
http://shimizu-lab.dt.u-tokai.ac.jp/
<<--------------------------------<-----------------------------

0 new messages