質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

UNIX

UNIXとは、AT&Tのベル研究所で開発されたコンピューター用のマルチユーザー・マルチタスクのオペレーションシステム(OS)です。政府や教育機関や研究所で広範囲に採用されています。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

意見交換

クローズ

3回答

589閲覧

linuxのtimeコマンドの結果をベンチマークとして使う場合、どうすればよいか

退会済みユーザー

退会済みユーザー

総合スコア0

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

UNIX

UNIXとは、AT&Tのベル研究所で開発されたコンピューター用のマルチユーザー・マルチタスクのオペレーションシステム(OS)です。政府や教育機関や研究所で広範囲に採用されています。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

0グッド

0クリップ

投稿2024/04/08 13:21

0

0

linuxのtimeコマンドについて

実行時間をベンチマークとする場合、timeコマンドで得られる情報の内どれを採用するのが正解だと思いますか?

背景、状況

いくつかのプログラムについて、それぞれの実行時間を比較して他者に報告します。そのためにlinuxのtimeコマンドを使う場合、timeコマンドで得られる情報の内どれを実行時間のベンチマークとして扱うべきでしょうか。
例えば、

real 0m0.289s
user 0m0.151s
sys 0m0.134s

と出力されたとき、real時間をベンチマークとするのか、それともuser時間+sys時間をベンチマークとするのか、どちらが適切でしょうか。
上記の例ですと両者にほとんど違いはありませんが、違いが存在する場合を想定して質問しています(あるいは、原理的に両者に違いはほとんど発生しないのでしょうか)。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

回答3

#1

hentaiman

総合スコア6426

投稿2024/04/08 17:15

ベンチマークの目的によりますがrealですね、real+sysが短くても結局ユーザーの体感はrealなので。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#2

ikedas

総合スコア4443

投稿2024/04/08 21:26

bash

1$ time sleep 1 2 3real 0m1.002s 4user 0m0.001s 5sys 0m0.000s

このように、CPUが使われていない時間はuser時間にもsys時間にも含まれません。例えばI/Oのための待ち時間などがこれにあたります。しかしI/Oなどはパフォーマンスに影響を与えますよね。ですから通常はreal時間をベンチマークの指標とします。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#3

otn

総合スコア85901

投稿2024/04/09 15:41

目的次第です。
そのプログラム単独での実行時間を知りたいなら、realだし、
沢山のプログラムが並行稼働している状態で、その1つのプログラムがCPUに与える負荷を知りたいなら、sys+userでしょう。システム全体に与える負荷ならさらにio使用率なども見ないといけない。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

最新の回答から1ヶ月経過したため この意見交換はクローズされました

意見をやりとりしたい話題がある場合は質問してみましょう!

質問する

関連した質問