X

동시 멀티스레딩(Simultaneous Multithreading)

I. 스레드의 병렬 실행, 동시 멀티스레딩

가. 동시 멀티스레딩(Simultaneous Multithreading)의 개념

  • 하드웨어 자원 사용률 극대화를 위해 스레드(Thread) 우선순위 선정하여 실행 효율을 개선한 병렬 실행 기술

나. 동시 멀티스레딩의 특징

효율성 개선 – 슈퍼스칼라 하드웨어 효율성(버블 제거)
논리적 개선 – 추가적 연산장치 없이 처리 스레드 증가
TLP – 성능 증가 위해 스레딩에 의존 병렬 처리
  • 동시 멀티스레딩 기술은 대표적으로 인텔의 하이퍼스레딩과 AMD의 클러스터 멀티스레딩 기술 존재

II. 동시 멀티스레딩의 기술 설명

가. 동시 멀티스레딩 기술 개념도

  • 프로세서의 자원을 두고 경합하지 않는 경우 동시 멀티스레딩으로 활용률 향상 가능

나. 동시 멀티스레딩 기술 동작 절차

구분 구성요소 설명
① 명령어 패치 – 명령어 캐시로부터 명령어 추출
② 명령어 혼합 – 다수 PC 이용하여 사이클 별 명령혼합
③ 명령어 버퍼저장 – 혼합 명령어들을 명령어 버퍼에 저장
④ 명령 디코더 처리 – 명령어 버퍼 내용 디코더에서 처리
  • 스레드가 같은 레지스터를 사용해도, 스레드 번호로 구분하므로 구별 가능함

 

III. 동시 멀티스레딩 기술의 한계점 및 대안

가. 동시 멀티스레딩 기술의 한계점

한계점 구성도 한계점 설명
두 개의 스레드가 하나의 연산 유닛을 두고 경합
– 1코어/1스레드 성능
– 게임 등 한정된 연산에 따른 반복 수행 케이스
– 한정된 연산 케이스를 예방/완화 방안이 필요

 

나. 동시 멀티스레딩 기술의 한계점에 따른 대안

구분 구성요소 설명
하드웨어
측면
– Bulldozer Architecture
– 자주 쓰이는 유닛을 2코어 분화
– 분화 유닛이 클러스터 방식 처리
– wide core + Hyperthreading
– 대용량 L2 캐시 활용 – 자원 공유(캐시, TLB)에 따른 캐시 미스로 인한 성능 저하 예방
소프트웨어
측면
– 페치(Fetch) 전략 – 패치 큐와 이슈 큐 명령어 수 기준, 적은 쓰레드에 우선권
– 이슈(Issue) 전략 – 전체 동작 유닛 내 명령어 수가 가장 적은 스레드에 우선권
  • 모의 시험 결과 프로세서 성능이 일반적으로 슈퍼스칼라 프로세서에 비해 2배 증가
Categories: CA/운영체제
도리:

View Comments (1)