今月のPTTのおしらせです.どうも遅くなってすみません.さて今回は,東 工大の太田(mohta)氏の登場です.皆さんも news で御存知の方だと思います が,どのような話がきけるでしょうか.是非とも御参加ください.
(東急大井町線,目蒲線大岡山駅下車すぐ.建物がわからない方は,守衛さ んに聞いて下さい.)
発表者が最近試みている delayed write を用いた /tmp file system の高 速化手法についてデモを交えながら解説する.
食事:会場の直ぐそばにある学食が19時30分まで営業していますので,そ ちらを御利用ください.(学食でテイクアウトすることも可能です.)あと,駅 前にマクドナルドがあります.
113 文京区本郷 7-3-1 東京大学工学部計数工学科 岩崎英哉 03-812-2111 ext. 7411 iwasaki@wadalab.t.u-tokyo.ac.jp
話者と手塚 宏史(SONY CSL)が最近行なったUNIXにおける/tmpファイルシステ ムの高速化について紹介した。 /tmpファイルシステムの高速化の手法として、これまでメモリディスクが使わ れているが、メインメモリの一部を利用するため、ファイルシステムの最大容 量が極めて制限される、パワーダウン時に内容が完全に失われる、などの短所 があった。 一方、UNIXでのディスクへの書き込みは、クラッシュ後でも信頼性は高いがディ スク待ちの発生するsync write、ディスクへの転送はスケジュールされるので かなり信頼できるasync write、バッファキャッシュと呼ばれるメモリの部分 へコピーするだけで転送は後でゆっくり行なう信頼性の低いdelayed writeの 三種類が使い分けられている。 そこで、/tmpでは信頼性があまり要求されないことを考え、マウント オプショ ンとして、delayというものを追加し、すべての書き込みをdelayed writeで行 なうことを指定できるようにした。 実際に計測してみると、sync writeが頻発するような場合には、通常のディス クの30倍、メモリディスクの倍の速度が得られた。ただし、コンパイルのよう なCPUをよく使う仕事では改善は見られなかった。 delayオプションは、システムのインストールのように、途中でクラッシュし たら全部やり直してよいような場合にも有効である。 また、ファイルシステムのサイズはディスクの量によってしか制限されないし、 クラッシュ後でもデータが保存されている可能性も大きいなど、メモリディス クの問題点は解消できた。 太田 昌孝 mohta@cc.titech.ac.jp In article <5020@titcce.cc.titech.ac.jp> mohta@necom830.cc.titech.ac.jp (Masataka Ohta) writes: >そこで、/tmpでは信頼性があまり要求されないことを考え、マウント オプ >ションとして、delayというものを追加し、すべての書き込みをdelayed >writeで行なうことを指定できるようにした。 これ、 NEWS-OS 3.3 にある隠し?オプション -o async とは違うんですか? >実際に計測してみると、sync writeが頻発するような場合には、通常 >のディスクの30倍、メモリディスクの倍の速度が得られた。ただし、コンパイ >ルのようなCPUをよく使う仕事では改善は見られなかった。 ということなので、早速試してみました。 Filesystem kbytes used avail capacity Mounted on /dev/sd00a 7421 4231 2818 60% / /dev/sd04a 7429 9 6677 0% /a で(sd4はMO) $ cd /a; time sh -c 'dump 0f - / | restore rf -' だと、 default: 315.4 real 2.3 user 7.8 sys async: 96.9 real 2.4 user 6.7 sys sync: 458.3 real 2.0 user 6.9 sys と、3倍。 $ time cp /vmunix /a だと、 default: 0.7 real 0.0 user 0.3 sys async: 0.3 real 0.0 user 0.3 sys sync: 28.5 real 0.0 user 0.3 sys 10回連続させると、 default: 30.6 real 0.1 user 3.6 sys async: 4.7 real 0.0 user 3.3 sys sync: 294.9 real 0.1 user 4.7 sys 100回で、 default: 312.0 real 1.1 user 35.3 sys async: 36.1 real 1.0 user 31.2 sys と、8.5倍。 30倍にはいかない... -o async は async であって delay ではないのだろうか?? # d-partition を切り出すのは面倒だ... - - 樋口@陶山研.生物系.長岡技大 c31848@tansei.cc.u-tokyo.ac.jp