智慧的老鸟

一个程序员需要有一棵Gank的心,Dota能培养我。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年11月15日

摘要: 一直在找cuda的文件组织结构帖子,但是,适合自己业务开发的感觉描述不清晰,下面是对自己的cuda工程的一个小结。语言组织框架是工程的一个良好结构,一个适合本业务开发的语言组织框架,对开发人员理解和阅读程序有着良好的帮助。了解到cuda是c的一个子集,用的是nvcc编译环境,针对某领域对cuda的应用,规范自己的程序框架。开发环境:vs2008+cuda5.0工程流程如下:1 新建cuda项目2 新建main.cpp作为程序入口,用的是c++编译器。3 新建业务级别.h和.cpp,业务封装在.h文件的class中。比如:class A{public:fun();}4 新建计算级别的.h或.c. 阅读全文
posted @ 2012-11-15 09:34 智慧的老鸟 阅读(1937) 评论(0) 推荐(0) 编辑

2012年11月12日

摘要: 原文地址:【CUDA学习-原创】包含C和.cu的工程实现!作者:又束起黑色领带现有一纯C的工程,想在里面调用.cu文件的函数。Project里面有一个cppIntegeration的例子,不过这个是在CPP里面调用.cu里面的函数,而且,这个工程在sdk里面,很多头文件,库之类的直接引用,因此,可移植性很差。摸索了几天,终于解决了C工程调用CU文件的问题。一起分享一下~~~新建两个文件,A.cu和A_kernel.cu,其中,A.cu作为调用的接口,A_kernel.cu里面实现的功能函数。然后,在A.cu-》右键-》属性-》自定义生成步骤-》常规-》命令行,添加如下命令:"$(CU 阅读全文
posted @ 2012-11-12 14:44 智慧的老鸟 阅读(897) 评论(0) 推荐(0) 编辑

2012年11月7日

摘要: 计算机中,硬件和软件其实是相辅相成的,软件可以降低硬件成本,硬件可以提高速度;这个道理是硬件加速器的存在价值。而在我们的模拟环境中,完全可以用软件模拟一些可以模拟的硬件条件,比如38译码器。//////////////////////////////////////////////////////////////////////////#includeusing namespace std;int main(){char yes = 'Y';do{int a=0,b=0,c = 0;printf("input a,b,c\n");while (1){scan 阅读全文
posted @ 2012-11-07 17:26 智慧的老鸟 阅读(453) 评论(0) 推荐(0) 编辑

摘要: #include#define len 3#define max 1000using namespace std;int isSXH(int d){//d>0int temp = d;int i = 0;int darr[len] = {0};do{darr[i] = d;i++;//darr[i] =d;d /=10;}while(d != 0);int add = 0;for (i = 0;i{add += darr[i]*darr[i]*darr[i];}if (temp == add){return 1;}return 0;//不是水仙花数返回0;}int main(){//co 阅读全文
posted @ 2012-11-07 17:24 智慧的老鸟 阅读(204) 评论(0) 推荐(0) 编辑

2012年11月6日

摘要: cuda文件组织形式原文地址:CUDA学习笔记2作者:叶以撒CUDA的文件组织形式:1. CUDA工程中可以有.cu和.cpp。2. 在.cu文件中,可以用#include "cuda_x.cuh"来相互调用.cu里的函数,也可以调用 #include "cpp_x.h". 比如在test1.h 中声明class A; 在test1.cpp中定义class A的相关成员函数。那么在cuda_xx.cu中,先 #include "test1.h",然后在定义 extern"C" void foo(...){ A aa 阅读全文
posted @ 2012-11-06 15:02 智慧的老鸟 阅读(3254) 评论(0) 推荐(0) 编辑

