自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 资源 (5)
  • 收藏
  • 关注

原创 GNU编译优化级别-O-O1-O2-O3

最近做一个算法的GPU加速,发现实际上使用gcc的-O3(最高级编译优化)选项,可以获得很高的加速比,我的程序里达到了3倍的样子,有时效果甚至比GPU加速好。因此小小学习了下GNU的编译优化。  附言一句,在进行调试的时候,最好关闭编译优化,不然程序自动优化,执行的步骤可能稍有变化。GNU编译器提供-O选项供程序优化使用:-O     提供基础级别的优化-O2    提供更加

2013-08-30 12:22:03 2896 1

原创 cuda学习笔记(二)通信机制

1.同步函数: -_syncthreads() -memory fence使用_threadfence()、_threadfence_block()确保执行这个函数之前,线程对全局存储或者共享存储的操作能别别的grid或者block看到。 -同步GPU与CPU:cudaThreadSynchronize(),最常见的用处是更加准确的计时或者捕获运行错误。 -Volatile关键字 某

2013-08-30 12:21:48 585

原创 cuda学习笔记(一)存储

1.一个GPU上有很多的sm(stream Multiprocessor),每个sm中包括了8个sp(stream Processor)标量流处理器,商业宣传中所说的数百个“核”,大多指的是sp的数量。隶属于同一个sm的sp共用同一套取指与发射单元。CUDA中的kernel是以block为单位执行的,一个block必须在一个sm上执行,一个sp执行一个线程,但是一个sm可以同时存在多个bloc

2013-08-30 12:21:45 672

原创 使用WordPress和暴风云平台构建自己的视频博客

题记:最近一直很想做一个自己的博客,用自己的域名,把自己的文章、照片、视频都放在上面。但是又不想用新浪博客而是希望能把网站放在自己的机器上,并且有自己独立的域名(啊哈哈),最近研究了下用WordPress来开发,还蛮好用的。另外,作为一个旅游爱好者,很希望能把自己的视频也放在博客上,考虑把视频放在暴风云上,觉得挺方便的,等我点击量上升后,能加入广告联盟赚点外块就更好啦~~一、WordPress

2015-03-05 17:29:07 1192 1

转载 机器学习(Machine Learning)&深度学习(Deep Learning)资料

《Brief History of Machine Learning》转载自:http://www.kuqin.com/shuoit/20140925/342320.html介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机、神经网络、决策树、SVM、Adaboost到随机森林、Deep Learning.《Deep Learning in Neural Netwo

2015-01-24 13:37:45 723

原创 Openwrt刷机后ssh中文乱码问题

1. 编译Openwrt时,make menuconfig->Base System->busybox->Customize busybox

2014-04-21 11:24:36 10251

原创 leetcode: Letter Combinations of a Phone Number

