- 博客(14)
- 资源 (4)
- 收藏
- 关注
原创 Fermi核心讲解
引用http://www.mobile01.com/topicdetail.php?f=298&t=1409748&p=6第一張圖片為GF100的完整架構..可以清楚的看到512個CUDA核心(實際上就是流處理器SP),而512個核心分為16組SM(Streaming Muitiprocessor),其中每4組SM加上.一組raster engine.稱為一組GPC陣列(Graphic processing cluster)而GPC陣列算是Fermi的繪圖處理架構..完整的GF100是由4個GPC陣
2010-06-04 18:18:00 1086
原创 CUDA课程-CS-139G-2:GPU History & CUDA Programming Basics
<br /> CUDA基础框架<br /> 1,kernels基础以及在GPU上的执行<br /> 2,基本存储管理<br /> 3,CPU管理以及GPU执行<br /> 4,参看API编程指南<br /> <br /> CUDA编程模型<br /> 1,kernel:启动和运行在一个device上,通过很多线程运行的并行代码<br /> 2,启动是分层次的:线程组成线程块;线程块又组成grids<br /> 3,常见的串行代码用来写一个线程:每个线程都很自由的执行一个独
2010-06-01 10:05:00 1074
原创 CUDA课程-CS-139G-1:Introduction to Massively Parallel Computing
size_t是为了软件的兼容性和可移植性而产生的,使应用程序不依赖于具体的系统实现size_t是针对系统定制的一种数据类型,一般是整形,因为C/C++标准只定义一最低的位数, 而不是必需的固定位数。而且在内存里,对数的高位对齐存储还是低位对齐存储各系统都不一样。为了提高代码的可移植性,就有必要定议这样的数据类型。一般这种类型都会定义到它具体占几位内存等。当然,有些是编
2010-05-20 18:41:00 940
原创 CUDA计算函数集合
unsigned NumberOfBitsNeeded ( unsigned PowerOfTwo ) //===========计算需要运算的点数是 2的几次方,返回指数============={ unsigned i; //左移不关心符号,所以这里定义无符号数 if ( PowerOfTwo < 2 ) //数据必须比2大,否则无意义。 { fprintf
2010-05-19 18:24:00 1025
原创 CUDA在VC2008中的环境搭建与配置要点
<span id="col-z12ncx0wnoqufpcnc23gcreaemakvnwku" class="CSS_UPDATES_UCW_UPDATE_BODY_TEXT CSS_UPDATES_UCW_COLLAPSIBLE_UPDATE"><span class="CSS_UPDATES_UCW_EXPANDED CSS_UPDATES_UCW_HIDDEN CSS_UPDATE
2010-04-28 09:53:00 2897
原创 重载操作符二
#include #include #include // 运算符重载输入类的三种形式。内部成员函数,非成员函数,友元函数。using namespace std;class Fruit{ friend Fruit& operator+=(Fruit&,const Fruit&); //友元public: Fruit(int a=0, string b="App
2010-04-27 17:30:00 774
转载 重载操作符
对类重载操作符,永远是对类的对象自身起作用,而不可能对于类的成员。当调用操作符的时候,编译器会解析调用操作符的对象的类型。 fm.myName++; 这样实际上是在对MyName调用++操作符,而MyName类型是一个枚举,对枚举重载运算符是必须使用全局定义的(稍后会讲如何全局定义),所以你的定义完全不可能达到你的期望。 +
2010-04-26 17:18:00 1371
原创 CUDA基础学习笔记
===CUDA介绍===CUDA是一种可扩展的并行编程模型,使得程序不用通过重新编译就可以在任何数量处理器上运行。支持异步系统(如CPU+GPU),CPU和GPU是各自拥有DRAM的独立器件以100多个核心,1000多条并行线程来衡量主要让程序专门用于并行算法,而不是一种并行编程语言的结构===理解CUDA的并行运算===CUDA中的并行抽象的关键:1,同时进行
2010-04-26 12:26:00 1578
原创 类内部指针成员的管理--智能指针
#include using namespace std;// 类内部指针成员的管理:引入原因,是当类内部有指针成员时的拷贝控制上有一些注意事项。// 类可以实现所谓的“智能指针”行为,指针所指向的对象是共享的,但类能够防止悬垂指针// 智能指针负责删除共享对象,需要一个析构函数来删除指针,但是,析构函数不能无条件地删除指针。// 智能指针类将一个计数器与类指向的对象相关联。使
2010-04-21 15:44:00 904
原创 类内部指针成员的管理--常规指针型行为
#include using namespace std;// 类内部指针成员的管理//1. 指针成员采取常规指针型行为。这样的类具有指针的所有缺陷但无需特殊的复制控制// By Evelclass A{public: A(int* a, double b); //构造函数 void set_dou(double sa){ a2 = sa;} //设置doub
2010-04-21 10:01:00 538
原创 类的赋值操作符函数
#include using namespace std;// 赋值操作符:引入的原因是1,类里面指针的混乱问题。用默认的赋值操作符会存在指针所指对像永久存在,// 但是析构的时候会删除另外一个指向同一对象的指针而导致内存泄漏的问题// 其名字为 operator 后跟着所定义的操作符的符号。有一个返回值和一个形参表 return *this; // 第一个形参对应着左操作数
2010-04-19 15:51:00 625
原创 拷贝构造函数
#include using namespace std;// 拷贝(复制)构造函数// // // By Evelstruct NoName { NoName(): pstring(new string()), i(0), d(0),bb(6) { } //构造函数 NoName(const NoName&);//合成拷贝构造函数的声明;通常有co
2010-04-19 13:53:00 526
原创 静态成员和静态成员函数
#include #include "math.h"using namespace std;// static数据成员: 如果不是const类型的static,类内声明但不能初始化,需要类外定义。// const类型可以类内声明和初始化,但如果初始化,不能再改其值,如果不初始化,// 则需要在类外用作用域符引用而初始化。// By Evelclass A
2010-04-19 11:24:00 546
原创 类的初始化列表
#include#include //string classusing namespace std;// Class中关于类的初始化列表,以及构造函数形参缺省值// By Evelclass Car{ //friend class Bus;public: Car(const string &sname="DEFAULT",int t=7,double m=20
2010-04-15 23:19:00 552
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人