- 博客(12)
- 资源 (14)
- 收藏
- 关注
原创 Brook+ Programming (6)
2.6 The Brook+ Runtiem API 现在版本的Brook+的特性都是完全改写了runtime引擎后的。为了提高性能和稳定性,新的C++ API提供给开发者以便能在低层用更有弹性的方式操纵GPU。 2.6.1 C++ API和之前编程模型之间的差异 差异表现在一下几个方面: .动态流管理 .
2009-11-25 12:47:00 358
原创 编程小妙招:取模
数学中的取模运算大家都是知道的,现在说下自己利用这个运算的一些体会。 首先,取模可以在一定程度上取消边界检查。 举个例子吧,假设要在一个100x100的平面网格上实现生命游戏(game of life,一个数学游戏)的模拟,每个网格代表一个小细胞生命。在按照一定规则不断演化的过程中,细胞生命是必然会遇到边界的。我们是不是要加上if这样的判断来确定细胞生
2009-11-20 08:42:00 622
原创 Brook+ Programming (4)
(接上篇) 由main函数开始,生成三个流接受输入矩阵(A和B)和输出矩阵(流一般用来表示矩阵)。然后三块内存缓冲区开辟出来(input_A,input_B和input_C)接着streamRead()函数将数据从input_A复制到流A,input_B到流B。 simple_matmult( (float) Width, A, B, C) 这一行将Width
2009-11-18 13:28:00 381
原创 Brook+ Programming (2)
(接上一篇) 2.2.2 Building 使用如下步骤生成: 第一步: 用brcc编译 编译器可以在/sdk/bin/下找到 brcc [-hkrbfilxaec] [-w level] [-D macro] [-n flag] [-w level] [-o prefix] [-p shader]
2009-11-17 18:57:00 358
原创 Brook+ Programming (1)
(接上一篇文章) Brook+的代码和C/C++的很像,但要注意以下几点: 第一,brcc像C编译器一样工作,也就是说编程要坚持标准C规范(例如:变量在代码段前声明)。 对于更复杂的应用,要小心地区分C代码和Brook+代码以使其可组织、可使用。因此,函数可以被声明,然后从C/C++代码文件中调用,而不是直接放在main函数里面。
2009-11-17 17:52:00 420
翻译 Brook+ Programming
翻译自AMD文档2.1Runtime Options在运行Brook+程序之前,需要注意一下环境变量: BRT_RUNTIME 这个环境变量允许你决定计算的后端是CPU(可以方便地调试)还是CAL(运行于GPU之上).如果不设置,默认的是CAL. 设置为"cpu"使用CPU后端,设置为"cal"使用CAL后端.
2009-11-17 14:51:00 629
原创 brook+编程之GPU加速到底多快?
显卡GPU浮点运算的公式如下: 理论峰值 = 流处理器数目 X 2 X 显卡核心频率 以AMD的RV770为例,10个SIMD引擎,每个SIMD有16个SPU,每个SPU有5个流核心,核心频率750MHz,带入得理论峰值1.2Tflops。我的显卡是HD3650,算的结果是0.6Gflops。程序实际运行时,能达到20%的峰值就时很高效的了。
2009-11-17 12:56:00 874
原创 Intel C++ 11.1 与 g++ 4.3.3 编译性能小测试
首先帖出最简单的一个矩阵乘法的cpp代码:#include #include int main(int argc,char** argv){ int Width = 835; int Height = 835; struct timeval s; long _start; long _end; int
2009-11-17 11:27:00 971 2
Ubuntu 9.04下安装ATI Radeon 3650显卡驱动
查了网上很多文章,讲得不是很清楚,将自己的安装经历贴出。 要么安装官方驱动,要么安装源里的,推荐安装官方的。若已有源里的,可以卸载flgrx。 从官网下载之后,以超级管理员身份运行,安装完毕之后,运行一下: sudo aticonfig --initial -f 此时检查驱动信息,可以发现受限驱动变绿,说明一切OK。 ...
2009-10-05 17:06:57 77
原创 Erlang全文合法单词搜索程序
合法单词,这里主要指原子和变量。 代码如下: %%----------------------------------------Get Words From Text-----------------------------------f(L) -> Dict=main(L,[]), List=dict:fetch_keys(Dict),
2009-09-09 23:57:00 768
原创 Ubuntu 9.04下从源代码编译安装Erlang且实现wxErlang
从官方网站http://erlang.org/下载Erlang的最新版本的source包,解压之后读一下README,里面介绍了安装过程需要的软件包。 首先是解压需要GNU unzip,or a modern uncompress。其次是编译需要: 1.GNU make 2.GNU C compiler 3.Perl 5 4.GNU m4
2009-09-09 22:19:00 1102
原创 Erlang 环形基准测试程序
题目来源于《Erlang 程序设计》(人民邮电出版社 ISBN 978-7-115-18869-4)第 115 页的习题二。题目是在一个环中创建 N 个进程,然后沿着环发送一条消息 M 遍,共 N*M 遍,统计消耗时间。 题目其实有某些不太清楚的地方,在于发送消息的方式。有以下理解方式: 1)进程1向进程2发送消息,进程2收到后再向进程3发送消息,此外的时
2009-09-09 17:46:00 994 1
Leix's Editor
2009-09-10
Erlang Programming O’Reilly 2009年六月新书
2009-07-13
Whitepaper_Advanced Viz UI with Qt OpenGL_cn
2009-05-31
PyQt中文教程Introduction_to_PyQT4
2009-05-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人