일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- Qubit
- 쿠버네티스
- SpMM
- cloud
- quantum_computing
- jhDNN
- Compression
- convolution
- 클라우드
- kubernetes
- Semiconductor
- 양자역학의공준
- GPU
- FPGA
- flash_memory
- POD
- CUDA
- DRAM
- 반도체
- jhVM
- 딥러닝
- HA
- 반도체기초
- CuDNN
- C++
- sycl
- nvidia
- dnn
- stl
- deep_learning
- Today
- Total
목록MPI (2)
Computing
MPI, OpenMPI MPI(Message Passing Interface, 메세지 전달 인터페이스)는 여러 컴퓨터 간의 정보 교환을 기술하는 표준[1]이다. 여러 컴퓨터를 이용한 분산 및 병렬 처리 시, 컴퓨터간의 데이터 전송의 표준(message-passing library interface specification)이다. 즉 구체적인 프로토콜, 구현이 아닌 어떤 기능들이 제공되어야 하는 지를 나타내는 기술서 정도의 개념이다. MPI는 여러 컴퓨터에서 프로세스(process)들이 실행될 때, 그 프로세스들간의 통신을 위해 사용된다. Fig 1.은 4개의 컴퓨터(노드, node)에서 실행되는 MPI 프로그램 예제를 보여준다. mpirun을 통해 ./myapp 프로그램을 실행하는 4개의 프로세스가 생성..
Collective communication Collective operations, inter-process communication이라고도 하는데, multiple processes가 모두가 참여하는 통신(데이터를 전달) 패턴[1]을 의미한다. 즉 n개의 process가 있을 때, 1:1로 데이터를 전송하는 것이 아닌 하나의 데이터를 n개의 processes에게 나눠주거나 n개의 processes의 데이터를 하나로 모으는, 집단이 참여하는 기본 통신 패턴을 의미한다. SPMD 프로그램(data parallelism을 활용하는 프로그램)에서는 한 문제를 여러 개의 process가 나눠서 해결한다. 예를 들어, 한 덩어리의 데이터를 n개의 process에게 나눠주거나, 문제를 푸는 과정에서 서로 간에 데..