OpenCL是(Open Computing Language)的缩写,是一种编程框架,主要由C platform API和C runtime API组成。使用OpenCL可以实现多核异构平台的工作,典型如ARM与DSP协同工作。传统的ARM与DSP协同工作方法通过syslink/IPC实现核间通信,来完成协同工作。OpenCL相对此种工作模式存在一定优势。
OpenCL可分为平台模型、执行模型、内存模型、编程模型四大部分。使用OpenCL的程序工作流程大体分为六个流程:
开始
创建context
获取设备信息
创建command Queue
创建Memory Object
创建编译