Upgrade to Pro — share decks privately, control downloads, hide ads and more …

timeコマンド

Satoru Takeuchi
PRO
June 22, 2022
72

 timeコマンド

以下動画のテキストです
https://youtu.be/_3ABqhVtV4I

Satoru Takeuchi
PRO

June 22, 2022
Tweet

More Decks by Satoru Takeuchi

Transcript

  1. timeコマンド
    Jun. 19th, 2022
    Satoru Takeuchi
    twitter: satoru_takeuchi

    View Slide

  2. timeコマンド
    ● 引数に与えたコマンドを実行し、CPU使用時間や終了までの所要時間を出力
    ● 出力の意味
    ○ real: コマンドの実行開始から終了までの所要時間
    ○ user: コマンド実行中にプロセスが使用した CPU時間
    ○ sys: コマンド実行中に、そのコマンドのためにカーネルが使用した CPU時間

    View Slide

  3. 例: 一定時間CPUを使い続けた後に終了
    プロセス
    CPU上で動
    作する処理
    時間
    real
    user
    開始
    終了

    View Slide

  4. 例: 一定時間システムコールを呼び続けた後に終了
    プロセス
    CPU上で動
    作する処理
    時間
    real
    user = (a)+(c)+(e)
    開始
    終了
    カーネル プロセス カーネル プロセス
    (a) (c) (e)
    (b) (d)
    sys = (b)+(d)

    View Slide

  5. 例: 一定時間CPUを使い続けた後に終了(別プロセスあり)
    プロセス
    CPU上で動
    作する処理
    時間
    real
    user = (a)+(b)+(c)
    開始
    終了
    別プロセス プロセス 別プロセス プロセス
    (a) (b) (c)

    View Slide

  6. 例: 起動直後に寝て起きたらすぐ終了
    CPU上で動
    作する処理
    時間
    real
    user = (a) + (b)
    開始
    終了
    アイドル
    (a) (b)

    View Slide

  7. 例: 複数コア上で一定時間CPUを使った後に終了
    プロセス
    CPU0上で動作
    する処理
    時間
    real
    user = (a) + (b)
    開始
    終了
    CPU1上で動作
    する処理
    プロセス
    生成 終了
    (a)
    (b)

    View Slide

  8. まとめ
    ● timeコマンドはプロセスの所要時間と、その間のCPU使用時間がわかる
    ● 横で別プロセスが動いていると結果が変わるので性能測定時は要注意
    ● 並行プログラミングによって性能向上できるかも

    View Slide