CUDA中文教程03之心得体会

2024-05-27

CUDA中文教程03之心得体会(精选3篇)

篇1:CUDA中文教程03之心得体会

CUDA中文教程03之心得体会

定义在GPU上的变量:

1、使用关键字__device__ __local__ int X,则意味着该变量是定义在thread中的,它的生存周期跟它所在的thread一致。实际上定义为__local__ 的变量会存在global memory 中,所以速度也会很慢,一般不采用__local__关键字定义变量。关键字缺省情况下的变量是存在register中的,速度比存在global memory中快,只有当register存满了变量之后,系统才会自动把变量定义为__local__的,所以不要随意的采用__local__关键字,这其实是下下策。

2、使用关键字__device__ __shared__ int X,则意味着该变量是定义在block中的,它的生存周期跟它所在的block一致,并且为该block里的512个thread共享,都可以访问到这个变量。

3、如果缺省了第二个关键字,即__device__

int X,则是定义在grid中的,不仅在GPU中可见,CPU也可见。

4、使用关键字__device__ __constant__ int X,则意味着该变量是定义在grid中的,是一常量,在run的过程中不会改变其值,且GPU及CPU均可见,在CPU中可见,是因为CPU要把该值传入GPU中。

*使用这些关键字时,如果是用了__local__,__shared__,__constant__,则不必要在前面加__device__,系统就会知道定义的是GPU上的变量,如果是定义了global memory 的变量,则需写__device__关键字即可。

*自动变量,即没有任何限定词的,会自动的放到register中,除了数组,数组会存在local memory中,所以当声明数组时,必须存到thread中去run。怎样选择关键字呢?

第一步,考虑该关键字是否被CPU可见:“是”,进入第二步;“不是”,进入第三步。第二步,如果要被CPU可见,则选择关键字__global__或者__constant__。而且在声明变量时,必须写在所有函数体外,保证全局性。

第三步,如果不被CPU可见,则选择关键字__shared__或__local__或者缺省不写关键字(存在register中),这时变量声明必须在kernel 函数中。

shared memory 是一个很重要的概念,因为如果我们每次都去access global memory的话,就要很久的时间,所以我们要提高速度,就得想怎样换到shared memory中去。这里我们采用的是tile data,即把数据切片的方法,变成一个个subset,使其刚好满足shared memory的大小,处理完数据之后再从shared memory传到global memory去。*指针只能指向定义在global memory中的函数或变量。

篇2:CUDA中文教程03之心得体会

 

WordPress 中文教程(v2)之5 - 常用软件

 

。今天,我们来给大家介绍在使用 WordPress 建设独立博客过程中,较为常用的几款软件,以及这些软件的使用方法。

对于一些先进的主机管理管理系统,比如我们 WordPress 主机所使用的 CPanel ,只要有一个网络浏览器,就可以完成所有的博客建设工作,并不需要额外的其他软件。但只用 CPanel 的话效率并不高,而且有些主机的管理软件功能并不完整,需要一些相关辅助软件。这里,我们本着精简和免费的原则,来给大家介绍几款使用的软件。

在建立个人博客或者网站过程中,我们一般需要到的软件有:网络浏览器(如 Firefox ),FTP 客户端(如 FileZilla ),文本编辑器(如 Notepad++ )。如果你想要在自己的计算机上建立 WordPress ,需要一个本地 PHP 软件包,我们这里推荐的是 XAMPP ;如果你的主机支持 SSH 安全连接,putty 则是个不错的选择。

此外,我们还推荐你使用专业的客户端软件来写博客,比如 Windows Live Writer ,免去 WordPress 后台效率低下之苦,提高你的博客效率。

网络浏览器

对于网络浏览器,我想大家都很熟悉了。我们平时上网都离不开网络浏览器。台式机和笔记本上比较常用的浏览器有 Ineternet Explorer (简称 IE,推荐使用 IE7 或更高版本);Firefox(开源免费的浏览器,简称 fx,推荐使用 fx3 或更高版本),Chrome(Google 的浏览器,谐音臭美),Safari(苹果机上的浏览器),Opera (一款小巧的浏览器)。

