====== 07 ブロックサイズとスループットについて ====== こちらも参考に[[01_linux:99_その他:91_転送量計算]] ブロックサイズが大きくなるとThroughput が大きくなり Latencyも大きくなる。 ディスクサブシステムにアクセスする際のデータ転送は、常にブロック単位で行われます 。 データ転送時のブロックサイズは、オペレーティングシステムやアプリケーションによって決まっており、 ユーザーが調整することはできません。 # dd if=/dev/zero of=a bs=1k count=10000000 10000000+0 records in 10000000+0 records out 10240000000 bytes (10 GB) copied, 25.7128 s, 398 MB/s # dd if=/dev/zero of=a bs=1M count=10000 10000+0 records in 10000+0 records out 10485760000 bytes (10 GB) copied, 13.3273 s, 787 MB/s 各種アプリケーションの典型的なアクセスパターン(富士通のホワイトペーパー参考) ^アプリケーション^アクセスパターン^ |オペレーティングシステム|ランダム、40%リード、60%ライト、ブロック≥ 4 KB| |ファイルコピー(SMB)|ランダム、50 %リード、50 %ライト、64 KB ブロック| |ファイルサーバ(SMB)|ランダム、67 %リード、33 %ライト、64 KB ブロック| |メールサーバ|ランダム、67 %リード、33 %ライト、8 KB ブロック| |データベース(トランザクション処理中)|ランダム、67%リード、33%ライト、8 KB ブロック| |Webサーバ|ランダム、100 %ライト、64 KB ブロック| |データベース(ログファイル)|シーケンシャル、100 %ライト、64 KB ブロック| |バックアップ|シーケンシャル、100 %ライト、64 KB ブロック| |リストア|シーケンシャル、100 %ライト、64 KB ブロック| |ビデオストリーミング|シーケンシャル、100 %リード、ブロック≥ 64 KB| ===== ブロックサイズについて ===== [[http://portaltan.hatenablog.com/entry/2015/11/27/131605]] ==== アプリケーションのブロックサイズ確認方法 ==== # strace -f -e write -p [プロセスID] straceの出力をgrepかける場合 # strace -f -e write -p [プロセスID] 2>&1 | grep Progress === オプション === |-f|trace child process| ===== 富士通のホワイトペーパー ===== [[http://jp.fujitsu.com/platform/server/primergy/performance/pdf/wp-basics-of-disk-io-performance-ww-ja.pdf|ディスクI/O パフォーマンスの基本 PDF]] {{tag>転送速度}}