CPU 기능 효율성을 위해 캐시라는 개념이 도입되었다.
직접 RAM과 소통하면서 생기는 지연 등을 최소화하는데, 동기화를 하는 부분에서 dirty bits라는 개념이 등장한다.
어느 한 기능을 수행할 때, CPU의 효율적 가동을 위해 다음과 같이 명령어 Pipeline을 설계하였고 이를 통해 CPU의 능률이 향상된다.
하지만 이러한 Instruction Pipeline은 상호 연관성이 있는 명령어들의 충돌이나 조건부 명령어와 같은 위험을 가지고 있는데,
최근 사용되는 고급 CPU들은 예측 실행을 계산하고 Pipeline flush등을 통해 연산이 차질없이 진행되도록 한다.
사람들은 계속해서 분기 예측(Branch Prediction)에 대해 개발하고, 최근에는 그 예측도가 90%에 가깝도록 높아졌다고 한다.
지금까지 CPU 최적화를 통해 효율성을 높이는 요소들에 대해 알아보았다.
실질적으로 CPU의 기능을 더 증가시키는 것은 Core의 개수를 증가시키는 것으로,
듀얼코어, 쿼드코어 등이 거기서 파생되었고 많은 수의 Core를 연결시켜 슈퍼컴퓨터를 구비한 국가들도 있다.
댓글