Brook+ Programming (5)
来源:互联网 发布:mac单机游戏怎么安装 编辑:程序博客网 时间:2024/06/06 05:22
(接上篇)
这个例子使kernel函数更完善:
.使用含向量数据类型的输入流,在这种情况下,float4被用来每次取四个值。
.kernel函数同时向八个流中写入。通过使用CAL后端,Brook+的每个kernel支持八个输出。每次对kernel函数的调用会计算4x8=32个输出值。减少内存的读取可以极大地提高流处理器的效率。
.将输入矩阵分解为多个切片。这减少了为寻址而进行的运算。而在优化之前,与不同的输出相关联的矩阵的切片取得的是相同的地址
在每次循环的迭代中,从矩阵A中取得一个8x4的子矩阵,从矩阵B取得一个4x4的子矩阵。二者相乘得到一个8x4的矩阵。下一次迭代的时候,行中下一个8x4的子矩阵与列中的下一个4x4子矩阵相乘,这些矩阵和前面的结果相乘,结果得到8x4的矩阵输出到流中。
2.4 Example of Generated C++ Code for sum.br
(略)
2.5Building Brook+
Brook+的编译器和运行时库的Release和Debug版本的构建都已经预构建好,不过它们也可以通过提供的代码生成。
预构建的SDK(二进制文件、库、头文件)的路径是:<BROOKROOT>/sdk/
在Windows 系统下,Brook+可以在命令行和Visual Studio下构建。不过都需要安装Cygwin(www.cygwin.com)
2.5.1 Visual Studio
可以通过使用提供的Visual Studio的解决方案文件来构建brcc和Brook+的运行时库,位置是:<BROOKROOT>/platform/brook.sln
对Debug和Release的配置可以在“配置”的下拉菜单找到。对Viusal Studio默认的输出文件的位置是:
brcc.exe: <BROOKROOT>/platform/brcc/bin/xp_x86_32
brook.lib: <BROOKROOT>/platform/runtime/lib/xp_x86_32
SDK目录树中的文件不会被新的构建替代。如果make安装了,在<BROOKROOT>/platform下:
.运行make updatesdk将debug文件复制到SDK目录树中;
.或者运行make updatesdk RELEASE=1 来将release构建的文件复制到SDK目录树
2.5.2 Command Line
Brook+工具可以通过命令行或者Cygwin shell运行
1.Viusal Studio的编译器(cl.exe)和连接器(link.exe)必须包含在路径中,注意在路径中,Visual Studio的link.exe必须在Cygwin的link.exe之后
2.在<BROOKROOT>/platform/运行make构建debug版本,运行make RELEASE=1来构建release版本
不像Visual Studio的构建,SDK目录树可以被新的Brook+构建文件重新构建或者改写。可以运行make clean清理debug版本、make clean RELEASE=1来清理release版本。
- Brook+ Programming (5)
- Brook+ Programming
- Brook+ Programming (1)
- Brook+ Programming (2)
- Brook+ Programming (3)
- Brook+ Programming (4)
- Brook+ Programming (6)
- brook+在Ubuntu 9.04下的配置
- Programming Problems 5
- iOS 5 Programming Cookbook
- Concurrent Programming 5:Threads
- Tcl programming 5
- R Programming Note 5
- programming
- programming
- Programming
- brook+编程之GPU加速到底多快?
- c programming language learn 5
- oracle 存储过程的基本语法
- 使用cydia gnu debugger 在iphone真机上调试时的注意事项
- 数组实现线程安全的栈
- 第三天:集成Struts 2
- 51单片机边沿触发中断响应时刻的测量
- Brook+ Programming (5)
- 起点
- DotNet关键知识点——WPF篇(一)(范德成编辑批注版)
- 这是开头
- 工厂模式
- [ZZ] lib和dll文件的区别和联系
- 装饰模式(Decorator)-对象结构型模式
- 修改配置文件中的连接字符串
- mapXtream 简介