공식만 알면 되는 쉬운 문제인 것 같긴한데, 확신이 없네여 ㅠ
문제.아래 두가지 시스템에서 벤치마크프로그램을 돌렸을 때 결과입니다.
프로세서 | 클록주파수 | 성능 | cpu시간 |
A | 5MHz | 1 MPIS | 12x초 |
B | 25MHz | 18 MPIS | x초 |
'cpu시간'은 A가 B보다 12배의 CPU시간이 더 필요하다는 것입니다.
여기서 문제는 ‘이 벤치마크 프로그램이 두 기계에서 처리되었을 때 기계코드의 명령어수의 상대크기는 얼마일까?’라는건데요(컴퓨터시스템구조론(9판) 2장 연습문제 2.12)
클록주파수는 나와있는대로 fA = 5*106 , fB = 25*106 이고 MPIS 유도하는 식에의해서 계산하면 CPIA = 5 , CPIB = 1.39 (셋째자리에서 반올림).
‘기계코드의 명령어수의 상대크기’를 물어봤으니까, 수행시간공식 T = Ic*CPI*τ 여기에 좌변에 각각 12x하고 x넣고, 우변에 각 CPI하고 주파수 넣어서 x에 대해 정리하고, 등식으로 대입해서 풀면 IcB = IcA*1.49 (셋째자리에서 반올림) 이렇게 나옵니다.(확신이 없어용 ㅠ )
제가 맞았다고 생각하면 ‘동시간에 B가 A보다 1.49배의 명령어를 처리하므로, A에서의 벤치마크 프로그램의 명령어 수 크기는 B에 비해 상대적으로 1.49배 크다’ 라고 하겠는데, B가 클록스피드는 5배빠르고, MPIS지수는 18배 높고, 처리시간도 12배 빠르고, CPI도 3배나 적은데 명령어규모는 1.49배라고 하니까, 뭔가 틀린 것 같은거에요.
제가 문제를 잘못이해하고있거나, 아니면 맞는데 이부분에 대한 내용을 잘 이해하지 못해서 틀린 느낌이 드는 것 같아... 질문해봅니다.