최대 1 분 소요


코어를 두 개, 세 개로 늘려주면 진짜 성능 향상이 될까? 암달의 법칙을 통해 알아보자!


▶ 암달의 법칙

  • 암달의 법칙(Amdahl’s law)이란?
    • 컴퓨터 시스템의 일부를 개선할 때 전체적으로 얼마만큼의 최대 성능 향상이 있는지 계산하는 데 사용된다.
    • 이 법칙에 따르면 싱글코어 대신 듀얼코어를 사용하더라도 CPU 내 부품들의 병목현상으로 CPU의 성능이 2배가 되진 않는다.


▷ 공식


▷ 특징

  • N(processing core)이 무한대이면 1/S로 수렴한다. (s에만 영향을 받는다.)
  • S(Serial,직렬)가 1이면 결과가 1이 된다. (n의 영향을 받지 않는다!!)
    • 즉, 이 수식은 N을 무한대로 보내면 N/(1-S)는 0이되어 코어를 아무리 늘려도 S(시리얼, 순차코드)에만 영향을 받는다는 것을 의미한다.
    • 순차코드는 코어가 백만 개 있어도 순서대로 처리하기 때문에 직렬 프로그램이 어쩔 수 없이 존재하는 한 아무리 병렬로 컴퓨터 성능을 향상시켜도 성능이 향상되는 데에 한계가 존재하는 것이다!!!




✏️문제

▷ 문제 1

순차 코드 부분의 비율이 25%이고, 병렬 코드 부분의 비율이 75%이다.

  그리고 프로세서가 1개에서 2개로 증가되었을 때, 속도가 얼마나 빨라졌겠는가?


▷ 문제 2

Amdahl의 법칙을 사용하여 (a) 2개의 처리 코어와 (b) 4개의 처리 코어에 대해 60%의 병렬 구성요소를 가진 응용 프로그램의 속도 향상 이득을 계산하라. 『 Operating System Concept 10th 연습문제 4.2번 』




📎참조

  • 성결대학교 강영명 교수님 운영체제 (2023)
  • https://taegyunwoo.github.io/os/OS_Thread
  • https://ko.wikipedia.org/wiki/%EC%95%94%EB%8B%AC%EC%9D%98_%EB%B2%95%EC%B9%99

태그: ,

카테고리:

업데이트:

댓글남기기