OpenCL异构计算资料收集

Easy OpenCL with Python

原文  http://www.drdobbs.com/open-source/easy-opencl-with-python/240162614

OpenCL与python联合工作:与CUDA的前景分析

http://www.opengpu.org/forum.php?mod=viewthread&tid=16571

如果你对python熟,可以用 PyOpenCL, 兼顾 host 端的简洁与 device 端的高效。
kernel 函数可以写在单独的 *.cl 文件里, 一句 python 命令就可以 load + build:
 prg_src = open( 'kernel_test1.cl', 'r').read()
 prg = cl.Program(ctx, prg_src).build()

 #!/usr/bin/env python

 import numpy as np
 import pyopencl as cl

 a_np = np.random.rand(50000).astype(np.float32)
 b_np = np.random.rand(50000).astype(np.float32)

 ctx = cl.create_some_context()
 queue = cl.CommandQueue(ctx)

 mf =  cl.mem_flags
 a_g = cl.Buffer(ctx, mf.READ_ONLY | mf.COPY_HOST_PTR, hostbuf=a_np)
 b_g = cl.Buffer(ctx, mf.READ_ONLY | mf.COPY_HOST_PTR, hostbuf=b_np)

 prg = cl.Program(ctx, """
         __kernel void sum(__global const float *a_g,
                           __global const float *b_g,
                           __global float *res_g)
             {
                 int gid = get_global_id(0);
                 res_g[gid] = a_g[gid] + b_g[gid];
             }
             """).build()

 res_g = cl.Buffer(ctx, mf.WRITE_ONLY, a_np.nbytes)
 prg.sum(queue, a_np.shape, None, a_g, b_g, res_g)

 res_np = np.empty_like(a_np)
 cl.enqueue_copy(queue, res_np, res_g)

 # Check on CPU with Numpy:
 print(res_np - (a_np + b_np))
 print(np.linalg.norm(res_np - (a_np + b_np)))

GPGPU OpenCL/CUDA 高性能编程的10大注意事项

http://www.cnblogs.com/xudong-bupt/p/3630952.html

从零开始学习OpenCL开发(一)架构

http://blog.csdn.net/leonwei/article/details/8880012

在Android上使用OpenCL调用GPU加速

http://blog.csdn.net/dj0379/article/details/39484061

时间: 2024-10-10 08:50:27

OpenCL异构计算资料收集的相关文章

Maven的学习资料收集--(十)Myeclipse下创建Maven的Web项目

先要在MyEclipse中对Maven进行设置: 到此Maven对MyEclipse的支持设置完毕. 下面我们在MyEclipse中创建一个Maven标准的Web工程: New --> Web Project 到此为止一个Maven标准的Web工程创建成功了. 添加Maven的标准目录: 右键单击项目名称-->New-->Source Folder 到此为止添加Maven的契约目录完毕. 右键单击项目名称-->Build Path-->Configure Build Path

Windows Server 2008 网络管理资料收集 争取做“日拱一卒“

Windows Server 2008R2系统管理[刘道军主讲MCITP课程] http://edu.51cto.com/course/course_id-510.html 安装活动目录服务器 http://edu.51cto.com/lesson/id-20503.html Windows Server 2008 R2 活动目录管理演示 http://edu.51cto.com/course/course_id-1024.html WinServer 2012文件服务器案例分析[第二十五期]

C++资料收集&整理

友元类: C++中的友元函数和友元类 友元函数.友元类.访问私有数据成员.友元关系[C++] ZLib: c++ zlib(qt)压缩与解压缩 基础: [转载]C/C++中单井号与双井号的使用: http://happyboy200032.blog.163.com/blog/static/469031132012421331566/ malloc.free用法 把<编程珠玑>读薄 C++资料收集&整理

关于 Graph Convolutional Networks 资料收集

关于 Graph Convolutional Networks 资料收集 1.  GRAPH CONVOLUTIONAL NETWORKS   ------ THOMAS KIPF, 30 SEPTEMBER 2016 Link:http://tkipf.github.io/graph-convolutional-networks/#gcns-part-iii-embedding-the-karate-club-network 2.  Graph 卷积神经网络:概述.样例及最新进展    ---

Maven的学习资料收集--(四)使用Maven构建Web项目-测试

2014-08-04 23:21 2人阅读 评论(0) 收藏 编辑 删除 目录(?)[+] [-] 在srcmainjava下新建一个Servlet 修改webxml 新建JSP 测试 在上一篇博客里,我们使用Maven构建了一个Web项目,我们在这里写一个简单的Servlet,测试一下. 1.在src/main/java下,新建一个Servlet [java] view plaincopyprint? <span style="font-weight: normal;">

Maven的学习资料收集--(三)使用Maven构建Web项目

新建Maven项目 File - New - Other 选择Maven Project 单击Next 保持默认即可单击Next 选择Archetype为 web app单击Next 输入一些必要信息单击Finish 项目结构如下图 配置项目 在项目上右键单击添加Source Folder 修改Build Path 配置 将项目转换为Dynamic Web Project 设置部署程序集Web Deployment Assembly 从网上查了一些资料,才算明白(也就是怎么操作吧),怎么使用Ma

Maven的学习资料收集--(一)环境搭建

这几天在做项目的时候用到了maven,但是自己没有从来没有接触过,所以咋网上找资料,终于找到了一下的资料,这个是别人总结的,我只是转载过来积累.请尊重原创. 官网地址:http://maven.apache.org/ 下载地址:http://download.csdn.net/detail/jolingogo/5235528 接下来是,配置环境变量: 1.将压缩包解压 2.配置环境变量 M2_HOME:D:\JavaApp\apache-maven-3.0.5(改成自己的哦) 在Path中加入:

Maven的学习资料收集--(六) 构建Hibernate项目

前面我们使用Maven构建了Struts2项目,这里我们来试一下Hibernate项目: 这里的例子,大体框架应该是正确的,但是,对于Maven的很多约定都没有掌握,估计包的命名都不是非常好,等以后,理解深刻了再改吧 1. 构建一个基本的Web项目 这里请参考前面的博客,一样的 2. 添加依赖,修改pom.xml [html] view plaincopy <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&

Maven的学习资料收集--(二)安装m2eclipse插件

在Eclipse中可以安装Maven插件,可以更方便的使用: 官网地址:http://www.eclipse.org/m2e/ 可以在线安装或者离线下载,之前在线安装总是失败,可能是网速的原因,找到了一个离线包,可以用link方式安装. 离线包:http://download.csdn.net/detail/jolingogo/5253225 在线安装就不说了,link方式的话: 1.将离线包解压到一个目录,如:D:\\m2eclipse 2.在Eclipse的根目录下,有一个dropins文件