최근에 병렬 도메인에서 작업하면서 "수직 병렬 처리"와 "수평 병렬 처리"라는 두 가지 용어가 있음을 알게되었습니다. 어떤 사람들은 openmp (공유 메모리 병렬 처리)를 수직으로, mpi (분산 메모리 병렬 처리)는 수평 병렬 처리라고 말합니다. 왜이 용어들이 그렇게 부르는지? 나는 이유를 얻지 못하고있다. 그들을 그렇게 부르는 용어일까요?수직 및 수평 병렬 처리
답변
이 용어는 프로세스 또는 시스템이 구별없이 둘 다 사용하는 경우가 많으므로 널리 사용되는 것 같지 않습니다. 이 개념은 MPI 나 openmp의 영역보다 훨씬 포괄적 인 매우 일반적인 개념입니다.
수직 병렬 처리는 시스템이 여러 다른 장치를 동시에 사용하는 능력입니다. 예를 들어, 프로그램은 많은 계산을 수행하는 쓰레드를 가질 수 있고, 다른 하나는 DB 질의를 처리하고, 세 번째는 IO를 처리 할 수 있습니다. 대부분의 운영 체제는 자연스럽게이 교수를 노출합니다.
수평 병렬 처리는 단일 장치가 사용되거나 여러 유사한 데이터 항목에서 작업이 실행될 때 발생합니다. 이것은 같은 코드에서 여러 스레드를 실행할 때 발생하는 병렬 처리의 일종이지만 다른 데이터를 사용합니다. 소프트웨어 세계에서
는 흥미로운 예를 실제로지도를 모두 사용하는 알고리즘을 줄일 수 있습니다 :
데이터를 분할 처리를 위해 여러 CPU를 건너 흩어져 때 수평 병렬 처리,지도 단계에서 발생,
수직 병렬 맵 사이에 발생하는 데이터는 먼저 감소 스레드가 그 스레드지도 처리 청크로 분할하고, 축적 단계를 줄일
마찬가지로 하드웨어 업계에서 슈퍼 스칼라 파이프 라인 CPU는 파이프 라이닝이 수직 병렬화의 특정 인스턴스 인 두 가지 변형을 사용합니다 (지도/축소 스테이징과 마찬가지로 몇 가지 단계가 더 있음).
이 용어를 사용하는 이유는 공급망과 함께 사용되는 것과 같은 이유 때문일 수 있습니다. 값은 여러 단계 또는 처리 수준을 연결하여 생성됩니다. 최종 제품은 각 노드가 중간 단계 또는 단계의 결과 인 추상 트리 구조의 루트 (아래에서 위로) 또는 종속성 (위에서 아래로)으로 볼 수 있습니다. 공급 체인과 계산 사이의 유추를 쉽게 볼 수 있습니다.
- 1. 수직 및 수평 테이블
- 2. 안드로이드 장치에서 수평 및 수직 정확도를 얻으십시오
- 3. 수평 및 수직 웹 사이트를 중심으로
- 4. 는 정렬 수직 및 수평 정렬은
- 5. freeRTOS 및 병렬 처리
- 6. 멀티 코어 및 병렬 처리
- 7. 병렬 처리 및 임시 파일
- 8. 병렬 처리
- 9. JScrollBar 수직/수평 설정 문제 - Java Swing
- 10. 수직/수평 중심 블록 레벨 요소
- 11. div를 스크립팅하지 않고 수평 및 수직 중심에 배치하는 방법은 무엇입니까?
- 12. Image Control에서 이미지를 수평 및 수직 가운데에 배치하는 방법은 무엇입니까?
- 13. wpf에서 usercontrol의 크기를 조정 하시겠습니까? 수직 및 수평 스크롤바
- 14. 다른 div 안에 div를 수직 및 수평 정렬하는 방법은 무엇입니까?
- 15. 수직 및 수평 이동에 대해 다른 MOUSE_OUT 동작?
- 16. vim에서 수직 및 수평 분할을 명령 줄에서 섞음
- 17. 타일 맵을 효율적인 수평 및 수직 경계 상자로 구문 분석합니다.
- 18. 데이터베이스 액세스 병렬 처리
- 19. perl에서의 간단한 병렬 처리
- 20. GAE MapReduce 병렬 처리 및 할당량
- 21. 문제점 이해 대기열, 병렬 처리 및 스레딩
- 22. PHP의 병렬 처리
- 23. 비트 맵의 병렬 처리
- 24. Gforth 병렬 처리
- 25. Python의 병렬 처리 옵션
- 26. Python의 병렬 처리
- 27. 파이썬 병렬 처리 라이브러리
- 28. 자바에서의 병렬 처리 시뮬레이션
- 29. .Net의 병렬 처리
- 30. 스레딩 대 병렬 처리
나는 잠시 동안 이런 종류의 일을 해왔고, 내 인생에서 결코 그 용어를 듣지 못했고, 그들이 여기서 의미하기로되어있는 것을 짐작할 수도 없다. –
나는이 용어에 대해 들어 봤지만, 나는 프로세서에서만 사용되는 것을 보았다. 수평 병렬 처리는 여러 개의 독립적 인 연산이 동시에 실행될 때 발생합니다 (예 : 병렬로 실행되는 여러 개의 연산 단위가있는 프로세서에서). 수직 병렬 처리는 작업 시퀀스의 여러 단계가 겹쳐져있는 경우입니다 (예 : 파이프 라이닝을 사용하는 프로세서). – ejd
나는 항상 더 구체적인 용어가 사용 된 것을 항상 들었습니다. 캐치 올 용어로 "수직적 병렬성"보다는 ILP 또는 파이프 라이닝이 필요합니다. 하지만 OMP, MPI, GPGPU 측정 값은 기본적으로 모두 수평일까요? (아, 그리고 당신의 의견을 대답 그래서 나는 그것을 upvote 수 있습니다 _I_ 어쨌든, 배웠습니다 ...) –