본문 바로가기
이론/컴퓨터구조

컴퓨터의 성능

by ohojee 2023. 10. 31.

정의

  • 성능 = 실행속도
  • 실행속도? 응답시간과 처리율
    • 속도? 단위 시간 당 처리하는 명령어의 개수로 생각 ⇒ 실행시간(=응답시간)? 어떤 프로그램을 시작하고 나서 답이 나오기까지 걸리는 시간
    • 개인 사용자 입장: 응답시간(response time), 실행 시간(execution time)
    • 시스템 관리자 입장: 처리율(throughput), 대역폭(bandwidth)
    • but 사실상 현재 돌아가고 있는 시스템들은 시분할이 대부분이라 실행시간을 정확히 측정 불가(여러 동작들을 번갈아서 계속 실행하기에)
    • 입출력 장치를 사용하는 경우, 많은 delay 발생(네트워크 딜레이)
  • CPU 실행 시간
    • 프로그램을 수행하는 데 순수하게 사용된 시간(이론적인 시간)
    • 입출력이나 다른 프로그램의 실행시간은 포함 x
    • 동일한 문제를 해결하는 프로그램을 실행할 때 성능과 실행시간은 반비례

두 컴퓨터 m1과 m2 성능 비교

  • 컴퓨터 m2는 컴퓨터 m1보다 성능이 n배 좋다. = 컴퓨터 m1에 대해 컴퓨터 m2의 성능향상은 n이다. = 컴퓨터 m1에 대해 컴퓨터 m2의 성능 비율은 n이다.

암달의 법칙

  • 병렬화로 시스템의 일부분을 개선할 때 전체 시스템 성능이 얼마나 향상되는지 계산하는 방법
    • 병렬화? 병렬 프로세서, 어떤 기능을 처리하는 부분을 복수 개로 두는 것
    • 병렬화에 의한 성능향상은 시스템의 순차적인 부분에 필요한 시간으로 제한 ⇒ 시스템의 일부 기능을 향상시켜도 성능 향상이 되지 않는 부분에 의해 전체 시스템의 성능이 제한
    • 병렬화에 의한 시스템 성능 향상의 한계를 지적하는 데 사용.
  • 시스템의 일부분 𝑓를 병렬화 하여 성능을 𝑛배 향상, 나머지 부분 (1 − 𝑓)는 그대로 두었다고 가정, 성능 향상 전의 기계를 𝑀1, 성능이 향상된 기계를 𝑀2라 하면, 시스템 전체 성능 향상 𝑠는
  • 𝑀1의 실행시간을 𝑚이라 할 때, 𝑀2의 실행시간은

    ⇒ 시스템 전체 성능 향상 𝑠는

    → n이 무한히 병렬화해 성능향상 시킨다면?

    ⇒ 결과적으로 시스템 전체 성능 향상 𝑠는 개선되지 않은 부분의 역수


Uploaded by N2T

'이론 > 컴퓨터구조' 카테고리의 다른 글

명령어 집합  (0) 2023.11.03
CPU 성능 분석  (0) 2023.11.02
현대 컴퓨터의 발전  (0) 2023.10.30
컴파일러, 인터프리터, 컴퓨터구조  (0) 2023.10.12
하드웨어, 소프트웨어, 운영체제  (0) 2023.10.11

댓글