タグ

ioに関するrsyudouのブックマーク (13)

  • naoyaのはてなダイアリー - 負荷とは何か

    調べごとをしたので blog に書いて理解を深めようのコーナーです。長文です。 Linux でシステム負荷を見る場合にお世話になるのが top や sar (sysstat パッケージに同梱されてるコマンド) などのツールです。 top ではシステム統計のスナップショットを見ることができます。今システムがどういう状態かなーというときは top が便利。 top - 08:16:54 up 3 days, 14:43, 6 users, load average: 0.18, 0.07, 0.03 Tasks: 43 total, 2 running, 41 sleeping, 0 stopped, 0 zombie Cpu(s): 18.2% us, 0.0% sy, 0.0% ni, 81.8% id, 0.0% wa, 0.0% hi, 0.0% si一方の sar では10分ごとのシ

    naoyaのはてなダイアリー - 負荷とは何か
  • naoyaのはてなダイアリー - Linuxのページキャッシュ

    世間では PHP が、Perl が、と盛り上がっているようですが空気を読まずまたカーネルの話です。今回はページキャッシュについて。 /dev/shm に参照系DBを持っていくと I/O 負荷が激減した件(当たり前だけど) - drk7jp で、ディスク上にあったファイルを /dev/shm (tmpfs) に移したら I/O 待ちがなくなって負荷がさがった、ということなんですがおそらくこれは tmpfs に置く必要はないかなと思います。Linux (に限らず他の OS もそうですが) にはディスクの内容を一度読んだらそれはカーネルがキャッシュして、二度目以降はメモリから読む機構 = ページキャッシュがあります。tmpfs にデータを載せることができた、ということは物理メモリの容量に収まるだけのデータサイズかと思うので、放っておけば該当のファイルの内容すべてがメモリ上にキャッシュされて io

    naoyaのはてなダイアリー - Linuxのページキャッシュ
  • 2.6 swapping behavior [LWN.net]

    There has, recently, been a new round of complaints about how the 2.6 kernel swaps out memory. Some users have been very vocal in their belief that, if they have sufficient physical memory, their applications should never be swapped out. These people get annoyed when they sit down at their display in the morning and find that their office suite or web browser is unresponsive, and stays that way fo

    rsyudou
    rsyudou 2009/02/04
    /proc/sys/vm/swappiness について
  • JF: Linux Kernel 2.6 Documentation: vm.txt

    JF: Linux Kernel 2.6 Documentation: /usr/src/linux/Documentation/sysctl/vm.txt sysctl/vm.txt /proc/sys/vm/* に関する文書 [プレインテキスト版] 原著作者: Rik van Riel <riel@nl.linux.org> 翻訳者: 川崎 貴彦 <takahiko(a)hakubi.co.jp> バージョン: 2.6.7 翻訳日時: 2004/07/29 /proc/sys/vm/* に関する文書 カーネルバージョン 2.2.10 (c) 1998, 1999, Rik van Riel <riel@nl.linux.org> 一般的な情報と法的宣言については、README を見てください。 ============================================

    rsyudou
    rsyudou 2009/02/04
    /proc/sys/vm/* に関する文書
  • DBサーバ向けLinuxチューニングを考える 〜 メモリオーバーコミット編 : DSAS開発者の部屋

    Cでプログラムを書いていて大量のメモリを確保したくなったとき、大抵は mallocを使うと思いますが、その際には戻り値がNULLかどうかを判断してエラー処理に飛ばすと思います。しかし、Linux のメモリ管理サブシステムには「メモリ・オーバーコミット」という機構があり、実装されているメモリ以上の領域を確保できてしまいます。 #include <stdio.h> #include <stdlib.h> int main() { int i; char *p; for(i=0;i<65536;i++){ p = (char *)malloc(65536); if(0 == (long)p){ break; } } printf("SIZE=%dMB\n",i*65536/1024/1024); return(0); } swapoff したメモリ 1G のマシンでこれを実行するとこんな感じにな

    DBサーバ向けLinuxチューニングを考える 〜 メモリオーバーコミット編 : DSAS開発者の部屋
    rsyudou
    rsyudou 2009/02/04
    物理メモリ以上の仮想メモリ作成を抑えて、メモリ不足時のカーネルによる強制killを抑制する。DBサーバで活用。
  • Linuxエンジニア日記 ページキャッシュの効率化

    メモリチューニングの一環としてページキャッシュの効率化を纏めてみます。 ちなみにLinuxは空きメモリをがしがしファイルI/O用のキャッシュとして利用しますが、 メモリはページ単位で分割管理されており、これらのキャッシュをページキャッシュと言います。 (これらは使われっぱなしではなく頻繁に割当て、解放が行われています) ではページキャッシュのチューニングとは何をするかと言うと、 要は無駄なページキャッシュを残さないようにしてあげればよいのです。 通常のI/O処理はライトバックで処理されているので、ページキャッシュに書き込まれた時点で プロセスには書き込み完了通知が返され、キャッシュ上のデータはバックグランドでディスクに 書き込まれていきます。 ライトバックしたキャッシュ上のデータは解放可能なデータとなりますので、 頻繁にライトバックをしてあげる事でキャッシュの解放サイクルを早める事が出来ま

    rsyudou
    rsyudou 2009/02/04
    ページキャッシュに使用するパラーメーターの解説
  • Open Tech Press | Linuxのスワップ処理を最適化するためのヒント

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

    Open Tech Press | Linuxのスワップ処理を最適化するためのヒント
  • Linuxファイルシステムを最適化する | OSDN Magazine

    前回は、一般的なLinuxファイルシステムをいくつか紹介し、それぞれの機能を見ていった。Linuxをすでにインストールしてあれば、パーティションの設定とファイルシステムの構成は済んでいるはずだが、この構成を変更したい場合もあるだろう。最適な方法を探ってみよう。 稿は、先日刊行された書籍『Linux Power Tools』からの抜粋である。 変更と一口に言っても、中には手間のかかるものもある。たとえば、ファイルシステムを変更するには、バックアップ、新規ファイルシステムの作成、ファイルのリストアという手順が必要になる。ただし、ext2fsからext3fsへの変更だけは例外で、非常に簡単に行うことができる。ファイルシステムを切り替えたら、ファイルシステム作成のさまざまなオプションを利用して、新しいファイルシステムのパフォーマンスを向上させることができる。その他の変更は、比較的簡単だ。ディスク

    Linuxファイルシステムを最適化する | OSDN Magazine
    rsyudou
    rsyudou 2007/06/25
  • Google File System(GFS)技術メモ - ありえるえりあ

    * 参照した論文 + http://labs.google.com/papers/gfs-sosp2003.pdf * 特徴 + 安いPC(OSはGNU/Linux)で分散ファイルシステムを構築しています(*注1)。 + PCは壊れるという前提で設計しています(*注2)。このため、分散システムを構成するノードが壊れた時、データが失われないことと、自動で復旧できることに主眼を置いています。 + ファイルシステムを利用する側(アプリ)に、ある程度の想定を求めています。任意の利用ケースに対してそこそこのパフォーマンスを出す(=平均的に良い性能)のではなく、特定の利用ケースで性能を発揮できるように設計しています。 + 性能を発揮できる利用ケースは次のようなケースです。 ++ 主にサイズの大きいファイルを扱う(*注3)。 ++ ファイルへの書き込みは追記(append)が多い(ファイルの一部分を何度

    rsyudou
    rsyudou 2006/10/18
    利用する側(アプリ)に、ある程度の想定を求めています。任意の利用ケースに対してそこそこのパフォーマンスを出す(=平均的に良い性能)のではなく、特定の利用ケースで性能を発揮できるように設計しています。
  • MRTGによるサーバ監視システムの構築

    ※1:「トラフィック量」「ディスクI/O」は特に閾値の設定はしていません。 ※2:MRTGでは必ず2つのパラメータを利用するため、第1、第2パラメータともhttpdのプロセス数としています。 ※3:ディスクの負荷状況を測るためディスクI/O状況を取得しますが、このデータはSNMP経由では取れないため、ssh経由で情報を取得します。 監視エージェント側の設定 トラフィック量、CPUのロードアベレージ、メモリ使用状況などは標準の状態でデータ取得が可能ですが、httpdのプロセス数やディスクの使用状況などを取得するにはエージェント側でSNMPの設定が必要になります。ここでは監視されるエージェント側に必要な設定を説明します。 httpdのプロセス数をSNMP経由で渡す設定 Apacheなど多くのソフトウェアでは、処理を高速化するために複数のデーモンプロセスを起動し、クライアントからの要求を並列に処

    MRTGによるサーバ監視システムの構築
    rsyudou
    rsyudou 2006/10/17
    ディスクioをとるスクリプトあり
  • internal22-index - Linux Kernel Documents Wiki - Linux Kernel Documents - OSDN

    トップページへ Linuxカーネルに関する技術情報を集めていくプロジェクトです。現在、Linuxカーネル2.6解読室の第2章までを公開中。 目次まえがき第0章 Linuxカーネルの構成要素 0.1 Linuxカーネルとは 0.2 Linuxカーネルのソースコード 0.3 Linuxカーネル機能の概要 0.4 カーネルプリミティブ 0.5 プロセス管理 0.6 メモリ管理 0.7 ファイルシステム 0.8 ネットワーク 0.9 プロセス間通信 0.10 Linuxカーネルの起動 0.11 Linuxカーネルの動作例 Part 1 カーネルプリミティブ第1章 プロセススケジューリング 1.1 マルチタスク 1.2 プロセスとは? 1.3 プロセス切り替え 1.4 プロセスディスパッチャの実装 1.5 プロセススケジューラ 1.6 プロセススケジューラの実装 1.7 事象の待ち合わせ 1.8 最

    internal22-index - Linux Kernel Documents Wiki - Linux Kernel Documents - OSDN
    rsyudou
    rsyudou 2006/10/17
    ページアウトの仕組み
  • ほえほえ LinuxファイルI/Oチューニング

    Linuxは私の使っている範囲ではファイルI/Oがパフォーマンスボトルネックになっていることが多い。で、チューニングの情報を集めてみるのだが、なかなか役立つ情報を入手できない。 決まって全般的なチューニングの進め方について述べ、次にボトルネックの調べ方について述べる。 最後にチューニングパラメータ設定手順のヒントだけを非常に簡単に挙げておわってしまう。いや、どこがボトルネックなのか最初に一発で分かればいいよ? でも全般的なチューニングの進め方でそうしたドキュメントが述べている通り、色々な可能性を繰り返しチューニングしながらつぶしていかなきゃいけないんだよね。 そのためには具体的なチューニングパラメータの設定手順がなきゃできないんだよね。それを教えろよ!それを! ということで、今回はLinuxファイルI/Oチューニングについて調べた。大きなファイルの書き込み(ex. cpコマンド)を行うと、

    rsyudou
    rsyudou 2006/10/14
    帯域を公平に分けようとするのと遅延をなくそうとするのと2.6では選択できるらしい。
  • Linuxシステム構築Tips - HDDベンチマーク手順+性能測定結果一覧(hdparm,dd,bonnie++)

    ハードディスクのIO性能を左右する要素 システムのパフォーマンスが思うように上がらない場合、ハードディスクのIO性能がボトルネックになっているケースが多々あります。下記の項目によってハードディスクのIO性能は左右されますので、性能面の問題が発生することを未然に防ぐという観点では、サーバ環境の設計段階でこららの項目を必ず計画、確認しておきたいところです。 ハードウェアRAID構成 ソフトウェアRAID構成 HDDの性能 (スピンドル回転数、シーク時間等) パーティションの位置 (内周部/外周部) チップセットの性能 RAIDコントローラー、SCSI/IDEアダプターの性能 BIOS設定 Linuxカーネル ドライバーのバージョン ファームウェアのバージョン ファイルシステム NFS設定 (NFSマウント領域の場合) HDDベンチマーク手順 システムの環境構築が完了した

    rsyudou
    rsyudou 2006/09/19
  • 1