FreeBSD Daily Topics
2008年3月20日 Dragonfly BSDスケール,atacontrol(8)にスピンダウン機能,split(1)に分割数指定,ZFS mmap(2)修正他
heads-up
- FreeBSD Linux DragonFly
current - Kris Kennaway氏は,
Performance comparison of FreeBSD 7. 0 to FreeBSD 4. 11 and Dragonfly BSD 1. 12 (Mar 2008) においてFreeBSD 7と他のOSのベンチマーク結果を公開しています。Linux, NetBSDなどとの比較結果はこれまでの結果とほぼ同じで, FreeBSD 7が優れたマルチコアスケーラビリティを実現していることが確認できます。 同結果ではとくにDragonFly BSD 1.
8と1. 12との比較結果が重点的に紹介されており, DragonFly BSDがマルチコアに対してスケールしないこと, SMP機能を有効にするとロスのせいで性能が劣化すること, 分野によってはFreeBSD 4. 11よりも性能が劣化していることが指摘されています。 一方,
FreeBSDはまだ最適化されていないコードがあることがすでに認識され, 現在改良が続けられています。各種最適化が実装されたあとはさらにパフォーマンスが向上する見通しです。以前取り上げたようにDragonFly BSDの開発がマンパワー的に十分ではないことは認識されているため, この結果だけを持ってDFを疑問視することは問題がありますが, 現状で性能に大きな開きが存在していることは事実のようです。 今後どの段階でスケーラビリティが向上しはじめるかが,
DFにおける注目ポイントとなりそうです。
src
- sys/
compat/ linux
sys/i386/ linux
sys/amd64/ linux32 current - リアルCPUアフィニティセッティングプリミティブを使ってsched_
setaffinity()およびget_ setaffinity()が実装されました。 - atacontrol(8)
current - “spindown”
機能がatacontrol(8)に追加されました。同機能を活用すると, 数秒の間 (秒数は設定可能) リクエストが来なかった場合にスピンおよびディスクをダウンさせることができます。次のリクエストが来た段階でスピンは元に復帰します。リクエストが機能のきっかけになるため, たとえば “spindown” 機能を設定するには次のようにコマンドを実行するとされています。 spindown機能を設定する例:設定後にddでリクエストしているところがポイント
# atacontrol spindown ad10 5 # dd if=/dev/
ad10 of=/dev/ null count=1 “spindown” 機能をそもそも無効にしたい場合は, 次のようにタイムアウトを0に設定します。 spindown機能をそもそも無効にしたい場合の設定例
# atacontrol spindown ad10 0
- sys/
vm current - だいたい7年くらい前,
vm/ vm_ page. cファイルはvm/ vm_ contig. c, vm/ vm_ page. c, vm/ vm_ pageq. cの3つのファイルへ分割されました。vm/ vm_ pageq. cファイルは4つの短い関数があるだけで, しかもうち2つはvm/ vm_ page. cからのみ使われています。 FreeBSD committerであるAlan Cox氏は,
今後同ファイルが成長する見通しもないことから, vm/ vm_ pageq. cをvm/ vm_ page. cに統合すべき時期にきたとしてマージを実施しました。マージにもとないすでに使われていないPQ_ MAXCOUNTは削除され, vm_ pageq_ enqueue()はvm_ page_ enqueue()へと名称が変更されました。 - split(1)
current - バイトを指定してファイルを分割するのではなく,
分割する個数を指定して分割を実施するためのオプション'-n'がsplit(1)コマンドに追加されました。 - src/
sys/ contrib/ opensolaris/ uts/ common/ fs/ zfs/
zfs_vnops. c current - VMサブシステムの変更に対してZFSにおけるmmap(2)動作に関して,
修正が実施されました。ZFSをファイルシステムとして採用した場合, これまでの実装ではどうもmmap(2)の処理に問題があり, 場合によってはファイルの内容が変更されたりメタデータが破壊されることがあったようです。ZFSを使う場合mmap(2)を使うアプリケーションの利用は避けたほうが良いでしょう。問題が発生した場合には報国を実施してください。
バックナンバー
FreeBSD Daily Topics
- 2008年3月25日 Gnome 2.22.0登場 - HALでvideo4linux対応,ダイレクトリレンダリング有効,アップグレード手順,トラブルシューティング
- 2008年3月21日 FreeBSD 7 VMwareイメージ登場,6.3→7.0アップグレード,got BSD登場,[USENIXプロシーディングがオープンアクセスへ,PostgreSQL更新ほか
- 2008年3月20日 Dragonfly BSDスケール,atacontrol(8)にスピンダウン機能,split(1)に分割数指定,ZFS mmap(2)修正他
- 2008年3月19日 Google Summer of Code 2008受付開始,日本語LaTeX,Qt4更新,Logwatch/GeoServer登場他
- 2008年3月18日 AsiaBSDCon 2008オンライン登録開始,FreeBSD vs Linuxパイプ性能,FreeNAS/pfSense/PC-BSD/DesktopBSD 7ベースへ,BSDA DVD登場
- 2008年3月14日 実行するコアを指定するcpuset(1)登場,cp(1)に'-a'追加,Common Lisp WM Stumpwm登場,OpenOffice.org 3開発版登場,Grails登場ほか
- 2008年3月13日 KSE削除 M:Nスレッド実装に幕引き,malloc(3)ベンチマークFreeBSD vs Linux,vr(4)オーバーホール
- 2008年3月12日 FreeBSD vs Linuxベンチマーク,ULE CS 25%以上高速化,PC-BSD 1.5RC3登場,fifolog(1)導入,realpath(1)機能拡張,他多数
- 2008年3月11日 CVSMode対応csup(1),Attansic/Atheros L1 GB Ether age(4)開発,Intel 3945ABGワイヤレスLAN IEEE 802.11 wpi(4)ドライバ改善,XFree86-4削除他
- 2008年3月10日 新CPUトポロジ機能ULEマージ開始,pkg_add(1) -rオプション修正パッチ,7レビュー記事2つ,SoC卒業生のその後