摘要: vs2008上创建cuda项目,新建test.cu文件,将如下代码拷贝进去,编译执行,能很清楚地看到GPU跑矩阵乘法和CPU的效率区别。在我的pc机上执行得到如下结果,可见矩阵乘法的GPU效率大概提高了一个数量级(相对应CPU而言),开发环境VS2008+cuda5.x开发包+GT520M显卡。程序代码(参考程序员下载程序,进行修改:http://download2.pudn.com/downloads245/sourcecode/windows/csharp/05872102CUDAMatrixMul.rar):///////////////////////#include#include# 阅读全文
posted @ 2012-11-06 11:59 智慧的老鸟 阅读(3217) 评论(0) 推荐(0) 编辑

摘要: 我的显卡配置��显卡类型:独立显��显卡芯片:NVIDIA GeForce GT 520M显存容量��1GB显存类型:DDR3 纠错显存位宽��64bit流处理器数量��48DirectX��11如果显卡槽可以插多个显卡,那么为了提高效率,可以多插几个显卡。在�€个新的环境中编程�€发,必须先了解这个环境的配置,包括处理器、存储等信息,这样编写出来的程序才能具备�€优秀的效率�€�所以本文开篇给出了我的显卡信息��1 cuda编程�€述:�€ CUDA是以C语言扩展的方式提供给程序员的,这样程序员也可以定义C语言的函数,称之为kernel。当调用kernel的时候,会由N个CUDA线程并行地执 阅读全文
posted @ 2012-11-06 11:56 智慧的老鸟 阅读(2248) 评论(0) 推荐(0) 编辑

2012年11月5日

摘要: 接着上一篇配置,未看到成果的开发环境,继续配置,回家拿GT520显卡笔记本进行试验,终于成功:1 首先在官方网站上下载cuda安装包,官网只会保留最新的开发包,目前是出道5.x系列的cuda。5.x系列不同于之前的系列两大区别——第一,集成了sdk和tool于一体,下载msi文件后直接安装,环境配置将自动完成。安装好后,你要看显卡驱动是否安装好了,如果没有安装好,你打开NVIDIA CUDA Samples Browser v5.0里面的任何程序实例,都将无法执行,因为你电脑里没有支持的显卡驱动程序。这个解决方法很简单,在你的程序目录下,打开一个让你安装的显卡驱动,点击安装即可,我是尝试了好几 阅读全文
posted @ 2012-11-05 09:57 智慧的老鸟 阅读(3267) 评论(3) 推荐(1) 编辑

2012年11月2日

摘要: GPU是显示卡的“心脏”,GPU是显示卡的“大脑”,它决定了该显卡的档次和大部分性能,同时也是2D显示卡和3D显示卡的区别依据。2D显示芯片在处理3D图像和特效时主要依赖CPU的处理能力,称为“软加速”。3D显示芯片是将三维图像和特效处理功能集中在显示芯片内,也即所谓的“硬件加速”功能。 GPU通用计算方面的标准目前有 OPEN CL、CUDA、ATI STREAM。其中,OpenCL(全称Open Computing Language,开放运算语言)是第一个面向异构系统通用目的并行编程的开放式、免费标准,也是一个统一的编程环境 提高计算机性能一般有两种思想,一种是提高GUP的时钟频率,虽然. 阅读全文
posted @ 2012-11-02 13:51 智慧的老鸟 阅读(5433) 评论(0) 推荐(0) 编辑

摘要: mysql是最基本的数据库,对于非数据库的开发人员来说,如何使用和查询等基本操作是了解和应用masql的基础,就mysql的操作作了一些实用的笔记:SELECT VERSION(), CURRENT_DATE; #查版本SELECT SIN(PI()/4), (4+1)*5;#简易计算器SHOW DATABASES;SELECT DATABASE();SELECT USER()CREATE DATABASE hfxtest;#创建数据库USE hfxtest;SHOW TABLES;DROP TABLES test1#删除表#创建表CREATE TABLE if not exists test 阅读全文
posted @ 2012-11-02 13:36 智慧的老鸟 阅读(271) 评论(0) 推荐(0) 编辑