OpenCL과 OpenGL의 차이점은 무엇입니까?


최상의 답변

저는 거의 10 년 동안 컴퓨터 그래픽 애플리케이션에서 OpenGL을 사용해 왔습니다.

OpenGL은 주로 컴퓨터 그래픽에 사용되며 그래픽 API입니다. OpenCL은 주로 병렬 컴퓨팅에 사용되며 계산 API입니다.

OpenCL로 일반적으로 해결하는 몇 가지 문제를 해결하기 위해 OpenGL을 사용할 수 있지만 계산을 진행하려면 문제를 그래픽 컨텍스트에 매핑해야합니다.

렌더링되지 않는 작업에 OpenGL을 선택하는 주된 이유는 “OpenCL을 실행할 수없는 구형 하드웨어를 지원하기위한 것입니다.

Open Graphics Library ( OpenGL )은 다국어 , 크로스 플랫폼 애플리케이션 프로그래밍 인터페이스 (API) 2D 3D 벡터 그래픽 . API는 일반적으로

그래픽 처리 장치 (GPU), 하드웨어 가속 렌더링 .

Silicon Graphics Inc., (SGI) 1991 년 OpenGL 개발을 시작하여 1992 년 1 월에 출시했습니다. 애플리케이션은 컴퓨터 지원 설계 (CAD), 가상 현실 분야에서이를 광범위하게 사용합니다. , 과학적 시각화 , 정보 시각화, 비행 시뮬레이션 비디오 게임 . OpenGL은 비영리 기술 컨소시엄 Khronos Group . (Wikipedia OpenGL )

Open Computing Language ( OpenCL )은 <에서 실행되는 프로그램을 작성하기위한 프레임 워크 입니다. 중앙 처리 장치 (CPU), 그래픽 처리 장치 <로 구성된 / div> 이종 플랫폼 / a> (GPU), 디지털 신호 프로세서 ( DSP ), 현장 프로그래밍 가능 게이트 어레이 (FPGA) 및 기타 프로세서 또는 하드웨어 가속기. OpenCL은 이러한 장치 및 애플리케이션 프로그래밍 인터페이스 를 프로그래밍하기위한 언어 ( C99 기반)를 지정합니다 ( API)를 사용하여 플랫폼을 제어하고 컴퓨팅 장치에서 프로그램을 실행합니다. OpenCL은 작업 기반 및 데이터 기반 병렬 처리를 사용하여 병렬 컴퓨팅 을위한 표준 인터페이스를 제공합니다. OpenCL은 비영리 기술 컨소시엄 Khronos Group 에서 유지 관리하는 개방형 표준입니다. (Wikipedia에서 OpenCL )

Answer

이름 유사성 외에도 매우 다른 짐승입니다. OpenCL은 Open Computing Language의 약자입니다. GPU 또는 CPU에서 병렬로 작동 할 수있는 프로그램 커널을 만들 수있는 언어입니다. OpenCL은 일반적으로 이미지 처리 알고리즘, 물리적 시뮬레이션에 사용되며 수치 결과를 반환합니다. 즉, OpenCL 프로그램의 출력은 본질적으로 그래픽이 아닙니다.

반대로 OpenGL은 렌더링 명령을 GPU로 보낼 수있는 그래픽 API입니다. 일반적으로 목표는 화면에 렌더링을 표시하는 것입니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다