시간적 멀티스레딩
보이기
시간적 멀티스레딩(temporal multithreading)은 컴퓨터 프로세서 하드웨어에서 구현할 수 있는 두 가지 주요 멀티스레딩 형태 중 하나이며, 다른 하나는 동시 멀티스레딩이다. 두 가지 형식의 구별되는 차이점은 지정된 주기의 지정된 파이프라인 단계에서 실행할 수 있는 최대 동시 스레드 수이다. 시간적 멀티스레딩에서는 숫자가 1이지만 동시 멀티스레딩에서는 숫자가 1보다 크다. 일부 저자는 슈퍼스레딩(super-threading)이라는 용어를 동의어로 사용한다.[1]
동시 멀티스레딩과의 비교
[편집]어떤 형태로든 시간적 멀티스레딩은 여러 면에서 동시 멀티스레딩과 유사하다. 동시 프로세스에서와 마찬가지로 하드웨어는 구현된 동시 스레드당 완전한 상태 세트를 저장해야 한다. 또한 하드웨어는 특정 스레드가 자체적으로 프로세서 리소스를 갖고 있다는 환상을 유지해야 한다. 공정성 알고리즘은 두 가지 유형의 멀티스레딩 상황 모두에 포함되어 하나의 스레드가 프로세서 시간 및 리소스를 장악하지 못하도록 해야 한다.
시간적 멀티스레딩은 프로세서 열 출력이 낮다는 점에서 동시 멀티스레딩에 비해 장점이 있다. 그러나 한 번에 하나의 스레드만 실행할 수 있다.