Skip to content

Instantly share code, notes, and snippets.

@oskimura
Last active February 17, 2016 03:39
Show Gist options
  • Select an option

  • Save oskimura/31329f05f941e83310ef to your computer and use it in GitHub Desktop.

Select an option

Save oskimura/31329f05f941e83310ef to your computer and use it in GitHub Desktop.

プログラミングチューニングのために

Linuxを前提にしています。

time system OSが要したCPU時間 real 実際にかかった時間 user プログラムが使ったCPU時間

ps ps auxww | grep プログラム %CPU cpu使用率 VSZ 仮想メモリ使用量 RSS 物理メモリ使用量 STAT プロセス状態 TIME cpu使用時間

vmstat

uptime ロードアベレージを出力します。

top システム全体の負荷 プロセス, CPU, メモリ, スワップの統計情報 などのプロセス情報一覧

top -p プロセスID とすることで実行プロセスの情報を表示し続けることができます。 NI … プロセスの相対優先度(0を基準とし、-20(優先度高) ~ 19(優先度低)で表している) VIRT … プロセスの仮想メモリーサイズ(スワップアウトしたメモリー使用量を加えたメモリー容量) RES … プロセスの使用しているメモリー容量(物理メモリー容量) SHR … プロセスの使用している共有メモリー容量 S … プロセスの状態

プロセスの状態は S … スリープ T … 停止中 D … 割り込み不可(sleep) N … ナイス値がプラスの状態 < … ナイス値がマイナスの状態 R … 実行中 Z … ゾンビ状態 W … スワップアウト状態

参考にしたサイト http://orebibou.com/2015/07/top%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%A7%E8%A6%9A%E3%81%88%E3%81%A6%E3%81%8A%E3%81%8D%E3%81%9F%E3%81%84%E4%BD%BF%E3%81%84%E6%96%B914%E5%80%8B/

sar cpu user nice system iowaitなどの平均が取得できる。 統計情報 sar -r

profile

strace プログラムが発行するシステムコールを出力することができます。 strace -p プロセスID とすることで実行プログラムのstaraceができます。 また strace -c でシステムコールの統計情報がでます。 strace -e システムコール で特定のシステムコールの情報だけを出力させることが出来ます。

strace -T でシステムコールの実行時間が出力されます。

参考 http://blog.livedoor.jp/sonots/archives/18193659.html http://www.intellilink.co.jp/article/column/oss11.html https://blogs.oracle.com/solairo/entry/ksplice_strace

/proc/pid /proc/cpu

/proc/meminfo

gdb gdb -p プロセスID とすることで実行中のプログラムのデバッグが出来ます。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment