본문 바로가기

Programming/일반

OpenMP

빠르게 병렬처리를 적용할 일이 있어 정리하게 되었다.

 

정의

OpenMP(Open Multi-Processing)는 공유 메모리 다중 처리 프로그래밍 API로 C, C++, 포트란 언어와 유닉스 및 마이크로소프트 윈도우 플랫폼을 비롯한 여러 플랫폼을 지원한다. 병렬 프로그래밍의 하이브리드 모델로 작성된 응용 프로그램은 OpenMP와 메시지 전달 인터페이스 (MPI)를 둘 다 사용하거나, 더 투명성 있는 방식으로 비공유 메모리 시스템을 위한 OpenMP 확장을 사용하여 컴퓨터 클러스터 상에서 구동할 수 있다.

 

주요요소

설정 방법

프로젝트 > 속성 > C/C++ > 언어 > OpenMP 지원

사용법 예시

결과

현재 사용중인 PC의 Cpu 갯수가 11개 이므로 11개의 Thread로 병렬 처리가 되는것을 확인할 수 있다.

Visual Studio로 작업 시 별다른 라이브러리 없이 API 지원이 되어 편하게 사용 가능.

실제 적용 시 CPU 사용량을 한번 확인하는 것이 좋을 것 같다.

'Programming > 일반' 카테고리의 다른 글

Log[2] - Macro  (0) 2020.08.17
Log[1] - assert()  (0) 2020.08.13
Vision Library  (0) 2020.07.16
ini  (0) 2020.07.14
Windows Memory Mapped File (MMF)  (0) 2020.07.14