leetcode: Letter Combinations of a Phone Number A mapping of digit to letters (just like on the telephone buttons) is given below.vector letterCombinations(string digits) { vector resul

2013-12-10 23:24:32 560

原创 hadoop通过JNI调用cuda程序

一、通过JNI,将C写成的cuda1、 写一个java类,类中包含一个native的函数,导入.so动态链接库,注意,linux中,SiftGPU其实指的是libSiftGPU.so。package nfs.sil.image.sift.main;import java.util.List;import java.lang.reflect.*;import java.util.A

2013-12-04 15:12:02 1552

转载 并行计算模型

并行计算模型通常指从并行算法的设计和分析出发,将各种并行计算机(至少某一类并行计算机)的基本特征抽象出来,形成一个抽象的计算模型。从更广的意义上说,并行计算模型为并行计算提供了硬件和软件界面,在该界面的约定下,并行系统硬件设计者和软件设计者可以开发对并行性的支持机制,从而提高系统的性能。有几种有价值的参考模型:1、PRAM模型PRAM(Parallel Random Acc

2013-11-14 14:56:45 5101

转载 static函数与普通函数

static函数与普通函数  全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序, 当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。 而静态全局变量则限制了其作用域, 即只在定义该变量的源文件

2013-11-13 14:28:33 641

原创 寻找热门查询,300万个查询字符串中统计最热门的10个查询

寻找热门查询,300万个查询字符串中统计最热门的10个查询

2013-11-01 14:29:26 1590

原创 启发式搜索

Heuristic search:启发式搜索就是在状态空间中的搜索对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标。这样可以省略大量无谓的搜索路径,提到了效率。在启发式搜索中,对位置的估价是十分重要的。采用了不同的估价可以有不同的效果。启发中的估价是用估价函数表示的,如:f(n) = g(n) + h(n)其中f(n) 是节点n的估价函数,g(n)是在状态空

2013-10-08 15:57:53 921

转载 读写锁的实现

#include #include #include #include #include #define NUM 10 //定义循环缓冲区大小为10pthread_mutex_t wlock,rlock;pthread_mutex_t rcount_lock,wcount_lock;sem_t nowriter,wfinished;int read_count,

2013-10-07 16:44:46 497

原创 设计模式C++ 笔记二 结构型模式

1、Bridge模式用户需求发生变化,要两个算法实现功能,往常状态需要多添加一个类。Bridge将系统分成两个相对独立的部分,抽象部分和实现部分。抽象部分根据参数,运行时动态决定采用哪个子类的函数。这样再加入一个函数实现时,只需要修改实现部分,继承出一个子类,不需要修改抽象部分。//--------------Abstraction.h -----------------

2013-09-26 10:57:41 560

转载 linux下不同服务器间数据传输(rcp,scp,rsync,ftp,sftp,lftp,wget,curl)

http://blog.csdn.net/emili/article/details/6858818  因为工作原因,需要经常在不同的服务器见进行文件传输,特别是大文件的传输,因此对linux下不同服务器间数据传输命令和工具进行了研究和总结。主要是rcp,scp,rsync,ftp,sftp,lftp,wget,curl。rcprcp不是一种安全的的传输文件的方

2013-09-13 15:23:09 1365

转载 员工过生日问题

http://hi.baidu.com/mrzdw_/item/41fafbdc5279b4e6795daa26某大公司有这么一个规定:只要有一个员工过生日,当天所有员工全部放假一天。但在其余时候,所有员工都没有假期,必须正常上班。这个公司需要雇用多少员工,才能让公司一年内所有员工的总工作时间期望值最大?假设一年有 365 天,每个员工的生日都概率均等地分布在这 365 天里。

2013-09-12 16:51:30 881

原创 Catlan数笔记

reference:http://zh.wikipedia.org/wiki/%E5%8D%A1%E5%A1%94%E5%85%B0%E6%95%B0 卡塔兰数是组合数学中一个常在各种计数问题中出现的数列。以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名。卡塔兰数的一般项公式为  数列满足递推关系式:h(0) = 1, h(1)=1, h(n) = h(0)

2013-09-08 22:25:20 919

转载 求高精度幂

参见 http://www.zombie-tian.com/pages/262.htmlPOJ 1001 求高精度幂题目描述:对数值很大、精度很高的数进行高精度计算是一类十分常见的问题。比如,对国债进行计算就是属于这类问题。现在要你解决的问题是:对一个实数R( 0.0 n),其中n  是整数并且 0 解题思路:很简单的一道高精度题目。话不多说直接上代码,

2013-09-08 16:21:43 551

原创 Selenium自动测试与原理 笔记

Selenium是ThoughtWork公司专门为 Web 应用而开发的自动化测试工具,现由OpenQA托管和维护。Selenium 的核心,也称 browser bot,是用 JavaScript 编写的。这使得测试脚本可以在受支持的浏览器中运行。browser bot 负责执行从测试脚本接收到的命令,测试脚本要么是用 HTML 的表布局编写的,要么是使用一种受支持的编程语言编写的。

2013-09-05 21:34:23 1394

原创 求整数随机数构成的数组中找到长度大于=3的最长的等差数列

求整数随机数构成的数组中找到长度大于=3的最长的等差数列输出等差数列由小到大: 如果没有符合条件的就输出[0,0]格式:输入[1,3,0,5,-1,6]输出[-1,1,3,5]要求时间复杂度,空间复杂度尽量小使用两个vector保存数据,先进行排序,需要O(nlogn)的时间,再进行查找。查找使用剪枝降低检索效率。最坏情况下需要O

2013-09-04 11:34:50 1026 1

原创 有向连通图的割点

连通分量:无向图 G 的一个极大连通子图称为 G 的一个连通分量(或连通分支)。连通图只有一个连通分量,即其自身;非连通的无向图有多个连通分量。强连通图:有向图 G=(V,E) 中,若对于V中任意两个不同的顶点 x 和 y ,都存在从x 到 y 以及从 y 到 x 的路径,则称 G 是强连通图(Strongly Connected Graph)。相应地有强连通分量(Strongly Conne

2013-09-01 22:01:30 2082

原创 字符串连接

有n 个长为m+1 的字符串,如果某个字符串的最后m 个字符与某个字符串的前m 个字符匹配,则两个字符串可以联接,问这n 个字符串最多可以连成一个多长的字符串,如果出现循环,则返回错误 //-------------------------------------这道题可以使用图的方法来求解,能相连的点看成是中间有一条连线,最后简化为先构建一个图,然后从图中查找最长路径,如果出

2013-09-01 17:27:03 598

原创 STL学习笔记之 算法(构造堆等)

算法大致分为如下四类:        1、非可变序列算法:指不直接修改其所操作的数据元素的值或顺序的算法;        2、可变序列算法:指可以修改它们所操作的数据元素的值或顺序的算法;        3、排序算法:包括对序列进行排序和合并的算法、搜索算法以及有序序列上的集合操作;        4、数值算法:对容器的数据元素进行数值计算。for_each()算法

2013-09-01 17:09:10 868

原创 STL 学习笔记 之 函数对象

C++ STL,三大核心组件:Containers, Iterators以及Algorithms,即容器,迭代器和算法。另外还一种重要组件,即函数对象(FunctionObject r)。函数对象又称为仿函数(functor)。函数对象其实就是一个行为类似函数的“东西”,它可以没有参数,也可以带有若干参数,其功能是获取一个值,或者改变操作的状态。在C++程序设计中,任何普通函数和任何重载了函数

2013-09-01 16:43:20 577

原创 STL学习笔记 迭代器

任何一种容器都可以定义三种类别的迭代器1、   container::iterator这种迭代器可以以“读/写”模式遍历容器诸元素,并且自身可以改变,例如:2、  container::const_iterator这种迭代器只能以“读”模式遍历容器诸元素(元素值不可变),并且自身可以改变,例如:for(vector::const_iteratorciter=ivec.b

2013-09-01 16:24:51 573

原创 STL学习笔记

STL主要包含容器、算法、迭代器三大核心部分常用的容器和容器适配器对应的头文件,容器适配器可以看做由其他容器实现的容器容器类别数据结构(容器类)实现头文件序列式容器向量(vector)双向队列(deque)双向链表(list)

2013-08-30 21:39:04 560

原创 STL中Vector内存申请

Vector在系统中存储在一片连续内存中,支持快速的随机访问,vector容器的元素以连续方式存放,每一个元素都紧挨着前一个元素存储。设想一下,当vector添加一个元素时,为了满足连续存放这个特性,都需要重新分配空间、拷贝元素、撤销旧空间,这样性能难以接受。Vector中初始化时是不分配空间的,之后每次遇见空间不足,都会重新分配空间,新的空间大小是原来的两倍。例如插入1个元素时,分配1的

2013-08-30 17:08:43 6135

转载 Mesos的分析4 --- 支持Hadoop任务级调度

原文地址:--- 支持Hadoop任务级调度">Mesos的分析4 --- 支持Hadoop任务级调度作者:kloseHadoop的调度示意图如下所示:--- 支持Hadoop任务级调度" TITLE="[转载]Mesos的分析4 --- 支持Hadoop任务级调度" />在Mesos资源管理平台上,启动Hadoop计算框架的时候,只是启动了它的JobTracker,而并没有启动TaskT

2013-08-30 12:22:11 615

原创 仿射变换函数

近期要用到,所以记一下fproj by Lionel Moisan" />Name fproj 使用插值的方法来进行仿射变换或者透视变换fproj by Lionel Moisan" />Command Synopsis fproj [-x sx][-y sy][-b bg][-o o][-p p][-i] in out X1 Y1 X2 Y2 X3 Y3 [x4

2013-08-30 12:22:09 987 1

原创 CUDA纹理内存的使用

首先,纹理存储器是一种只读存储器,如果一个kernel中更改了绑定到纹理存储器的数据,纹理缓存中的数据可能并没有被更新,后来读取的数据就可能是错误的,只能重新启动一个kernel,才会更新纹理缓存。对纹理引用的声明不能写成数组!最简单的用法:函数外声明: texture texConstSrc;----------函数内-----cudaBindTexture(NULL, texC

2013-08-30 12:22:07 2359 1

原创 RedHat下修改终端目录配色

在控制台下,用ls,就会发现,shell将不同类型的文件项目显示为不同的颜色。者可以提高效率,不用ls-l便能大概的把各个文件的类型情况了解一下。 你有没有想过更改这个着色配置呢? 其实,在/etc下有一个DIR_COLORS的文件,这是一个着色控制的模版。现将这个模版拷出来。如果想让这个配置在root用户下生效,边拷到/root下;如果想在abc(例子)用户下生效,便拷到/ho

2013-08-30 12:22:05 1635

原创 cudaerror解决办法

cuda中有cudaError_t这个类别,可以记录cuda错误。所有的cuda库函数,几乎都返回一个cudaError_t。《GPU高性能编程》中使用HANDLE_ERROR宏函数,处理每个函数返回的cudaerror static void HandleError( cudaError_t err,constchar *file,int line ) {         if (

2013-08-30 12:22:00 13681

原创 CentOS安装OpenCV2.4.3

(1)下载OpenCV源码,并编译安装当前最新的版本是OpenCV-2.4.3,可以从http://sourceforge.net/projects/opencvlibrary/上下载。OpenCV的编译方式有两种,一种是传统的./configure ; make ; makeinstall,这种方式适用于OpenCV-1.0,相应的编译过程可以参见这篇文章:http://www.ope

2013-08-30 12:21:58 1134

原创 Ubuntu上安装cuda

1.      安装对应的GPU驱动,输入nvidia-settings,如果显示没有命令,需要安装对应的驱动。安装驱动一般要求关闭x server。通过lspci查看你的机器上的GPU型号,之后在在官网杀光你下载合适的驱动:http://www.nvidia.com/Download/index.aspx?lang=en-us安装的时候要先进入BIOS设置使用独立显卡。删除已经安

2013-08-30 12:21:56 752

原创 GCC makefile

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><p align="left" style="line-height: 25px; font-family: Verdana, Aria

2013-08-30 12:21:54 552

原创 【转载】Linux&nbsp;安装OpenCV

2009年12月07日 星期一 21:37参考文献1:http://opencv.willowgarage.com/wiki/InstallGuide_Linux参考文献2:http://opencv.willowgarage.com/wiki/InstallGuide我使用的环境是:ubuntu9.10。这理仅简短的描述如何在ubuntu上安装OpenCV,在ubuntu上安

2013-08-30 12:21:52 461

原创 Linux常用命令收藏

修改/etc/profile  source profilerm -f 删除目录vim G 光标移动至文件末端 p 复制 d删除 d3d 删除3行netstat -tnl查看端口linux修改文件所属用户和组使用chown命令可以修改文件或目录所属的用户:      命令:chown 用户 目录或文件名      例如:chown qq /home/qq (把home目录

2013-08-30 12:21:50 500

原创 使用Hadoop遇到问题笔记

50030端口被占用的情况:  2011-05-1 14:30:43,931 INFO org.apache.hadoop.http.HttpServer:Port returned by webServer.getConnectors()[0].getLocalPort() beforeopen() is -1. Opening the listener on 50030  2011

2013-08-30 12:21:43 795

原创 基于图像内容检索学习笔记

<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt; mso-char-indent-count:0;mso-list:l0 level1 lfo1;">一、<span style="font-size: 7pt; line-height: normal; font-family: 'Times

2013-08-30 12:21:41 584

原创 ubuntu12.04下eclipse无法打开:Cou…

<p style="word-break: break-all; word-wrap: break-word; color: rgb(55, 12, 12); font-family: 'Microsoft Yahei', Arial, Verdana, SimSun, sans-serif; font-size: 16px; line-height: 24px;"><span style=

2013-08-30 12:21:39 592

C#完全手册 面向对象C#

分为五部分,一是概述、二是C#程序设计基础,三是面向对象C#,四是深入了解C#,五是附录部分。很好的入门资料,希望能给大家帮助

2011-04-04

Java基础教程 Java

很好的学习Java的资源,入门使用.包括Java语言介绍、简单的程序等。。。

2011-04-04

windows网络编程技术

本书专门讨论Windows网络编程技术,覆盖Windows 95/98/NT 4/2000/CE平台。内容包括NetBIOS和Windows重定向器方法、Winsock方法、客户端远程访问服务器方法。本书论述深入浅出、用大量实例详解了微软网络API函数的应用。配套光盘包含了所有实例代码,方便读者使用。本书适合中、高级程序设计人员以及网络设计与管理人员参考。

2009-12-16

希尔、快速几种排序算法

几种排序算法的介绍,很详细,包括快速排序、直接排序、二分插入、归并排序等

2008-11-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除