[OS] Multicore Processors, Simultaneous Multithreading, Evaluation

Ko Hyejung·2021년 10월 16일
0

Operating Systems

목록 보기
20/26

Multicore Processors

Recent trend is to place multiple cores on the same physical chips -> multicore processor.

최근에는 동일한 물리적 칩에 여러 개의 코어를 배치하는 추세 -> 저장 프로세서.

  • Each core has a register set to maintain its architectural state and thus appears to the OS to be a separate physical processor.

각 코어는 아키텍처 상태를 유지하기 위해 설정된 레지스터를 가지고 있으므로 OS에 별도의 물리적 프로세서로 나타납니다.

  • Systems with multicore processors are faster and consume less power than systems in which each processor has its own chip.

멀티코어 프로세서가 장착된 시스템은 각 프로세서가 자체 칩을 가지고 있는 시스템보다 더 빠르고 전력 소모도 적습니다.

Memory stall problem : When accessing memory, a processor spends a significant amount of time waiting for the data to be available such as cache miss.

메모리 스톨 문제 : 프로세서가 메모리에 액세스할 때 캐시 누락과 같은 데이터를 사용할 수 있도록 대기하는 데 상당한 시간이 걸립니다.

Simultaneous Multithreading (SMT)

To remedy memory stall problem, HW designers implemented multithreaded processor cores in which two (or more) HW threads are assigned to each core
-> Simultaneous multithreading (SMT)

메모리 스톨 문제를 해결하기 위해 HW 설계자는 다중 스레드 프로세서 코어를 구현하여 각 코어에 두 개 이상의 HW 스레드를 할당했습니다.
-> 동시 멀티스레딩(SMT)

(e.g. Intel’s hyper-threading technology – 2 threads per core)

From an OS perspective, each HW thread appears as a logical processor that is available (schedulable) to run a software thread.

OS 관점에서 각 HW 스레드는 소프트웨어 스레드를 실행하는 데 사용할 수 있는 논리 프로세서(schedulable)로 나타납니다.

Algorithm Evaluation

Deterministic modeling

Deterministic modeling takes a particular predetermined (static) workload and defines the performance of each algorithm for that workload (e.g. Gantt chart)

결정론적 모델링은 미리 결정된 특정 정적 워크로드를 사용하고 해당 워크로드에 대한 각 알고리즘의 성능을 정의합니다.

  • Simple and fast
  • Requires exact number for input, and its answers apply only to
    those cases

Queueing models

  • Queueing-network analysis
  • Little’s formula: n = λ * W
    n : average queue length
    λ : average arrival rate for new processes
    W : average waiting time in the queue

Simulations

  • Programming a model of the computer system.
  • Trace tape: monitor the system and record the sequence of events.

Implementation

  • Completely accurate way to evaluate a scheduling algorithm.
  • Puts a scheduling algorithm in the real system under real operating conditions (e.g., using Linux kernel or Pintos).

0개의 댓글