MIRACLE
メールサービス申込 ユーザー登録 パートナー情報
お問い合わせ FAQ サイトマップ
MIRACLE LINUXの特長 製品紹介 サービス案内 購入 サポート 技術フォーラム

プロフィール

日本発のリナックス企業、ミラクル・リナックスで奮闘する社員のブログです。

ミラクル関連リンク

採用情報

サイト検索

最近のトラックバック

2008年3月

            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

« ソフトウェアの国際化 - その1 | メイン | 6才児のOpenOffice使用方法 »

Linux と NUMA その 0.2.1

前回実機まで確保して、このお題もようやく軌道に乗り始めたと思ったのも束の間、その後またもや時間が取れず、さらに昨夜、首を傷めたりなどしたもので(あんまり関係ないかも)、全くネタがありません。こんな時は諦めて、カーネルのソースツリーで grep 遊びなどをしてみましょうか。。。

お遊びとはいえ、一応 NUMA に関連が欲しいところ。安直に検索キーワードを NUMA (小文字も含む) としましょう。手もとの 2.6.19 カーネル (なぜか前回よりダウングレード...) のソースツリーで次のようなコマンドを実行してみました。

$ grep -cir numa . | grep -Ev ':0$' | \
sort -nrt : +1 | head -n 8

ソースファイル毎にヒット数を集計し、その上位8ファイルをランキングします。コマンドのオプションについては manpage を確認して下さい。
結果は以下の通りです。

./arch/powerpc/mm/numa.c:50
./arch/x86_64/mm/numa.c:48
./arch/x86_64/Kconfig:28
./mm/slab.c:27
./arch/i386/Kconfig:27
./fs/fuse/dir.c:23
./mm/mempolicy.c:22
./arch/x86_64/kernel/setup.c:20

首位は、僅差で powerpc のファイルが制しています。てっきり x86_64 だろうと予想してたのですが意外です。上位2つがどちらもメモリ管理のNUMA対応処理のアーキテクチャ固有部分と思われるところは納得です。Kconfig をスキップすると、第4位はメモリ管理の中でもスラブアロケータですね。第7位もやはりメモリ管理で、この mempolicy.c は CONFIG_NUMA が定義されている時のみビルドされますから NUMA のメモリ管理で重要なパーツの1つですね。
通りすぎてしまいましたが第6位はNUMAと全く関係無さそうなファイルです。中身を開いて確認してみると。。。なんと、numargs という変数名がヒットしていました。うーん、想定外です。
第8位の setup.c はブート時の x86_64 アーキテクチャ固有処理ですから、まぁまぁ想定内です。

以上、ざっと結果を眺めてみました。
これは、そもそも Linux カーネルの NUMA 対応について興味を始めて持った時にまず最初に実行してみるべき方法のひとつだったかもしれません。また、Documentation ディレクトリの中を grep するのも良い方法な気がします。はい、もーれつにそんな気がしてきました。

$ grep -ir numa Documentation/

結果は、皆さんで確認してみて下さい。

トラックバック

このページのトラックバックURL:
http://www.typepad.jp/t/trackback/4447/6747267

このページへのトラックバック一覧 Linux と NUMA その 0.2.1:

コメント

コメントを投稿

会社情報 採用情報 個人情報保護方針 商標等取り扱い事項 English
Copyright(c)2000-2006 MIRACLE LINUX CORPORATION. All Rights Reserved.