自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (29)
  • 收藏
  • 关注

原创 No.8 OpenCL 性能分析——内存带宽

执行 Profiling 操作来获取时间戳数据,以计算内存拷贝带宽。

2017-06-01 16:53:24 2575 17

原创 No.7_7 OpenCL 同步——命令队列

内核代码的执行以及内存对象的操作,需要通过将 OpenCL 命令提交到命令队列来完成。在大多数情况下,我们只有一个命令队列,并且命令队列中的命令在执行时按照函数调用的顺序。但是在某些场景下并非如此……

2017-04-14 14:50:09 3645 14

原创 No.7_6 OpenCL 同步——异步拷贝

OpenCL C 编程语言内置了类似 memcpy 的函数,内核代码通过调用该函数,可以在局部内存和全局内存区域之间拷贝数据。

2017-04-10 19:12:16 1597

原创 No.7_5 OpenCL 同步——原子操作

当多个线程在不同处理器上执行,同时访问相同内存时会存在竞态条件,使用原子操作可以避免竞争。

2017-04-09 18:21:53 4505 4

原创 No.7_4 OpenCL 同步——工作项同步

在 OpenCL 中多个工作项会并行执行,当一个工作项对某个存储空间写入数据后,其它的工作项从该地址读取数据时,该如何保证后面工作项读取的数据是前一个工作项写入的数据。这时,就涉及到了工作项之间的同步。

2017-04-08 11:02:38 3563 1

原创 No.7_3 OpenCL 同步——事件同步

事件对象,用于两个或多个事件之间同步。

2017-04-08 09:53:23 1168

原创 No.7_2 OpenCL 同步——事件回调函数

在调用 clEnqueueXXXX 一系列函数时,会传递一个指向 cl_event 对象的指针。该指针接收事件对象,用来标识执行的命令。可以使用该事件对象来查询命令的执行状态,例如命令是否已经执行完成;该事件对象也可以用来在其它命令执行前等待对应的命令执行完成。

2017-04-05 20:10:41 1913 5

原创 No.7_1 OpenCL 同步——主机端同步

OpenCL 主机端同步

2017-03-28 23:02:38 1773 1

原创 No.6_3 OpenCL 图像采样器——图像旋转(二)

在 Ubuntu 系统环境下,使用 OpenCL 对图像执行旋转操作。

2017-03-22 14:07:56 1828

原创 No.6_2 OpenCL 图像采样器——图像旋转(一)

该程序对图像旋转一定的角度,角度大小可通过调节参数来控制。

2017-03-22 11:35:09 1644

原创 No.6_1 OpenCL 图像采样器——图像裁剪

使用 OpenCL 采样器,从原始图像中截取部分矩形区域(左下角区域开始)。

2017-03-21 19:36:29 4475 1

原创 No.2_2 FreeImage——加载/存储图像

FreeImage 是一款免费的开源图形库,它可以用于 Windows,Linux 和 Mac OS X 系统。该程序将图像文件转换为字节流存入二进制文件,在把二进制文件转换为图像文件。

2017-03-21 17:30:36 4097

原创 No.1 AMD APP 对 OpenCL 的支持

AMD APP(Accelerated Parallel Processing) 利用 GPU 强大的处理能力,来为广泛的高性能、数据并行计算应用提供服务。AMD APP 系统包括一个软件栈、AMD GPUs 和多核 AMD CPUs。

2017-03-21 14:18:08 2469

原创 No.2_1 FreeImage——旋转图像

该程序使用 FreeImage 来对图像执行旋转操作。FreeImage 是一款免费的开源图形库,它可以用于 Windows,Linux 和 Mac OS X 系统。

2017-03-20 19:38:41 3969 8

原创 No.5 YUV420 格式图像旋转

分别在 CPU 上使用 C 语言和在 GPU 上使用 OpenCL 对一张 YUV420p 的图像顺时针旋转 90 度,比较两者之间的性能差异。

2017-03-19 18:15:13 2757 4

原创 No.1 YUV420p 图像裁剪

YUV420p 图像裁剪。从较大 YUV420p 图像的左上角或左下角矩形区域提取数据生成较小的图像。

2017-03-19 13:29:34 3172 1

原创 No.4_2 OpenCL 编译链接(二)

本文是上一篇 No.4_1_OpenCLCompile 的第二部分,把功能实现放到单独的头文件中。

2017-03-18 12:55:16 688

原创 No.4_1 OpenCL 编译链接(一)

对于功能比较丰富的程序,在实现的时候,为了便于维护,可以将不同的功能放到不同的头文件中,再统一编译、链接。

2017-03-18 12:08:02 1228

