Please enable JavaScript.
Coggle requires JavaScript to display documents.
Parallel Processor from Client to Cloud (Hardware Categorization (vector…
Parallel Processor
from Client to Cloud
Hardware Categorization
SIMD: Single Instruction Multiple Data streams
MIMD: Multiple Instructions Multiple Data streams
SISD: Single Instruction Single Data stream
data-level parallelism에 적합
case, switch문 등에 부적합
SPMD: Single Program Multiple Data streams
vector architecture
pipelined execution unit 사용하여 순차적으로 수행
32 vector registers
reduce dynamic instruction bandwidth
reduce the frequency of pipeline hazards
Hardware Multithreading
한 thread가 stall되었을 때
다른 thread로 switching함으로써 utilization 증가
Fine-grained multithreading
명령어 이후에 이루어지는 switching
Coarse-grained multithreading
특정 event 발생 이후에 이루어지는 switching
Simultaneous multithreading (SMT)
여러 issue에 필요한 리소스를
동적으로 스케쥴링하여 utilize
multiple thread는 single process에서의
resource를 효과적으로 utilize할 수 있음
Multicore & shared memory
multiprocessor
single address space
multiprocessor
uniform memory access(UMA)
모든 word에 대한 latency가 동일한 multiprocessor
nonuniform memory access(NUMA)
word에 따라 memory access 시간이 다른 multiprocessor
synchronization
the process of coordinating bahavior of multiprocess
lock
데이터에 한 프로세서만 접근 가능하게 한 동기화 기법
공유 메모리 공간에 대한
simple parallel processing
processor load balancing
reduction: add partial sum
Graphics Processing Units
CPU의 supplement로 모든 task를 처리하지 않아도 됨
문제 해결 size는 수백MB~GB
multilevel cache 대신 hardware multithreading에 의존적
latency보다 bandwidth 지향적
여러개의 MIMD 수용 가능
Message-passing
multiprocessor
send message routine
private memory에서 다른 프로세서로
메시지를 보내는 루틴
message passing
프로세서간에 명시적으로 info 주고받는 것
receive message routine
private memory에서 다른 프로세서로부터
메시지를 받아오는 루틴
2014147526
현채연