- BufferCreate
- BufferFree
- BufferFromArray
- BufferRead
- BufferWrite
- Execute
- GetContext
- GetKernel
- GetKernelName
- GetProgram
- Initialize
- KernelCreate
- KernelFree
- SetArgument
- SetArgumentBuffer
- SetArgumentLocalMemory
- SetBuffersCount
- SetKernelsCount
- Shutdown
- SupportDouble
处理OpenCL程序的类
COpenCL类是帮助处理OpenCL函数的封装器。在某些情况下,使用GPU可以大幅度提高计算速度。
对于基于浮动值和双精度值计算的类的使用示例可以在MQL5\Scripts\Examples\OpenCL\ 文件夹相应的子目录中找到。OpenCL程序的源代码位于MQL5\Scripts\Examples\OpenCL\Double\Kernels和MQL5\Scripts\Examples\OpenCL\Float\Kernels子目录中。
- MatrixMult.mq5 - 使用全局内存和本地内存的矩阵乘法示例
- BitonicSort.mq5 - GPU数组元素平行排序的示例
- FFT.mq5 - 快速傅里叶变换计算的示例
- Wavelet.mq5 - 使用Morlet小波进行的小波数据变换的示例。
建议以单独的CL文件编写OpenCL源代码,稍后将其包含进使用资源变量MQL5程序。
声明
class COpenCL |
标题
#include <OpenCL\OpenCL.mqh> |
类方法
名称 |
描述 |
---|---|
在指定索引创建OpenCL缓冲区 |
|
在指定索引删除缓冲区 |
|
在指定索引从数组值创建缓冲区 |
|
在指定索引读取OpenCL缓冲区到数组 |
|
在指定索引编写数组值到缓冲区 |
|
在指定索引执行OpenCL内核 |
|
返回OpenCL上下文处理 |
|
在指定索引返回内核对象句柄 |
|
在指定索引返回内核对象名称 |
|
返回OpenCL 程序句柄 |
|
初始化OpenCL程序 |
|
在指定索引创建OpenCL程序切入点 |
|
在指定索引移除OpenCL起始函数 |
|
在指定索引设置OpenCL函数的参数 |
|
在指定索引设置OpenCL缓冲区作为OpenCL函数的参数 |
|
在指定索引为OpenCL函数设置本地内存的参数 |
|
设置缓冲区数量 |
|
设置内核对象数量 |
|
卸载OpenCL程序 |
|
检查设备是否支持浮动点数据类型 |