原创 No.3 分离 OpenCL 内核

为了便于设备端 OpenCL 代码的编辑和调试,在 No.1_HelloOpenCL 的基础上,将设备端的内核代码从主机代码分离,存放到单独的 program.cl 文件中。

2017-03-17 19:21:58 651

原创 No.2 OpenCL 程序构建

OpenCL 内核程序在运行之前,需要通过编译、链接等步骤。由于我们的疏忽,程序的编码往往会存在缺陷,导致程序运行异常。其中有些错误在构建时就能确定,这时就要找到导致程序构建错误的地方,再逐一纠正。

2017-03-16 21:09:48 818

原创 No.1 HelloOpenCL

使用 OpenCL 实现将大写字母转换为小写字母,然后输出。例如,输入字符串为Hello OpenCL, I like U,经转换后的输出是hello opencl, i like u。

2017-03-15 22:38:49 798

原创 测试用例

欢迎使用Markdown编辑器写博客本Markdown编辑器ckEdit]6修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl + Q

2017-03-10 14:19:24 700 2

GreyscaleSampler

灰度图像采样

2017-08-03

opencl_bandwidth

通过 Profiling 时间戳数据来计算内存拷贝带宽。

2017-06-01

OpenCLProfiling

执行 OpenCL 提供的 Profiling 操作来获取内核运行时间戳。

2017-06-01

OpenCLTimeCount

使用 Linux 系统提供的时钟/时间接口来获取函数执行的时间戳。

2017-06-01

No.2_OpenCLSyncQueue

OpenCL 命令队列之间,各命令同步。

2017-04-14

No.1_OpenCLSyncQueue

OpenCL 命令队列中各个不同命令的同步。

2017-04-14

OpenCLAsyncCopy

OpenCL 异步拷贝,基于工作项。

2017-04-10

OpenCLSyncAtomic

OpenCL C 编程语言原子操作,用于同步。

2017-04-09

OpenCLSyncItem

OpenCL 工作项同步。

2017-04-08

OpenCLSyncEvent

OpenCL 事件同步。

2017-04-08

OpenCLEventCallback

OpenCL 事件回调函数

2017-04-05

OpenCLSyncHost

OpenCL 主机端同步。

2017-03-28

No.3_OpenCLSampler

Ubuntu 系统环境下,使用 OpenCL 采样器对象对图像执行旋转操作。

2017-03-22

No.2_OpenCLSampler

使用 OpenCL 采样器对象对图像执行旋转操作。

2017-03-22

No.1_OpenCLSampler

使用 OpenCL 采样器对象,从原始图像中截取部分矩形区域。

2017-03-21

No.2_FreeImage

将图像文件转换为字节流存入二进制文件,在把二进制文件转换为图像文件。

2017-03-21

AMD - GCN3 Instruction Set Architecture

AMD 第三代图形核架构(Graphics Core Next Architecture, Generation 3)。

2017-03-21

AMD_Accelerated_Parallel_Processing_OpenCL_Programming_Guide-rev-2.7

AMD 异构开发对 OpenCL 支持实现。

2017-03-21

FreeImage3170

FreeImage 开源图形 API 文档,用于图形软件开发。

2017-03-20

No.1_FreeImage

使用 FreeImage 库函数将 png 格式图像按照 CCW 方向旋转 30 度。

2017-03-20

No.2_OpenCLRotate

该 OpenCL 程序在桌面安装 Ubuntu 系统的 AMD RX 460 上执行。

2017-03-19

No.1_OpenCLRotate

分别在 CPU 上使用 C 语言和在 GPU 上使用 OpenCL 对一张 YUV420p 的图像顺时针旋转 90 度,比较两者之间的性能差异。

2017-03-19

YUV420pScissor

YUV420p 图像裁剪。从较大 YUV420p 图像的左上角或左下角矩形区域提取数据生成较小的图像。

2017-03-19

No.2_OpenCLCompile

在 No.4_1 OpenCLCompile 的基础上,把功能实现放到单独的头文件中。

2017-03-18

No.1_OpenCLCompile

在 OpenCL 环境下,把程序构建拆分为编译和链接步骤。

2017-03-18

OpenCLProgram

将设备端内核代码和主机代码分离,方便程序编写、调试。

2017-03-17

OpenCLBuild

获取 OpenCL 程序构建信息,便于代码中错误排查。

2017-03-16

HelloOpenCL

使用 OpenCL 实现将大写字母转换为小写字母,然后输出。

2017-03-16

No.2_OpenCLBuild

获取 OpenCL 程序构建信息,便于发现程序中存在的错误。

2017-03-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除