LabHub

컴퓨터 구조 · CPU · 퀴즈

퀴즈: CPU

LabHub 에서 이어서 보기

문항 7개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. 파이프라인을 5단계로 나누면 무엇이 좋아지는가?

    1. 명령어 하나가 끝나는 데 걸리는 시간이 5분의 1이 된다
    2. 분기 예측이 필요 없어진다
    3. 단위 시간당 완료되는 명령어 수가 늘어난다
    4. 메모리 접근 횟수가 줄어든다
  2. 정렬된 배열을 순회하는 반복문이 정렬되지 않은 배열보다 훨씬 빠른 현상의 주된 원인은?

    1. 정렬된 데이터가 캐시에 더 잘 들어가서
    2. 정렬된 배열은 컴파일러가 벡터화하기 때문에
    3. 조건 분기의 결과가 규칙적이어서 분기 예측이 잘 맞아서
    4. 정렬 자체가 데이터를 메모리에 연속 배치하기 때문에
  3. 부동소수점 덧셈 명령어가 평소 몇 사이클이던 것이 갑자기 677사이클이 되는 상황이 보고되었다. 가장 가능성이 높은 원인은?

    1. CPU 클록이 자동으로 낮아졌다
    2. 컴파일러가 최적화를 끄고 컴파일했다
    3. 그 명령어가 캐시에 없어서 인출이 지연됐다
    4. 피연산자가 비정규 수여서 마이크로코드 보조 경로를 탔다
  4. MMIO 로 매핑된 장치 레지스터를 읽는 mov 명령어가 DRAM 읽기보다 수십만 배 느릴 수 있는 이유는?

    1. MMIO 는 항상 커널 모드 전환을 수반하기 때문
    2. 장치 드라이버가 매번 인터럽트를 발생시키기 때문
    3. mov 명령어가 MMIO 주소에서는 여러 명령어로 분해되어 실행되기 때문
    4. MMIO 주소는 캐시에 올라가지 않고, 읽기는 응답을 기다려야 하는 논포스티드 트랜잭션이기 때문
  5. IPC(사이클당 명령어 수)가 0.3 으로 낮게 측정되었다. 가장 먼저 의심할 것은?

    1. 메모리나 I/O 접근을 기다리며 파이프라인이 멈춰 있다
    2. CPU 클록이 낮게 설정되어 있다
    3. 명령어 개수가 너무 많다
    4. 컴파일러가 벡터 명령어를 쓰지 않았다
  6. 'CPU 사용률 100퍼센트'라는 모니터링 지표에 대한 설명으로 가장 정확한 것은?

    1. 연산 유닛이 쉬지 않고 계산하고 있다는 뜻이다
    2. 해당 코어가 비유휴 상태였다는 뜻이며, 연산 유닛은 메모리 지연 등으로 멈춰 있을 수 있다
    3. 클록이 최대 주파수로 동작 중이라는 뜻이다
    4. 그 프로세스가 CPU 바운드임을 확정하는 지표다
  7. 마이크로벤치마크 결과를 다른 사람과 공유할 때 함께 적어야 할 조건으로 가장 거리가 먼 것은?

    1. 캐시를 데운 상태인지 차가운 상태인지
    2. 같은 머신에서 동시에 돌던 다른 부하가 있었는지
    3. 입력 데이터의 성격(예: 비정규 수 포함 여부)
    4. 측정에 사용한 편집기와 셸 종류