토픽 120 / 122·비교표
병렬 처리 (Parallel Processing)
Flynn 분류: SISD vs SIMD vs MISD vs MIMD
| 항목 | SISD | SIMD | MISD | MIMD |
|---|
| 명령어/데이터 | 단일/단일 | 단일/다중 | 다중/단일 | 다중/다중 |
| 병렬성 | 순차 (파이프라인) | 데이터 병렬 | 드뭄 | 완전 병렬 |
| 적용 | 폰 노이만 기본 | GPU, SSE/AVX | TMR (결함허용) | 멀티코어 |
암달의 법칙 vs 구스타프손의 법칙
| 항목 | 암달의 법칙 | 구스타프손의 법칙 |
|---|
| 문제 크기 | 고정 | 프로세서 수에 따라 확장 |
| 수식 | 1/((1-P)+P/N) | N-(1-P)×(N-1) |
| 관점 | 비관적 (성능 상한 존재) | 현실적 (선형 증가) |
| 핵심 | 순차 부분이 상한 결정 | 문제 확장으로 병렬 효과 극대화 |
SMT vs 멀티코어
| 항목 | SMT (Hyper-Threading) | 멀티코어 |
|---|
| 코어 유형 | 논리 코어 (자원 공유) | 물리 코어 (독립 자원) |
| 추가 HW | 레지스터 세트만 추가 | 전체 코어 복제 |
| 성능 향상 | 20-30% | 거의 N배 (이상적) |
| 보안 | 타이밍 공격 취약 | 상대적 안전 |
SIMT vs SIMD vs MIMD
| 항목 | SIMT | SIMD | MIMD |
|---|
| 단위 | 워프 (32스레드) | 벡터 레지스터 | 독립 프로세서 |
| 분기 처리 | 가능 (Divergence 시 순차) | 불가 | 완전 독립 |
| PC | 스레드별 독립 | 단일 | 독립 |
| 적용 | GPU (CUDA) | CPU (AVX/NEON) | 멀티코어 |
big.LITTLE vs 동질 멀티코어
| 항목 | big.LITTLE | 동질 멀티코어 |
|---|
| 코어 구성 | 이기종 (고성능+저전력) | 동종 (동일 코어) |
| 전력 효율 | 높음 (동적 전환) | 보통 |
| 스케줄링 | 복잡 (코어 분류 필요) | 단순 (일관성) |
| 적용 | ARM 모바일, Intel P/E코어 | 서버, HPC |
뉴로모픽 vs GPU vs NPU vs 폰 노이만
| 항목 | 뉴로모픽 | GPU | NPU | 폰 노이만 |
|---|
| 연산 모델 | 스파이킹 (사건 구동) | 행렬 연산 (배치) | DNN 특화 | 순차 처리 |
| 전력 | 초저전력 (수 mW) | 고전력 | 저전력 | 중간 |
| 적용 | IoT, 센서, BCI | AI 학습, 렌더링 | AI 추론, 엣지 | 범용 컴퓨팅 |
Race Condition vs Deadlock vs Starvation
| 항목 | Race Condition | Deadlock | Starvation |
|---|
| 정의 | 실행 순서에 따라 결과 달라짐 | 순환 대기로 영구 블록 | 무한 대기 (자원 획득 불가) |
| 결과 | 비결정적 오류 | 시스템 정지 | 특정 프로세스 지연 |
| 해결 | 뮤텍스, 원자적 연산 | 자원 순서화, 타임아웃 | 에이징, 공정 스케줄링 |