パスワードを忘れた? アカウント作成
6723 story

BSD 系 OS と Linux のスケーラビリティについてのベンチマーク 53

ストーリー by Oliver
目でみる性能 部門より

BSD 曰く、 "本家 掲載された記事の中で FreeBSD、NetBSD、OpenBSD、Linux(2.4、2.6) の スケーラビリティに関するベンチマーク結果が発表されている。測定者の結論は以下の通りである。

Linux 2.6 は全てのベンチマークで O(1) のオーダーとなっており、素晴らしい性能である。もし、2.4 を使っているならすぐに 2.6 に乗りかえるほうがよい。
FreeBSD 5.1 は非常に良い性能とスケーラビリティを示している。*BSD はコードを共有しているので似たような性能を示すと思っていたが、実は違っていた。FreeBSD 5.1 は Linux 2.6 とほとんど変わらぬ性能を示している。

性能面では上記のような結果が一例として示されたことになる。しかし、OS の選択は性能だけで決まるものではないと思う。Linux にも *BSD にもそれぞれ独自の特徴があり、存在意義がある。今後もお互い影響し合い、切磋琢磨していって欲しいと思う。"

ソケット(ネットワーク)周りやfork()、mmap()やIOといった、まさしく日常的なパフォーマンスに影響する分野がベンチマークされている。Linux 2.6とFreeBSD 5.1の好成績とOpenBSDのネットワーク分野での弱さが際立っている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • socket() (スコア:3, 参考になる)

    by tada (5086) on 2003年10月20日 9時57分 (#417802)
    最初のグラフのsocket()の結果で、複数のOS
    (少なくとも、Linux 2.6、Linux 2.4、NetBSD 3.4)
    で見られる周期的なスパイクは何ですかね。
    周期は820くらいで きりが悪く、いずれも共通。

    Linux 2.6が上の方に並んでいて最悪じゃん、
    と思ったら、多勢が一番下を這っていたんですね。
    この二つの相関も謎。
  • by ninestars (5792) on 2003年10月20日 11時07分 (#417827) 日記
    Linux 2.6-test4(Debian/sid) と python2.3 で、簡単な thread のベンチマークを走らせた際なのですが、どうも 2.4.20 より数値がふるわないという現象がありました。
    python をソースからコンパイルしてみると、それなりの納得できる数字がでてきました。
    glibc などは sid そのままだったのですが、2.6 の性能をきちんと発揮させるには全てを 2.6 環境で構築し直す必要があるかも知れません。
  • ワラタ。 (スコア:2, おもしろおかしい)

    by KENN (3839) on 2003年10月20日 8時40分 (#417773) 日記

    The ultimate goal, however, is to demonstrate scalability by surviving a Slashdotting.
    <意訳> スラッシュドット効果で落ちたりしないことでスケーラビリティを証明するのが目標だ。

    本家の記事のリンク先にこの文章がある、というのがね。

    で、このサイトは結局何で動いてるんだろ?

  • なぜに 5-CURRENT (スコア:2, すばらしい洞察)

    by maho (9810) on 2003年10月20日 12時08分 (#417863)
    FreeBSD 4.8 を使ってやって欲しいですね...Linux 2.4 / 2.6 を出すのであれば。
    • by Anonymous Coward
      それは何故?
      kernel 2.6 に対して FreeBSD 5.x-CURRENT を比較対象にするのは
      別段不思議ではないと思いますが。

      # むしろ FreeBSD の方が有利のような…?
      • by Anonymous Coward
        同じように 2.4 に対して 4.x という意味だと思いますが。
        外してんのかな?
        • by maho (9810) on 2003年10月20日 13時34分 (#417909)
          その通りです。変な日本語ですいません。
          Linux 2.4 / 2.6 と比較するなら 4-STABLE / 5-CURRENT 両方でやって欲しいなぁということです(どちらが有利不利ということでなく)。
          親コメント
          • by Anonymous Coward
            CURRENT は全然追いかけてないので知らないのですが、5-CURRENT ってまだ 4-STABLE に比べて速度が遅いという話を以前聞いた覚えがあるので、4-STABLE での結果を見てみたいですね。遅くないとしてもどういう点がどれくらい 4-STABLE に対して進化したかもわかるでしょうし。
            • by maho (9810) on 2003年10月20日 19時39分 (#418046)
              OS News より.
              (FreeBSD Press No.17, p.14に和訳あり)
              M. Warner Losh の発言 [osnews.com](FreeBSD Press No.17, p.14に和訳あり)
              > Some people that are trying 5.0-current will notice things
              > are slower because more debug options are turned on by default.
              > We tried to clear most of them for the release, but maybe one or two snuchk through.
              だけれど、
              http://bulk.fefe.de/scalability/ によると
              > So I reluctantly upgraded the kernel to 5.1-CURRENT, which fixed the problems and proved to be a very stable kernel.
              http://bulk.fefe.de/scalability/
              なので debug option が残っているか残っていないかは解りません。
              親コメント
    • by Anonymous Coward
      小手先のスピードよりも高負荷時のレスポンスを求めているように見えますね。
      どうせ負荷が小さいなら多少Linuxより遅くたって裁けるわけだし(負荷が小さいから)。
      でも常に安定した速度を保っているLinuxにも感動しました。
  • by Anonymous Coward on 2003年10月20日 8時51分 (#417779)
    といわれても、これだけの観点ですぐに乗り換えるには ... ^_^;;

    まあ、2.6 系は試していきますが、本格的に切り替えるのは、2.6.10 くらいからかな?2.4のときは、2.4.6までSMPの動きがちょっとおかしかったし ...

    • by SteppingWind (2654) on 2003年10月20日 9時39分 (#417795)

      性能はともかくとして, 最近のATAng関連らしい(?)不具合が多発していてサーバでの使用には二の足をふみますね. Xeon+全SCSI構成みたいな鉄板ハードウェアなら話は別なのかもしれませんが.

      ほんの少し前にはfsckさえまともに通らず, 今でもshutdown時のバッファ書き出しが中途で失敗して毎回fsckがかかるありさまだし, ディスクIOの重い処理(例えばOOoあたりのports make)をやらせると不可思議な動作(ファイル操作コマンドが何故かこける)を起こすので, 修復用に4-stable環境の準備が欠かせません.

      個人的には5.2(STABLE)でクライアント用, 5.3ぐらいでサーバ用として人に勧められるレベルになるのかなと思っています.

      親コメント
      • 5.2(STABLE)?? (スコア:3, 参考になる)

        by tag (10007) on 2003年10月20日 13時26分 (#417903) 日記
        残念ながら、今年12月ごろに 5.2-RELEASE が出ても、5-CURRENT の まま継続し、5-STABLE にはならない予定です。 (参考) [srad.jp]
        それまでは、4-STABLE ブランチが続きます。このままのペース でいくと、来年2月か3月に 4.10-RELEASE が出るのではないかと いう予想もあります。

        僕の 5.2-RC3 の実験用サーバはいくつかのサービスと CVSUP、make world が問題無く動き、ダウンせずに連続運転中です。 しかし、安定に運用することが至上命題なら、5.2-RELEASE を 使わないで、4.8-RELEASE または 4.9-RELEASE を使うほうが良い でしょう。

        親コメント
      • Re:同様にFreeBSD5-currentも (スコア:1, すばらしい洞察)

        by Anonymous Coward on 2003年10月20日 9時52分 (#417799)
        そもそも current ってそんなものですよ。
        親コメント
        • by SteppingWind (2654) on 2003年10月20日 11時38分 (#417844)

          1年前(いや半年前かも)に現在の品質なら全く問題無いんですけど, 当初の予定では5.2でSTABLEブランチに移行ということだったので, そのタイミングを考慮すると問題かな? と. 今の時点なら, 普通はバグ潰しとチューニングに入っている時期なんで.

          私もATAng周りはソースやMLの議論を追っていないので理解していないのですが, この時期に大幅な変更を入れたということは, 従来のATAフレームワークだと新しいスケジューラ等の性能を生かしきれないという判断があったのだと思います. 実際, IDEディスクに高負荷がかかった場合に, IO競合していないはずの他のプロセスにも影響が出るという状態ですから, 特に最近のように大容量IDEディスクを使った小規模サーバ用途では大きな問題になるのは見えていました. ですから入れるなら, まだcurrentの今の時期にというのは分かるんですけど...

          親コメント
      • by Stealth (5277) on 2003年10月23日 19時47分 (#420095)

        とりあえず動かすにしても、IDE slave device 見つからねーぞ問題等が、解消されたといいつつもまったく解消されてないなど、いくつか (いくつも) 問題が残っています。

        使うにしても、cvsup ではなく cvs で拾って、手元のコードでは ATA 周りだけ ATAng 前に戻して使うなどしないと、少しきついかな、という感じです。

        それだけやってあげるだけで、かなり安定して利用できるので、そういう意味では悪くはないやり方だとは思っています。

        最後の SA が出たのは ATAng 導入後であるため、SA の出ていないバージョンの -current を IDE で構成されたマシンで利用するには、これしかないと考えます。

        親コメント
    • by Anonymous Coward on 2003年10月20日 15時42分 (#417948)
      次のターボは2.6.0-test7見たいですね。
      かなり無謀なきがするんですけど。
      MLD5が2.4.0-test5使って結構たたかれてたような記憶が。
      2.6って言えばMMUなしでも高速動作するという話もあるのでザウルス辺りは大きいんじゃないかと思うけど、既存の機種との互換性が無くなるしメモリの消費量が大きくなりそうな気がするので(あくまで推測)嵐の予感。
      2chのザウルススレ、やっと落ち着いてきたのに嵐の前の静けさなんだろうか?
      親コメント
    • Linux 2.6系への移行とはちょっと違うかもしれませんが、私の場合はFreeBSD 5.1への移行について悩んでいます。

      4.xから5.xへのメジャーバージョンアップですので、安全を取って、CVSupからの再構築ではなく、全面 再インストールで対応したほうが良いかと思うのですが、面倒くさそうで。
      • どうしても急がなきゃいけないということでなければ release になってからでも
        いいと思いますが。rc 周りとかも変わっているのでそろそろ練習始めておいた
        方がいいかなという気はしてますが。
  • fork()だけじゃなくて、vfork()もやんなきゃね。
  • PentiumIII 900MHzで測定した結果のようですが、最近のもっと速いマシンだとどうなんでしょうね。

    英語があまりわからないのですが、ベンチマークのページには、
    「ソフトウェアに重点をおいているので、遅いCPUとメモリとディスクを使ったよ」みたいなことが書かれていると思います。

    それはそれで正しいことだと思うんですが、仮に速いマシンで有意な差が出ないのだとしたら、
    あまり意味がないベンチマーク結果にも思えます。速度を追求するような場面では当然、速いマシンが使われるでしょうから。
    • by yamasa (17568) on 2003年10月21日 1時19分 (#418274)
      それよりも、シングルプロセッサマシン上でのベンチマークってのがちょっと残念です。

      FreeBSD5.x一番の目玉機能であるSMPngがどれだけの性能を示すか、
      Linuxも2.4→2.6でどれだけSMPの性能が上がったのか、ってのは
      多くの人が注目していることだと思うんですが。
      親コメント
      • linux 2.4と2.6の比較に関してはこないだのkernel Conferenceでやってました。資料 [osdn.co.jp]も出てるようです。(一番下)

        こっちはSMPのみのベンチだったので、
        たとえばファイルI/Oが向上したのは、SMP対策したからなのか、処理の無駄を無くしたからなのか不明で、言い換えると1CPUでも効果があるのか不明で、ちょっと不満でした。

        利用環境に応じて今回のと両方見て初めて意味があるかも。
        親コメント
    • 定数倍の違いはともかく、計算オーダーが違う点については、
      速いマシンに持っていっても結果は変わらない筈です。
      アルゴリズムが O(1) か O(N) か O(N^2) かっていうのは、
      マシンに依存しませんから。
      • >アルゴリズムが O(1) か O(N) か O(N^2) かっていうのは、
        >マシンに依存しませんから。

        そうはいかないかも。
        CPUが複数になることで、それまで定数と見積もっていた
        コストがCPU数に依存したコストになる可能性はありますからね。
  • by ktoreishi (1275) on 2003年10月25日 4時29分 (#421005)
    NetBSD-CURRENT、FreeBSD 4.9-RC3ほかの結果が追加 [bulk.fefe.de]されています。
  • by Anonymous Coward on 2003年10月20日 7時37分 (#417769)
    久々の良トピの余寒

    参考になりますた。
  • by Anonymous Coward on 2003年10月20日 10時26分 (#417815)
    リンク先みてみたけど、あんな点グラフじゃデータが読み取れない。
    OSごとに別グラフにまとめて欲しかったな。
typodupeerror

皆さんもソースを読むときに、行と行の間を読むような気持ちで見てほしい -- あるハッカー

読み込み中...