CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): sang (Grid)
날 짜 (Date): 2005년 8월  4일 목요일 오후 02시 14분 21초
제 목(Title): Re: 계산시간 측정?



100만번이라는건 예를 들다보니 그냥 쓰신거 같고.. 또, cache나 branch prediction
영향은 무시(^^)할수 있을만큼 작다고 가정할 수 있기 때문에 아래 나열한 것들만
신경쓰면 큰 문제가 없지 않을까 싶네요.

1. page fault는 무조건 막아야 함. 따라서, warm-up 시켜주는 단계가 선행되어야 함.
2. 적당히 큰 loop counter를 잡아서 context switching이 발생하지 않도록 해야 함.
   측정하고자 하는 routine에 따라 다르겠지만 1천번 정도면 무난? 
3. 시간 측정 함수의 overhead를 무시할 수 있느냐 없느냐에 대한 판단이 필요함. 

my_routine(); // warm-up phase

o1 = measure_time();
g = measure_time();
o2 = measure_time();
overhead = o2 - o1;

t1 = measure_time();
loop k, my_routine();
t2 = measure_time();

time = (t2 - t1 - overhead)/k;

[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.