글쓴 분께서 용어와, 그에 걸맞는 그림을 넣어서 의미를 명확히 전달하시고자 했습니다. 한 땀 한 땀 정성들이셔서 비전공자인 저도 콘셉추얼 하게 이해할 수 있었어요. 링크를 꼭 들어가보아 주세요. '모두 빠르게 실행하거나, 빠르게 느끼도록 만들때 주로 사용하는 용어들'이라고 합니다.
1. 용어
동시성 / 병렬
비동기 / 논블로킹
선점형 / 비선점형
2. 운영체제와 프로세서
운영체제
프로세서
3. 코루틴과 파이버
파이버
코루틴
4. 제네레이터, Async/Await, 컨티뉴에이션
제네레이터
Async / Await
컨티뉴에이션
5. Promise와 Future
6. I/O 멀티플렉싱
멀티플렉싱
소켓
I/O 모델들
7. 링버퍼, 최신 I/O 모델, LMAX Distruptor
링버퍼
최신 I/O 모델
LMAX Disruptor
8. 동기화 프리미티브
필요성
스레드 안전
스핀락
뮤텍스
세마포어
STM
GIL
9. 다른 스크립트 언어의 접근법과 Reactor/Proactor 패턴
Ractor (루비)
Node.js (Reactor 패턴)
Proactor 패턴
10. CSP와 액터
CSP
액터
11. 그린 쓰레드, 고루틴 그리고 최신 비동기 런타임 기술들
그린 쓰레드
최신 CSP 런타임
최신 액터 런타임
12. 병렬
SIMD와 파이프라이닝
OpenMP & MPI
최신 병렬 기법
람다 아키텍처
13. GPU
파이프라인과 쉐이더
모니터
버퍼링
수직동기화
프레임 페이싱과 빔 레이싱
컴포지터
그래픽 API / 라이브러리
14. 기타 칩
개요
DSP
FPGA
TPU
15. 참고