• 検索結果がありません。

時間の測定

N/A
N/A
Protected

Academic year: 2021

シェア "時間の測定"

Copied!
48
0
0

読み込み中.... (全文を見る)

全文

(1)

コンピュータプラクティ スⅠ

時間の測定

水野嘉明

(2)

本日の内容

プログラムの性能評価

有効数字、測定精度

プログラム実行時間の測定

実験1

実験2、3、レポートは次回

2

(3)

プログラムの評価基準

性能 (performance)

機能 (function)

再利用性 (reusability)

安全性 (信頼性 reliability )

維持性 (保守性

serviceability,maintenan cebility )

3

(4)

性能の評価

実行時間

行数や命令数は実行時間と強い 相関

資源( resource : メモリやディ スク容量等)の消費量

4

(5)

物理量の測定

物理量の測定においては、目盛り の 10 分の 1 まで読む (アナロ

グ時)

5 10 1

5

測定値には必ず誤差がある

 12.3mm

の 「

.3

」はあまり確か

ではない

12.3±0.05

の範囲を示すと考え

12.3m m

m m

5

(6)

有効数字

この測定値を 「 12.3123mm

だ!」 と主張しても意味はない

5 10 1

5

12.3

」までが意味のある数字 = 有効数字

m m

測定の精度を考慮した上で特にその桁 の数字に書くだけの合理的根拠がある

こと 6

(7)

有効数字の表記

「 12 」 と 「 12.0 」 は異なる

12 ⇒ 12±0.5 (11.5 ~ 12.

5)

12.0 ⇒ 12.0±0.05 (11.95 ~ 1 2.05)

120 と書いてあったら?

科学表記

有効数字2桁

有効数字3桁

各々

1.2×10 1 1.20×10 1

1.20×10 2

(または

1.2×10 2

)と 表記する

7

(8)

有効数字の計算 (乗除)

乗除の結果の有効数字は、元の有効 桁数の小さな方と等しい

1.23×10

2

× 3.4×10

3

= 4.182×

10

5

= 4.2×10

5

有効数字2

8

(9)

有効数字の計算 (加減)

加減算は、桁を揃えて計算してから

、一番粗い(有効数字の末位が最高 の)項に有効数字の末位を揃える

1.23×10

2

+ 3.4×10

3

= 0.123×10

3

+ 3.4×10

3

=

0.1

×10

3

+ 3.4×10

3

= 3.5×10

3

9

(10)

有効数字の計算 (加減)

有効数字の桁数が、増えたり減った りすることがある

特に桁落ちに注意する

1.234×10

2

- 1.233×10

2

= 123.4 - 123.3 = 1×10

-1

有効数字4桁同士の演算

の結果が有効数字1桁に 10

(11)

有効数字の計算 (定数の扱 い)

測定値でない数値(定数など)は、

有効数字は無限桁数と考える

π 、√ 2 などは、有効数字より 1 桁 以上大きい桁数を使用する

練習:球の半径が 2.674 m(有効 数字 4桁)と計測されたとき、表

面積は

4×3.1416×2.674×2.674 = 89.85 (m )

=

11

(12)

有効数字の計算 (筆算)

筆算するときは、計算の途中では有 効数字よりも 1 桁分だけ桁数の大き な数で計算する

全桁計算し最後に丸める⇒面倒&ミス のもと、センスが悪い

毎回丸める⇒有効数字が落ちるので 不

12

(13)

有効数字の計算: 練習

次の計算をせよ

{(2.234×5.67815)+100.9049 }×4.60

2.234 × 5.67815 =

+ 100.9049 = × 4.60 =

13

(14)

練習 解説

不可な例

2.234 × 5.67815 = 12.6849871 12.68498710 + 100.9049 =

113.5898871

113.5898871 × 4.60 = 522.51348066

= 523 2.234 × 5.67815 = 12.68

12.68 + 100.9049 = 113.58 113.58 × 4.60 = 522

面倒&ミスのも と、センスが悪

精度が落ちる 14

(15)

練習 解説

2.234 × 5.67815 = 12.685

12.685 + 100.9049 = 113.590 113.590 × 4.60 = 523

本当は全桁数

4

桁の

12.68

だが、

1

桁増

やす

本当は小数第

2

位までの

113.59

であるが,

1

桁増

やす 15

(16)

測定精度

測定器により測定精度は異なる