除了这些比较常用的浏览起之外,还有许多使用 IE 内核的浏览器,比如 Maxthon ,世界之窗(The World),以及腾讯 TT 等,也都有各自的用户群。

网络浏览器的多样性既带来了便利(想象微软连续几年不更新IE6的可怕情况吧),也带来了麻烦(现在设计一个网页要兼容多种浏览器,力图实现一致的表现效果)。

Firefox 浏览器对网络标准支持比较好,WordPress 开发团队对这个浏览器也有特殊的偏好,WordPress 在 Firefox 后台下运行的速度要比 IE 下运行效率更高。我们一般推荐大家使用 Firefox 浏览器。大家对浏览器的使用都已经很熟悉了,这里就不多介绍。

FTP 客户端

FTP 是文件传输协议(File Transfer Protocol)的缩写,是互联网的一个重要的基础协议。FTP 包括服务器端和客户端,分别由不同的服务器端软件和客户端软件。对于我们主机用户而言,服务器端都已经由主机服务商设置好了,我们只需要采用 FTP 客户端上传文件即可,我们这里主要给大家介绍客户端的软件。

网络浏览器(包括 Fx, IE 等)也可以充当客户端软件。浏览器默认的协议是 http ,如果你要使用浏览器来访问 FTP 服务器,需要在浏览器地址栏里输入 ftp 协议。

FTP 服务器地址的标准格式是 ftp://username:password@ip:port/ 。这里

ftp://表明访问采用 ftp 协议。

username是 ftp 的用户名,password是对应的密码;

如果服务器支持匿名访问,这两项可以省略,

一般来说,虚拟主机不应该匿名连接,服务商会提供相应的用户名和密码。

ip是指服务器的地址,也可以是域名。

port是 ftp 服务的端口,默认为 21 ,此时可以省略,服务商特别使用其它端口时除外。

不过,使用浏览器充当 FTP 客户端软件有很多限制,我们还是建议使用专业的 FTP 客户端软件。常用的 FTP 客户端软件有 FileZilla,FlashFXP,CuteFTP,FTPRush 等,这里我们以免费开源的 FileZilla 客户端软件(FileZilla 也有服务器软件,可用于架设 FTP 服务器)为例,给大家介绍一下如何使用 FTP 客户端软件的使用。其他软件界面略有不同,但主要功能都大同小异。

我们首先打开 FileZilla ,这是其启动后的界面:

我们可以在上述的界面里直接输入 FTP 的主机、用户名、密码和端口等信息,然后点击【QuickConnect】进行登录。不过,每次这样登录 FTP 都比较麻烦,我们可以借助起站点管理器,将这些信息输入进去,以后每次登陆则不需要重复输入帐户信息。

点击【File】->【Site Manager】进入站点管理器,我们可以在这里组织管理我们的 FTP 站点,

《WordPress 中文教程(v2)之5 - 常用软件》()。我们按照下图输入 FTP 的相关信息,FTP 信息由你的主机服务商提供:

如果 FTP 使用的默认21端口,则不需要填写。服务器类型选择 FTP ,登录类型选择 Normal (正常)。注释框里可以随意输入部分内容,比如 FTP 的密码,或者 FTP 的用途等。

除了这些基本的设置,其他有些设置我们有时候也可能会用到,这里也顺便给大家介绍一下。先看看高级设置【Advanced】里的内容:

高级设置里服务器选项:是选择服务器的操作系统,这个可以默认值即可,客户端软件会自行判断。

默认本地目录:当你登录到这个服务器的时候,FTP 界面左侧的本地目录会自动跳转到该目录。

默认远程目录:当你登陆到ftp服务器时,ftp 界面右侧的远程目录会自动跳转到该目录。

如果你经常对特定目录进行操作,则设置默认本地目录和默认远程,可以免去繁琐的手动跳转之苦。如果不设置此项,登陆 ftp 之后左侧一般保留本地上次推出 ftp 软件时的目录,右侧则登陆到 ftp 服务器的根目录。

