SIMD?
Categories:tech
SIMD?
발생
게임 관련해서 정보를 알아보다가 알게된 용어이다.
정의
SIMD
SIMD(Single Instruction, Multiple Data) 명령어는 CPU가 하나의 명령어로 여러 데이터를 동시에 처리할 수 있게 해 주는 방식이다.
e.g.,
- 일반적인 명령어는 한 번에 한 개의 데이터에 연산만 한다.
e.g., a = b + c → 두 수 더해서 결과 하나.
- SIMD 명령어는 한 번에 여러 개의 데이터 묶음(벡터)을 병렬로 연산한다.
e.g., [a1,a2,a3,a4] = [b1,b2,b3,b4] + [c1,c2,c3,c4] → 네 쌍을 동시에 더함.
즉, 루프를 네 번 도는 대신 한 번에 네 개 처리하는 효과가 있다.
사용
벡터/행렬 연산, 이미지 처리, 오디오 DSP, 암호화 알고리즘, 머신러닝 연산 등에서 큰 이득이 있어 주로 사용한다.
Day-4