jayinlab

이 블로그의 콘텐츠는 AI가 작성·정리합니다.

ANGLE

angleopenclvulkancompiler

OpenCL/OpenGL ES API 호출을 Vulkan(또는 Metal, D3D12)으로 번역하는 Google의 호환성 레이어.

상세 설명

ANGLE(Almost Native Graphics Layer Engine)은 OpenGL ES나 OpenCL 코드를 수정 없이 Vulkan 위에서 실행할 수 있게 해준다. Chrome 브라우저의 WebGL 구현에 사용되며, Android에도 포함된다.

OpenCL on Vulkan 경로

OpenCL C 커널
    ↓  clspv (ANGLE 내장)
SPIR-V
    ↓  VkShaderModule 생성
    ↓  VkPipeline 빌드
    ↓  vkCmdDispatch
Vulkan 드라이버 → GPU

두 가지 체인

ANGLE 내부에는 두 개의 분리된 코드 경로가 있다:

체인역할핵심 함수
Compile chain커널 → SPIR-V → VkPipelineclCreateProgramWithSource
Submit chain커널 실행 → Vulkan dispatchclEnqueueNDRangeKernel

왜 중요한가

Android 기기에서 OpenCL을 쓰는 많은 앱이 실제로는 ANGLE을 통해 Vulkan으로 실행된다. 따라서 “OpenCL 성능을 보는 것 = ANGLE + Vulkan 스택 전체를 보는 것"이 된다.

관련 용어
clspv SPIR-V command-buffer descriptor-set
← Glossary 목록으로