//创建的内存对象由内核访问,将缓冲区作为参数传递给内核

1:创建缓存对象

cl_mem clCreateBuffer(

cl_context context,  //上下文

cl_mem_flags flags,     //内存对象性质标签

size_t size,      //大小

void* host_ptr,    //主机地址

cl_int *errcode_ret  //错误码

)

性质标签:

CL_MEM_READ_WRITE     指定内核对象将由内核读写

CL_MEM_WRITE_ONLY     指定内核对象只由内核写

CL_MEM_READ_ONLY       指定内核对象只由内核读

CL_MEM_ALLOC_HOST_PTR         指定缓冲区应当在宿主机可访问的内存中分配,不能与下一个性质一起用

CL_MEM_USE_HOST_PTR    实现使用host_ptr引用的内存作为内存对象的存储位

CL_MEM_COPY_HOST_PTR       实现分配内存对象的内存,并从hst_ptr引用的内存复制数据,不能和上一个性质一起使用。可以和CL_MEM_ALLOC_HOST_PTR,初始化这些对象的内容。且host_ptr不为NULL

2:创建子缓存对象

cl_mem clCreateSubBuffer(

cl_mem buffer,            //缓存对象

cl_mem_flags flags,            //性质对象

cl_buffer_create_type buffer_create_type,//CL_BUFFER_CREATE_TYPE_ORGIN

const void* buffer_create_info,     //缓存创建信息数据

cl_int* errcode_ret            //错误代码

)

缓存创建信息结构数据:(buffer_create_info)

typedef struct _cl_buffer_region{

size_t origin;

size_t size;

}cl_buffer_region;

3:获取缓存对象相关信息

cl_int clGetMemObjectInfo(

cl_mem memobj,      //缓存对象

cl_mem_info param_name,   //信息类型名称

size_t param_value_size,    //要获取相关信息的大小

void* param_value,       //存放缓存信息的地址

size_t param_value_size_ret  //实际获得信息的大小

)

opencl(5)缓存对象的更多相关文章

  1. OpenGL帧缓存对象(FBO:Frame Buffer Object)(转载)

    原文地址http://www.songho.ca/opengl/gl_fbo.html 但有改动. OpenGL Frame BufferObject(FBO) Overview: 在OpenGL渲染 ...

  2. 顶点缓存对象(VBO)

    创建VBO 绘制VBO 更新VBO 实例 GL_ARB_vertex_buffer_object扩展致力于提供顶点数组与显示列表的优势来提升OpenGL效率,同时避免它们实现上的不足.顶点缓存对象(V ...

  3. Cache缓存对象缓存对象

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DemoCache.aspx ...

  4. OpenGL 顶点缓存对象

    顶点缓存对象(Vertex Buffer Object,简称 VBO),允许开发者根据情况把顶点数据放到显存中. 如果不用 VBO,用 glVertexPointer / glNormalPointe ...

  5. 现代3D图形编程学习--opengl使用不同的缓存对象(译者添加)

    现代3D图形编程学习系列翻译地址 http://www.cnblogs.com/grass-and-moon/category/920962.html opengl使用不同的缓存对象 在设置颜色一章中 ...

  6. [翻译] 编写高性能 .NET 代码--第二章 GC -- 减少大对象堆的碎片,在某些情况下强制执行完整GC,按需压缩大对象堆,在GC前收到消息通知,使用弱引用缓存对象

    减少大对象堆的碎片 如果不能完全避免大对象堆的分配,则要尽量避免碎片化. 对于LOH不小心就会有无限增长,但LOH使用的空闲列表机制可以减轻增长的影响.利用这个空闲列表,我们可以在两块分配区域中间找到 ...

  7. 顶点缓存对象(VBO)【转】

    http://www.cnblogs.com/hefee/p/3824300.html 顶点缓存对象(VBO) 创建VBO 绘制VBO 更新VBO 实例 GL_ARB_vertex_buffer_ob ...

  8. OpenGL帧缓存对象(FBO:Frame Buffer Object)

    http://blog.csdn.net/dreamcs/article/details/7691690 转http://blog.csdn.net/xiajun07061225/article/de ...

  9. OpenGL帧缓存对象(FBO:Frame Buffer Object) 【转】

    http://blog.csdn.net/dreamcs/article/details/7691690 原文地址http://www.songho.ca/opengl/gl_fbo.html 但有改 ...

随机推荐

  1. 【雕爷学编程】MicroPython动手做(04)——零基础学MaixPy之尝试运行

    1.hello micropython #MicroPython动手做(04)——零基础学MaixPy之基本示例 #程序之一:hello micropython #MicroPython动手做(04) ...

  2. [前端进阶课] 构建自己的 webpack 知识体系

    webpack webpack 最出色的功能之一就是,除了 JavaScript,还可以通过 loader 引入任何其他类型的文件. Webpack 核心概念: Entry(入口):Webpack 执 ...

  3. HTML使用正则验证

    制作HTML前台用户验证等,需要对用户名或者密码进行验证,这时使用正则表达式能够精确地对text进行限制. 具体在HTML中的运用代码如下: 转自 https://blog.csdn.net/weix ...

  4. 玩转Nginx location配置

    原文链接:https://mp.weixin.qq.com/s/kaEtfmX9bVdKfCVY6gbOsQ 建议点击原文链接查看 nginx是一个跨平台的web服务器, 基于事件驱动的架构并发处理百 ...

  5. shiro的ssm集成和简单的开发尝试

    配置web.xml <!-- 配置shiro的集成开始 --> <filter> <filter-name>shiroFilter</filter-name& ...

  6. PHP 操作结果集对象方法

    <?php header('Content-type:text/html;charset=utf-8'); //建立 或者 关闭mysql服务器 @符号用于屏蔽错误信息 $link=@mysql ...

  7. 关于Java两点需要更新的知识

    HashMap的初始容量 背景 很多人可以把HashMap的原理描述的很溜.比如JDK1.7之前,底层数据结构是数组+链表.JDK1.8之后,出于效率上的考虑,在数组长度大于64,链表长度大于8的时候 ...

  8. .Net Core实现区块链初探

    区块链这么火,咱也跟个风.   一.前言 最近,银行总行关于数字货币即将推出的消息频传,把BTC也带得来了一波反弹. 借着这个风,我们也研究一下区块链.   通常大家说到区块链,实际包括两部分概念: ...

  9. 9.快照持久化和AOF持久化

    持久化功能redis为了内部数据的安全考虑,会把本身的数据以文件形式保存到硬盘中一份,在服务器重启之后会把硬盘中的数据恢复到内存(redis)的里边. 数据保存到硬盘的过程就称为“持久化”效果. re ...

  10. Docker 入门:Dockerfile

    主要内容: 什么是 Dockerfile 查看 DockerHub 中镜像的 Dockerfile Dockerfile 编写 Dockerfile 常用命令 什么是 Dockerfile 使用 Do ...