zoukankan      html  css  js  c++  java
  • CUDA编程->CUDA入门了解(一)

          安装好CUDA6.5+VS2012,操作系统为Win8.1版本号,首先下个GPU-Z检測了一下:

          

         看出本显卡属于中低端配置。关键看两个:

         Shaders=384。也称作SM。或者说core/流处理器数量,数量越大。运行并行线程越多,单位时间计算量也就越大。

         BusWidth=64Bit,这个越大,数据的处理速度也就越快


         接下来看看CUDA的布局:

        

           看到这个布局,也就知道了怎样配置到VS2012中去,跟OpenCV差点儿相同,仅仅是中文资料较少,所以须要关注下一个目录里的东东。

          

    看到这个,就Happy了。

    自学靠个人,本人的想法是先学CUDA_Runtime_API,CUDA_Driver_API,CUFFT_Library,Thrust库。

    贴一段代码:

    #include "stdafx.h"
    #include <iostream>
    #include <stdio.h> 
    #include "cuda_runtime.h"
    #include "device_launch_parameters.h"
    #include "device_functions.h"
    #include "cuda.h"
    
    #include "thrust/host_vector.h"
    #include "thrust/device_vector.h"
    #include "thrust/copy.h"
    #include "thrust/fill.h"
    #include "thrust/sequence.h"
    
    #define  mask_width  3
    #define  mask_height 3
    #define width 16
    
    
    using namespace std;
    


    void test2()
    {
    	//////test1/////
    	thrust::host_vector<int> v(4);
    	v[0]=12;
    	v[1]=15;
    	v[2]=34;
    	v[3]=45;
    	cout<<"v size is :"<<endl;
    	cout<<v.size()<<endl;
    	for(int i=0;i<v.size();i++)
    		cout<<v[i]<<endl;
    
    	/////test2//////
    	thrust::device_vector<int> D(10,1);
    	thrust::device_vector<int> E(20,1);
    	thrust::device_vector<int> H(D.begin(),D.end());
    
    	//设置 7个元素的值为9
    	thrust::fill(D.begin(),D.begin()+7,9);
    	//设置H中元素分别为0,1,2,3,4,5......
    	thrust::sequence(H.begin(),H.end());
    	//将H拷贝到E中
    	//thrust::copy(H.begin(),H.end(),E.begin);
    	for(int i=0;i<H.size();i++)
    		cout<<H[i]<<endl;
    
    
    }


    int main()
    {
    
    	test2();
    	system("pause");
    	return 0;
    }
    
    调试窗体例如以下:


    CUDA的详细学习在兴许补充。

    。。




           

  • 相关阅读:
    Spring AOP概念理解 (通俗易懂)【转】
    【转】Spring AOP四种实现方式Demo详解与相关知识探究
    call的理解
    队列的执行顺序
    数组去重的方法
    要动态改变层中的内容的方法
    HTML5有哪些新特性,移除了哪些元素?如何处理HTML5新标签的浏览器兼容性问题?如何区分HTML和HTML5
    行内元素有哪些?块级元素有哪些? 空(void)元素有那些?
    HTML5头部为什么只需要写<!DOCTYPE HTML>
    link和@import引入外部样式的区别
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5269920.html
Copyright © 2011-2022 走看看