📖 WIPIVERSE

🔍 현재 등록된 정보: 78,693건

시간적 멀티스레딩

시간적 멀티스레딩 (Temporal Multithreading)은 단일 처리 코어(CPU)에서 여러 스레드를 번갈아 가며 실행하는 병렬 처리 방식의 하나입니다. 각 스레드는 짧은 시간 간격(타임 슬라이스) 동안 실행된 후, 다른 스레드로 전환됩니다. 이러한 전환은 매우 빠르게 이루어지기 때문에 사용자에게는 여러 스레드가 동시에 실행되는 것처럼 보이게 됩니다.

시간적 멀티스레딩은 일반적으로 파이프라인이 비어 있거나, 데이터 의존성으로 인해 스레드가 대기해야 하는 경우에 효율성을 높이기 위해 사용됩니다. 예를 들어, 스레드가 메모리에서 데이터를 읽어오는 동안 다른 스레드로 전환하여 CPU가 유휴 상태로 남아있는 시간을 줄일 수 있습니다.

시간적 멀티스레딩은 하드웨어적인 지원이 필요하며, 대표적인 예로는 인텔의 하이퍼스레딩(Hyper-Threading) 기술이 있습니다. 하이퍼스레딩은 하나의 물리적 코어를 두 개의 논리적 코어로 인식하게 하여 운영체제가 두 개의 스레드를 동시에 실행할 수 있도록 합니다.

시간적 멀티스레딩은 컨텍스트 전환 오버헤드를 발생시키지만, 전체적인 시스템 처리량을 향상시키는 데 기여할 수 있습니다. 그러나 스레드 간의 자원 경합이 심한 경우에는 성능 향상이 제한적일 수 있습니다.