タグ

performanceに関するhayasakatakayaのブックマーク (2)

  • Part4 IOPSを理解する

    ディスク単体の性能を,1秒当たりに処理できるI/O数で示したものが「IOPS」である。DBサーバーなど頻ぱんにディスクにアクセスする用途では,IOPSが高いディスクほど性能が良い データ転送時間には,ディスクから磁気ヘッドがデータを読み書きする平均メディア転送速度やインタフェースの転送速度,ドライブの信号処理とデータ転送を制御するCPUの処理時間などが加味される。 実は,これらの値は公開されていないため,正確なデータ転送時間は分からない。ただし,4Kバイトや16Kバイトなど,OSの読み書き単位程度の大きさであれば,数10マイクロ秒から長くても1ミリ秒程度であり,誤差の範囲である。 仮に,4Kバイトのデータを書き込むために必要なデータ転送時間を1ミリ秒とする。平均アクセス時間6ミリ秒のディスクにデータを4Kバイト単位で書き込むとする。このディスクのIOPSは,「1/(6ミリ秒+1ミリ秒)=1

    Part4 IOPSを理解する
  • [4]「きたーー!!」、ついに目標性能を達成

    リクルートの中古車情報サイト「カーセンサーnet」を全面リニューアルした体験を基に、大規模サイトの性能改善作業の実態をレポートする。第1回、第2回で行ったNFSとApacheの設定変更、PHPアプリケーションの見直しによって、性能は劇的に向上した。しかしその後、どうしても性能が伸びない。第3回での調査で、Linuxカーネルに原因があるらしいことがわかってきた。 カーネルソースがあるディレクトリーに移動して、変数名(kernel_sem)を含むファイルを調べた。すると「lib/kernel_lock.c」というファイルの中で「kernel_sem」が定義されていた。冒頭を読むと、「This is the traditional BKL - big kernel lock」とある。直訳すれば「巨大なカーネルロック」。これは何なのだろうか。コメントを追っていくと、「古い方式」であり「新しいコード

    [4]「きたーー!!」、ついに目標性能を達成
  • 1