タグ

ioに関するindicationのブックマーク (9)

  • Linux ネットワークパフォーマンスの機能強化 - Qiita

    ソフトウェア割り込みが偏る? Linuxを利用していて、ネットワーク負荷が高いサーバを運用していると、特定のCPU負荷が高くなっている事があるのですが、そのようなケースを経験されたことはないでしょうか? topでみると特定CPU(topを起動して1を押すとCPU単位で確認できる)の%si(software interrupt)がやたら高くなっている場合、それはネットワークの負荷が原因かも知れません。(実際のtopを貼り付けたかったのですが、持ち合わせがなかった・・・。)何も設定していない場合はネットワークの割り込みは特定のCPUで行われるため、ネットワークの割り込みに関連づいたCPUの%siが高くなります。ソフトウェア割り込みを確認するには、/proc/interruptsを確認しましょう。 # cat /proc/interrupts CPU0 CPU1 CPU2 CPU3 0: 129

    Linux ネットワークパフォーマンスの機能強化 - Qiita
  • プロセスのランキュー待ち時間とI/O待ち時間を調べる - ablog

    cat file|awk では実行時間 < CPU時間となっていますが、cat が I/O wait していないとは限りません。実行時間は単純に終了時間 - 開始時間で算出しますが、CPU時間はプロセスのCPU時間を getrusage システムコールで取得します。catのプロセスと awk のプロセスが並列実行されている期間があるため、実行時間 < CPU時間となっています。例えば、CPUバウンドな2プロセスがほぼ完全に並列実行されると、実行時間 * 2 ≒ CPU時間 となったりします。 (中略) 大きなテキストファイルをawkで処理するときにcatで投げ込むと速い理由 - ablog と書きましたが、プロセスの ランキュー待ち時間は /proc//sched の2列目(sched_info.run_delay) I/O待ち時間は /proc//schedstat の se.stati

    プロセスのランキュー待ち時間とI/O待ち時間を調べる - ablog
  • Fusion-ioがSanDiskによる買収合意へ。迅速なグローバル展開を優先させるためか

    PCIe接続のフラッシュストレージベンダとして急成長してきたFusion-ioを、フラッシュメモリ関連製品で知られる米SanDiskが買収することが発表されました。 買収価格は1.1ビリオンドル(約1100億円)。 News Release : SanDisk Signs Definitive Agreement to Acquire Fusion-io Fusion-ioは今月、新世代製品となるPCIeフラッシュストレージの新シリーズ「ioMemory Atomic Series」の発表と、「アプリケーションを速くすることにフォーカスする」という戦略を明確にしたばかりでした。 Fusion-ioは2005年にDavid Flynn氏とRick White氏が創業、2009年にはチーフサイエンティストとしてSteve Wozniac(スティーブ・ウォズニアック)氏が入社し、2011年にニュ

    Fusion-ioがSanDiskによる買収合意へ。迅速なグローバル展開を優先させるためか
    indication
    indication 2014/06/17
    どうなるんだろ、気になる
  • Linux、i/o待ちしているプロセスを見極める - goungoun技術系雑記帳

    vmstat 1 して、ボ〜っと眺めてると $ vmstat 1 procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 1 1 44 21620 140900 487244 0 0 0 444 270 195 0 0 95 5 procs の b が「割り込みを禁止しているプロセスの数」で これは 0 が望ましいわけですが。 0以外になったとき「誰が犯人だ!」と思うのです。 犯人探し 多分手抜きです。 ps で出力される STAT が D のプロセスが io待ち のプロセスである。 ということで、1秒周期で D のプロセスを出力するスクリプトがこれ。 (while true; do

  • マルチコアとネットワークスタックの高速化技法

    「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~ - ...VirtualTech Japan Inc.

    マルチコアとネットワークスタックの高速化技法
  • コンテキストスイッチの回数を調べる - Shohei Yoshida's Diary

    Starletのヘッダとボディを合わせて出力する閾値を変更してみる - Hateburo: kazeburo hatenablog この手の記事の話でコンテキストスイッチについて出てくることが あるけど、あまり数値が併記されているものがないように思えます。 その手のプロの人が言っているので、確かな情報だと思うのですが、 やはり数字を一緒に載せていただけるとより真実味が増すと思います。 プロセスのコンテキストスイッチ回数の確認方法(Linux) procfsから確認することができます % cat /proc/{目的のプロセスのPID}/status | grep ctxt voluntary_ctxt_switches: 145031 nonvoluntary_ctxt_switches: 13452自発的(voluntary)なコンテキストスイッチは、sched_yieldを呼び出した場合

    コンテキストスイッチの回数を調べる - Shohei Yoshida's Diary
    indication
    indication 2013/03/15
    組み込み時代に知りたかった
  • 第2回 ioDrive+MySQL勉強会 発表資料 | 外道父の匠

    GMOさんのところで、ioDrive+MySQLの発表をしてまいりました。 前回のFluentdから中4日で登壇という恐ロシアなスケジュールに真っ白な灰となっております。 1番手だったので基を抑えつつ尖り気味のところまで入れてしまったせいで、40分のところを53分使い、さらに質疑応答で1時間以上になり、他の発表者や参加者にご迷惑を、そしてピザを冷えさせて申し訳ありませんでした。が、資料自体はぼちぼちな出来になったと思いますのでサクッと公開しておきます。 事前にページを削りとってしまったり、早送りで説明してしまった部分があるので補足したいところなのですが、燃え尽き症候群中なのでMySQL関連は後で少しずつ書いていけたらと思います。 戦利品 Fusion-IO社のサンタクロースと言われる例の方が、登壇者にプレゼントをしてくれました。 ゴルフシャツですが Mサイズ Woman用で、微妙に形が女

    第2回 ioDrive+MySQL勉強会 発表資料 | 外道父の匠
    indication
    indication 2012/08/29
    パフォーマンス改善策がいろいろある。numaは気になる
  • dstatの万能感がハンパない - (ひ)メモ

    サーバーのリソースを見るにはグラフ化は重要ですが、推移ではなくリアルタイムな状況、例えば秒単位のスパイキーな負荷を見るには、サーバー上でvmstatやiostatなどの*statファミリーを叩く必要があります。 さて、vmstatはメモリの状況やブロック数単位のI/O状況は見られますが、バイト単位のI/O状況やネットワークの送信、受信バイト数を見ることはできません。 # vmstat 1 procs -----------memory---------- ---swap--- -----io----- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 3 1 0 4724956 355452 726532 0 0 54 484 3 3 1 0 99 0 0 2 0 0 47

    dstatの万能感がハンパない - (ひ)メモ
  • I/Oを多重化するためのシステムコール(select, poll, epoll, kqueue) - $shibayu36->blog;

    サーバ周りの勉強していると、たまにselectとかepollとか言葉が出てきて、理解できてなかったので調べてみた。 I/Oの多重化 例えばサーバ周りの実装を、特に何も考えずにやると、I/Oでブロッキングが発生し、一つのクライアントとしか通信できないということが起こります。これを解決するために fork threads I/Oの多重化 非同期I/O といった方法があります。 この中のI/Oの多重化を実装するためのシステムコールとして、select, poll, epoll, kqueueなどは実装されているようです。 少し調べてみると、次のような記述のような機能をそれぞれが実装するようです。 プログラムで複数のファイルディスクリプタを監視し、 一つ以上のファイルディスクリプタがある種の I/O 操作の 「ready (準備ができた)」状態 (例えば、読み込み可能になった状態) になるまで待つ

    I/Oを多重化するためのシステムコール(select, poll, epoll, kqueue) - $shibayu36->blog;
    indication
    indication 2012/01/02
    システムコールのまとめ
  • 1