タグ

tuningとkernelに関するkgbuのブックマーク (4)

  • HPCユーザが知っておきたい TCP/IPの話

    HPCユーザが知っておきたい TCP/IPの話 ∼クラスタ・グリッド環境の落とし穴∼ 産業技術総合研究所 情報技術研究部門 高野 了成 2009年5月29日 SACSIS2009チュートリアル HPCユーザとTCP/IP 2 限界までネットワーク性能を出したい! • グリッド環境で性能が出ないと悩んでませんか? • 例)長距離大容量データ転送(帯域 1 Gbps、  RTT 100ミリ秒)におけるチューニング • デフォルト設定だとスループットは240 Mbps ☹ • 各種チューニングにより940 Mbps ☺ (2) HPCユーザとTCP/IP 限界までネットワーク性能を出したい! • Ethernetで安価にPCクラスタを組めたが、性能も  それなりと割り切っていませんか? • 例)TCP/IPが苦手とする間欠通信の改善     (2秒ごとに10MBのデータの連続送信の繰り返し)

    kgbu
    kgbu 2009/07/10
    GbE時代のTCP/IPのチューニング:クラスタ環境でのボトルネックになりかねない
  • Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる

    Linux は fork で子プロセスを作成した場合、親の仮想メモリ空間の内容を子へコピーする必要があります。しかしまともに全空間をコピーしていたのでは fork のコストが高くなってしまいますし、子が親と同じようなプロセスとして動作し続ける場合は、内容の重複したページが多数できてしまい、効率がよくありません。 そこで、Linux の仮想メモリは、メモリ空間を舐めてコピーするのではなく、はじめは親子でメモリ領域を共有しておいて、書き込みがあった時点で、その書き込みのあったページだけを親子で個別に持つという仕組みでこの問題を回避します。Copy-On-Write (CoW) と呼ばれる戦略です。共有メモリページは、親子それぞれの仮想メモリ空間を同一の物理メモリにマッピングすることで実現されます。より詳しくは コピーオンライト - Wikipedia などを参照してください。 この CoW に

    Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる
    kgbu
    kgbu 2008/08/21
    /proc/PID/smapsで cleanな部分が親プロセスと共有、dirtyが増えてくると実メモリが別に割り当てられていく
  • Open Tech Press | Linuxのスワップ処理を最適化するためのヒント

    コンピュータのメモリ容量を超えるサイズのプログラムを実行する必要がある場合、最近のオペレーティングシステム(OS)のほとんどはスワップ処理と呼ばれる手法を用いる。これは、メモリ内データの大部分を一時的にハードディスクに格納しておき、必要なデータだけを物理メモリ空間に持ってくるというものだ。稿では、Linuxシステムにおけるスワップ処理の効率化とスワップ処理サブシステムのパフォーマンス最適化につながるテクニックを紹介する。 Linuxは、物理メモリの領域をページという単位に分割して処理する。スワップ処理とは、ハードディスク上にあらかじめ設定した空間(これをスワップ空間と呼ぶ)にページ単位でメモリ上のデータをコピーし、そのページのメモリ領域を解放する処理をいう。物理メモリとスワップ空間を合わせた容量が、仮想メモリとして利用可能になる。 スワップ処理が必要になる主な理由は2つある。1つは、物理

    Open Tech Press | Linuxのスワップ処理を最適化するためのヒント
    kgbu
    kgbu 2008/01/13
    swappinessなんていうパラメータ、あるんだ。
  • マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー

    ちょっと煽り気味のタイトルですが、CPU がマルチコアになり 2個、4個と増えていく中 Linux の負荷の指針になるロードアベレージをどう読むべきか、という話です。気になったところを少し調べたのでそのまとめを。 http://d.hatena.ne.jp/naoya/20070222/1172116665 でも書いたとおり、Linux のロードアベレージは「ロードアベレージは過去1分、5分、15分の間の実行待ちプロセス数の平均数 = 実行したくても他のプロセスが実行中で実行できないプロセスが平均で何個ぐらい存在してるか」を示す値です。ボトルネックが CPU、メモリ、ディスク等々どこにあるかは関係なく、仕事の実行までにどれぐらい待たされているかを示す値なので、システムのスループットを計測する指標の入り口になる値です。 このロードアベレージですが、実装を見るとランキュー(待ち行列)に溜まった

    マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー
  • 1