时差调整:假如你的服务器和你不在同一个时区,可以在这里输入时差。不过这个功能我以前也没有注意过,一直没有调整。

下面我们看看传输设置【Transfer setting】里的内容:

这里包括服务器传输模式的选择。FTP 服务器传输有主动模式和被动模式。简单的说,主动模式是指 FTP 服务器主动连接 FTP 客户端的数据端口,进行传输;被动模式是 FTP 服务器被动地等待 FTP 客户端连接自己的数据端口,进行传输。一般情况下,使用 FTP 客户端软件的默认设置即可。但是如果你觉得 FTP 速度比较慢,可以换不同的模式测试一下。尤其是当你处于防火墙之后的时候,被动模式连接效果往往好一些。

限制同时连接的进程数:有些 FTP 服务器为了防止资源被滥用,会限制同时连接的进程数,会限制同一个 ip 的连接数;而许多 FTP 客户端软件为了达到最大的传输速度,则总是将同时连接数设置的很大。这样很容易导致ip被封禁。尽管对于虚拟主机来说,主机服务商很少限制连接数,但仍然建议大家将最大连接数设置为1。

最后一个选项是字符设置【Charset】,这里我们不需要进行修改,保持默认值即可。

文本编辑器

文本编辑器是我们经常使用的工具软件,从微软自带的记事本,到功能强大的 UltraEdit,各种文本编辑器数不胜数,各有各的长处。我们在使用 WordPress 建站的过程中,使用到文本编辑器的机会并不太多,也并不太需要特殊的文本编辑器。唯一需要提到的是,由于 php 语言本身并不支持 utf8 ,具体原因我们可参考前文:UTF 8 编码的困局。为了便于将文件保存为不同格式,我们希望你所使用的编辑器能够区分这 utf8 bom 和 utf8 no bom 格式。

我们给大家推荐一款免费开源的文本编辑器 NotePad++ ,和一款收费软件 EmEditor (在校学生可以给作者发信,申请正版注册码)。

NotePad++ 的修改编码方式:

EmEditor 的修改编码方式:    和网络浏览器一样,文本编辑器的使用非常简单,这里就不过多介绍了。

SSH 安全连接软件

如果你的主机支持 SSH 功能,那么你也可以使用 ssh 客户端软件来登录你的主机。比较常用的 ssh 客户端登录软件是 putty 。

本地 PHP 安装包

在本地计算机上建立一个 PHP 安装包,可以允许你在本地计算安装 WordPress 。当然,这并不是必须的,但这种方式让你更方便地进行调试 WordPress 和修改 WordPress 的主题模板,而不影响你的正式站点的运行。

这种集成了 Apache + PHP + MySQL 的安装包很多,我们这里给大家推荐的是我们自己所喜欢的一款:XAMPP。网友们可以自己去 XAMPP 进行下载,了解这个软件,非常简单易用。我们将在以后的课程中讲解这个软件的使用。

博客客户端

WordPress 本身发展到 2.7 ,应该说其撰写博客的功能越来越强大了。但每次写博客都要登录 WordPress 的后台,忍受 WordPress 缓慢的速度,对于经常写博客的人来说,确实很不爽。

博客客户端软件正是解决了这个问题,可以让你更加快捷地撰写博客,而又不必忍受 WordPress 后台的速度。常用的博客客户端软件有很多,我们这里给大家推荐 Windows Live Writer 和 ScribeFire 。具体的使用步骤我们也将在今后具体讲述。

篇3:CUDA中文教程03之心得体会

 

WordPress 中文教程(v2)之1 - 网络基础

 

。在互联网出现之前,传统的媒体则被少数人仅仅控制,草根阶层则鲜有表达和表现自己的渠道。而随着互联网的出现,邮件列表、新闻组、BBS、个人网站等,我们可以通过越来越多的途径来表达和表现我们自己。而个人博客的出现,则让个人发出声音的门槛降至更低。只有你会使用电脑,稍加学习,就可以使用现有的博客软件,比如 WordPress 来建立自己的博客。

