본문 바로가기
기타 프로그래밍/[이론] 컴퓨터시스템구조론

컴퓨터시스템구조론 | CHAPTER 2 복습문제 | 컴퓨터 시스템의 최적화를 위한 성능 평가

by YUNI Heo 2022. 11. 14.
반응형

 

✅ CHAPTER 2 성능 문제

💡 1. 클록 속도와 논리 밀도가 증가할 때 발생하는 장애 요인들을 열거하고 간략하게 설명하라

  • 전압(Voltage) 강하: 논리 회로에 필요한 전압이 감소하여 회로가 정상적으로 작동하지 못하거나 데이터의 손실이 발생할 수 있다.
  • 열(Heat): 논리 회로의 크기는 축소되기 때문에 발생하는 열의 양도 증가하게 되어 논리 회로의 안정성을 악화시키고, 장기간에 걸쳐 손상을 입힐 수 있다.
  • 오차(Reliability): 논리 회로가 더욱 복잡해지고, 따라서 더 많은 오류가 발생할 가능성이 있다.
  • 감도(Sensitivity): 논리 회로의 작동에 필요한 전압이 낮아지면, 외부에서 발생하는 잡음이나 전자기장의 영향을 더욱 민감하게 받게 된다. 
  • 설계 복잡도(Complexity): 설계가 더욱 복잡해지기 때문에, 오류의 발생 확률도 높아진다. 

 

💡 2. 캐시 사용의 이점들은 무엇인가?

  • 빠른 데이터 액세스 속도: CPU가 빈번하게 액세스 하는 데이터를 더 빠르게 제공함으로써 메인 메모리보다 빠른 액세스 속도를 제공한다.
  • 전력 절약: 캐시에서 데이터를 액세스 하는 것은 메인 메모리에서 데이터를 액세스 하는 것보다 적은 전력을 소모하므로 전력을 절약할 수 있다.
  • 응답 시간 개선: 자주 액세스하는 데이터를 저장하므로 응답 시간을 개선할 수 있다.
  • 성능 향상: CPU와 메인 메모리 사이에 위치하므로, 캐시를 통해 데이터를 액세스 하면 메인 메모리에서 데이터를 액세스 하는 것보다 훨씬 빠르게 데이터를 처리할 수 있어서 성능을 향상할 수 있다.
  • 비용 절감:  메인 메모리보다 작은 용량의 메모리를 사용하므로 비용이 적게 들어간다.
  • 멀티 프로세서 환경에서의 성능 향상: 멀티 프로세서 시스템에서 캐시는 각각의 CPU 코어에 대해 개별적으로 존재하므로, 각각의 CPU 코어가 독립적으로 캐시를 사용하여 성능 향상을 가져올 수 있다.

 

💡 3. 프로세서 속도를 높이는 데 사용되는 몇 가지 방법들을 간략하게 설명하라

  • 클록 속도 증가: 프로세서의 클록 속도를 높인다.
  • 캐시 메모리 추가: 프로세서와 주 메모리 사이에 작은 용량의 고속 캐시 메모리를 추가함으로써 빠른 데이터 액세스가 가능해진다.
  • 멀티프로세서(Multi-Processor) 시스템: 하나의 시스템에 여러 개의 프로세서 코어를 추가하여 병렬 처리를 향상한다.
  • 하드웨어 가속기(Hardware Accelerator): CPU가 처리하기 어려운 특정 작업을 전용 하드웨어 가속기에 할당한다.
  • 파이프라이닝(Pipelining): CPU가 여러 단계로 처리되는 작업을 분할하여 병렬로 처리하게 한다.
  • SIMD 명령어 집합 추가: 하나의 명령어로 여러 개의 데이터를 병렬로 처리할 수 있는 명령어 집합을 추가한다.
  • 메모리 인터리빙(Memory Interleaving): 메인 메모리를 더 작은 블록으로 나누어 병렬로 액세스 할 수 있도록 하여 메모리 대역폭을 확장한다.

 

💡 4. 암달의 법칙의 특징을 간략하게 설명하라

  • 병렬화를 통해 성능을 향상할 수 있다.
  • 병렬화 비율(Parallelization Ratio) 순차적인 부분에 의해 한계가 있다.
  • 순차적인 부분을 최적화하는 것도 중요하다.
  • 병렬화 비율과 CPU 코어의 개수에 따라 성능 향상을 예측할 수 있다.
  • 성능 향상을 위해 최적의 병렬화 비율과 CPU 코어 개수를 찾는 것이 중요하다.

 

💡 5. 클록 율(clock rate)을 정의하라. 이것은 클록 속도와 유사한가?

  • 클록 율(clock rate)은 시스템의 기본적인 타이밍 신호(fundamental timing signal)의 주기이다.
  • 클록 율(clock rate) 시스템에서 동작하는 CPU, 버스, 메모리 등의 주요 구성 요소의 동작 속도를 결정한다.
  • 클록 속도와 유사한 개념이지만 미세 아키텍처 및 파이프라인 딜레이 등 다양한 요인으로 인해 두 개념은 다를 수 있다.

 

💡 6. MIPS와 MFLOPS를 정의하라

  • 컴퓨터의 처리 속도를 측정하는 지표이다.
  • MIPS(Million Instructions Per Second): 1초 동안수행한 명령어의 개수를 백만으로 나눈 값으로 한 번에 수행할 수 있는 명령어의 양과 처리 속도를 통해 평가한다.
  • MFLOPS(Million Floating-point Operations Per Second): 1초 동안 수행한 부동 소수점 연산의 개수를 백만으로 나눈 값으로 컴퓨터가 고도의 수학 연산을 처리하는 속도를 나타낸다.

 

💡 7. 어떤 때에 조화 평균이 시스템의 적절한 측정값이 되는가?

  • 속도와 시간에 관련된 측정값을 구하는 경우
  • 비율이나 비중과 관련된 측정값을 구하는 경우
  • 여러 개의 값들이 상호작용하는 경우

 

💡 8. 리틀의 법칙과 관련된 각 변수를 설명하라

  • 처리율 = 송신율 × 대기 시간
  • 처리율(Utilization): 시스템 자원이 작업을 처리하는 비율
  • 송신율(Throughput): 단위 시간당 송신된 데이터의 양
  • 대기 시간(Response Time): 작업이 요청된 후 완료될 때까지 걸리는 시간

 

💡 9. SPEC 벤치마크란 무엇인가?

  • 컴퓨터 시스템성능을 측정하는 벤치마크이다.
  • 서로 다른 시스템 간의 성능 비교, 시스템 개발 및 최적화에 활용한다.

 

💡 10. SPEC 벤치마크들을 이용하여 시스템의 성능을 평가하는 동안에, 각 프로그램을 세 번씩 컴파일과 실행을 하는 이유는 무엇인가?

  • 정확한 측정을 위해
  • 오차를 줄이기 위해
  • 일관된 결과를 얻기 위해
반응형