最小目盛(分解能)が1 mm のデ ジタル式定規では、1 mm 未満の 長さは測れない

この定規で「 82mm 」と計測され た場合の有効数字は、2桁

16

(17)

測定精度

前記の 1mm 刻みの定規で 1mm 未 満の長さを測るには、拡大して

(または同じものを複数並べて)

測り、測定値を倍率で割る

プログラムの時間を計る場合も同 測定精度が不足する場合は、繰返

実行させて計測する

秒単位で 100 秒以上計測すれば 有効数字は

2桁

17

(18)

測定精度

・・・

100ヶ並べて 85

mm

らば1ヶの幅は 8

.

×

10

-1

mm

100回実行して 85秒なら 1回の実行時間は 8

.

×

10

-1

18

(19)

測定精度: 練習

1mm 刻みの定規で、44ヶ並べて 計測したところ、909 mm で

あった。1ヶの長さは何 mm か?

・・・

44ヶ :

909mm

答:

909/44 = 20.65909090909090

= 2.07×10

1

(mm)

19

(20)

平均

測定数値を平均しても、有効数字の 桁は増えない

誤差(ばらつき)をキャンセルする ことはできる

プログラムの実行時間のように測定 値が分解能より小さい場合は、繰り 返し実行させた時間を測定する

20

(21)

時間による性能評価

– バッチによる応答時間の 計測

測定の原理

1 . 開始時刻を測定

2 . 対象プログラムを、十分な 回数 実行する

3 . 終了時刻を測定

4 . ( 終了時刻ー開始時刻 ) を 回数で 割れば、一回あたりの実行時

21

(22)

時間による性能評価

– バッチによる応答時間の 計測

TIME コマンド (Window s)

現在時刻を分単位で表示する

time関数 (C言語)

秒単位の時刻を求める time() と ctime() を用いて、時刻を秒単

位で表示する 22

(23)

TIMEコマンド

コマンドプロンプト(CMD . EX E)にて使用

TIME/T

/Tがないと 時刻の設定

/Tがあると 分単位の表示

23

(24)

time()関数

time_t time(time_t *t)

システム時刻までの経過時間を t に設定する

経過時間 t は、万国標準時( U TC )の「 1970 1 1 日 0 時 0 分 0 秒」からの経過時間を秒単位 で表した数値

24

(25)

ctime()関数

char *ctime(const time_t *t)

経過時間

t

を現地時間に合わせ て日時の文字列に変換する

文字列の書式は次のようになり、

必ず 26 文字になる

[ 曜日 ] [ 月 ] [ ] [ : :

秒 ] [ 年 ]\n\0

25

(26)

演習1

現在時刻を秒単位で表示するプロ グラム second.exe を作成せよ

// second:

秒単位での日付・時刻を表示

// 2009 May

水野嘉明 (テキストの付録

C

を編集)

#include <stdio.h>

#include <time.h>

int main( void ) {

time_t t; //

現在時刻

time(&t); //

現在時刻を求める

printf("%s\n", ctime(&t)); //

日時の文字列に変換し表

return 0;

}

26

(27)

バッチファイル

複数のコマンドを記述しておき、一 括して実行する

テキストで記述する

エディタ(ノートパッド等)を使 用する

拡張子は .BAT

コマンドプロンプト( CMD) にて使

27

(28)

バッチファイル

@ECHO OFF

REM FOO.BAT

:時間 測定

REM 2008/11 MIZUNO

TIME /T

A.EXE > NUL TIME /T

PAUSE

以後のコマンド 表示しない

コメン 時刻表示

測定したいコマ ンド

>NUL

は出力を捨て 停止してキー入力待ち

28

(29)

バッチでの繰り返し

同じコマンドを100回繰り返す

には、

FOR /L %%I IN (1,1,100) DO A.EXE

開始値、刻み、終値

制御変数 実行する

コマンド 変数

%I

1

から

100

まで動かしながら、と

いう意味回数を増やすときは「

100

」を書き換える 29

(30)

バッチによる応答時間計測

計測しているのは、正確に言えば

応答時間

ロード時間 + 実行時間

さらに、計測用コマンド( TIME または second )の応答時間も含 まれるこれらについては、次回

30

(31)

演習2

second.exe を用いたバッチファイ ルにより、あるプログラムの応答 時間を測定した。繰返し回数

10

0回 で測定したところ、

24秒