WordPress 是一个基于 GPL 协议的开源软件,任何人都可以自由使用。从今天开始,我们将给大家讲解博客软件 WordPress 的使用。由于查询此教程的网友大部分都是对网络知识了解较少的网友,因此,我们的教程也尽量写得比较基础,比较简单,力求实用。同时,如果你对 WordPress 某个地方不清楚,也请告诉我们,我们将会根据大家的反馈来不断完善此教程。

博客实际上也是一种网站。因此,建立一个博客,实际上与建立一个网站的情形,大体上基本一致。在我们学习搭建自己的博客之前,我们先来看看,博客(网站)是怎么工作的呢?

网站是被我们打开的?

这个问题很简单,只有你有一个可以上网的设备(常见的台式计算机、笔记本、手机等),有一个网络浏览器(比如 Windows 自带的 IE,或者 Firefox,苹果电脑上的 Safari,手机上的 Opera 等),以及一根网线(无线网络连线都不需要,只要能连接即可),那只要你轻轻地在浏览器的地址栏里输入想要访问的网址(比如 www.kuqin.com ),那么稍等片刻,浏览器就会打开你要访问的页面。

那么,在你输入网址之后,网页打开之前,互联网做了哪些工作呢?简单的说,大概可以分为以下几步:

计算机向 DNS 服务器寻求解析网址,获得域名的真实 ip 地址;

获得域名的真实 ip 地址之后,于是开始通过网上的层层路由、网关,开始寻找使用这个 ip 的服务器;

找到服务器,获取网站上的数据;

将带回来的数据库,带回到你的计算机,显示出来,

《WordPress 中文教程(v2)之1 - 网络基础》()。

当然,我们这个是大大简化了的互联网访问流程的模型,实际情况要比这个复杂得多。不过,幸运的是,大部分工作都已经有无数的网络工程师做好,我们无需知晓。我们只要知道前面这个基本流程,就基本够了。

下面我们来简单了解一下上面步骤中所提到的基本概念。

博客建设涉及的几个基本概念

前面我们提到,在我们建设自己的博客网站过程中,需要了解几个基本的概念。这几个基本的概念分别是,IP 地址,域名,服务器。这里我们来分别给大家简单解释一下。

IP 地址:很多时候我们也简称为 ip 。IP 是 Internet Protocol 互联网协议的缩写,这里指具体的 ip 地址。比如 kuqin.com所对应的 ip 地址是 74.53.105.242 。一般来说,当你购买虚拟主机(服务器)之后,主机服务商都会给你提供一个 ip 地址供使用。

域名:在互联网之初,并没有域名这个概念。域名最初是要解决 ip 过于难记的问题,现在域名已经成为网站的重要品牌资源。的确,wpchina.org 要比 74.53.105.242 容易记忆得多,也容易建立自己的品牌。域名是有限的网络资源,常见域名有 com/net/org/cn/info/cc/name/mobi 等许多种,域名无法一次性买断,需要每年向域名服务商付费租用。

服务器(主机):是用来存放、运行我们网站或者博客程序的计算机。任何联网电脑都可以当作服务器,包括你的个人电脑。但是为了保证网站的速度、稳定和可靠,服务器一般都运行于高档机房。我们可以向主机服务商租用服务器(主机)。

除了服务器之外,我们个人博客更为常用的是虚拟主机。这是因为一个独立服务器往往成本比较高,很多小用户往往用不起,服务商就是用一些软件将独立的服务器划分为多个小的帐户,这每一份都可以建立一个或者数个网站,相当于一个独立的主机,但却并不是真正的独立逐级,因此被称为虚拟主机。虚拟主机极大地降低了普通网友使用主机建站的成本,因此广受欢迎。

下一次,我们将介绍域名和主机使用过程中需要注意的问题。

上一篇:上海交通大学理论力学下一篇:经信委安全生产工作总结