という結果になった。

真の応答時間は、どのような範 囲にあると考えられるか

この測定で得られる有効数字の

桁数は、何桁か 31

(32)

演習2 解説

全体の( 100 回分の)時間は

32

0:0:00 0:01 0:02 0:23 0:24 0:25

23秒 25秒

どちらも、0:00~0:24 の2 つまり、全体時間は23秒超25秒4秒間未満

(33)

演習2 解説

したがって、応答時間の範囲は

有効数字は、

1桁

33

.

23秒 ~ 0

.

25

×

10

-1

(34)

実験1 プログラム全体の応答 時間

プログラム L06Y01 (付録 A) につ いて応答時間を TIME 、 second

( time 関数)のそれぞれの方法 で測定せよ

TIME 、 second の各方法での有 効数字桁数は、各々1桁、2桁 になるように繰返し回数を設定 する

二つの方法の応答時間を比較し、

考察せよ

34

(35)

実験1の注意事項

(1)

TIME と second では、繰り返し回 数は当然異なる

必要な有効数字桁数が出る回 ⇒ 同じになってはおかしい

TIME

分単位 有効数字1

10分程度

secon

d

秒単位 有効数字2

100秒程

35

※ 繰返し回数は、レポートに明記する こと

(36)

実験1の注意事項

(2)

プログラム L06Y01.EXE は、

サーバではなく ローカルマシン に置くこと

ネットワークの負荷によるばら つきが大きい

36

(37)

実験1の注意事項

(3)

実験レポートの章立ては、 R1 とは 異なる

章立ては、固定されたものでは ない

R2では、R1とは別の章立て を用いる ( CP 2以降で用いる もの)

37

(38)

新しい章立て

(39)

新しい章立て

章の構成

39

表紙

目次

1

章 目的

2

章 理論

3

章 実験方法

4

章 実験結果

5

章 考察と結論

6

章 課題

参考文献、付録

(40)

新しい章立て

「目的」

R1 の「序論」に相当する

次のようなことを記述する

実験の目的・意図

(結論と対応する事を忘れな い)

各実験の関係

レポートの全体像・構成 40

(41)

新しい章立て

「理論」

どのような理論あるいは原理に 基づき実験を行ったかを書く

各実験について、

理論と観察に基づき仮説を立て

何を対象に、どのような測定を

行なうかを書く 41

(42)

新しい章立て

「実験方法」

実験で使った道具(ツール、ソ フトウエアなど)を明示する

実験の手順、条件、環境を詳し

第3者が、

このレポートだけ

を読んで、同じ実験が間違い

なくできるように書く 42

(43)

新しい章立て

「実験結果」

各実験の結果を文章で書く

表やグラフを有効に利用する

観測した生の値を省略しないこ

四捨五入した値だけだと、妥 当性が検証できないことがあ

43

(44)

新しい章立て

考察と結論

考察は、今回の実験全体を通し て得られたこと(知見)を論理 的に導くこと

結論は、目的の章の内容と対応 させ、実験により分かったこと

を書く(感想を書かないこと) 44

(45)

新しい章立て

課題

課題は通常、文献の調査と考察 からなる

二つ以上の文献を調べ、参照・

引用する

考察は、必ず自分の言葉で書く

(自分の文章と引用は区別す

る、引用だけで終わらない) 45

(46)

実験を開始して下さ い

46

(47)

次回の予定

「性能評価」

応答時間と実行時間、起動時間

実験レポート R2

応答時間の測定

起動時間の測定

コマンドプロンプト

47

(48)

お疲れさまでした

参照

関連したドキュメント

旅行時間計測・提供システム225

要 旨 布地の透湿伎の測定として着用時に近い測定法として, 新 たにJIS 法の水温を体温に近づけ るように変化 させ た装置を提案し,

分解能 = 時間窓の逆数 確度 = 時間遅延の精度.

に回答している

3.2 せん断応力と液相流速の関係 図 3 に示したせん断応力と液相流速の経時変化の液 相流速の測定結果は測定機器の精度上,液相流速の

2 )。 リバウンドジャンプ時における滞空時間と SQ1RM の間には有意な相関関係が認められた (r=0.86,p&lt;0.01)(図

アントからリクエストが送信されると,pollOか

当初は,四国沖 ASUKA 線での流速計係留系回収および CTD/LADCP 観測から実施する予定であ った。しかし,台風