自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

張行之的专栏

有道無術,術尚可求。有術無道,止於術

  • 博客(30)
  • 资源 (1)
  • 收藏
  • 关注

原创 CUDA程序性能分析-矩阵乘法

矩阵乘法非常适合在GPU上并行运行,但是使用GPU并行后能获得多大的性能提升?本文将通过一些实验分析CUDA程序的性能。本文主要记录了本人测试CUDA程序性能的结果,并对结果进行了分析,从测试结果和分析可以为并行程序和优化性能带来一些启示。

2016-12-02 21:05:56 3838

原创 使用Python写CUDA程序

本文讲述了两种使用Python编写CUDA程序使用的方式,包括Numba和PyCUDA,并对比分析了这两种方法。

2016-09-26 20:59:28 20331 3

原创 CUDA并行算法系列之FFT快速卷积

本文首先简要介绍了卷积运算,然后使用Python实现了卷积运行的代码,接着讨论了基于FFT的快速卷积算法,并使用Python实现了FFT卷积,接着对直接卷积和基于FFT的快速卷积算法的性能进行了分析,从实验结果可以看出,FFT卷积相比直接卷积具有更快的运行速度。最后,基于CUDA实现了直接卷积算法,并且使用cuFFT和thrush在CUDA平台实现了基于FFT的快速卷积算法。

2016-09-21 11:53:26 7602

原创 CUDA并行算法系列之规约

CUDA并行算法系列之规约前言规约是一类并行算法,对传入的N个数据,使用一个二元的符合结合律的操作符⊕,生成1个结果。这类操作包括取最小、取最大、求和、平方和、逻辑与/或、向量点积。规约也是其他高级算法中重要的基础算法。除非操作符⊕的求解代价极高,否则规约倾向于带宽受限型任务(bandwidthbound)。本文将介绍几种规约算法的实现,从两遍规约、block的线程数必须为2的幂,一步一步优化。

2016-09-21 11:49:54 5565 2

原创 混合语言编程:启用CLR(公共语言运行时编译)让C#调用C++

让C#调用C++前言关于混合C#和C++的编程方式,本人之前写过一篇博客(参见混合语言编程:C#使用原生的Directx和OpenGL),在之前的博客中,介绍了在C#的Winform和WPF下使用原生的Direct和OpenGL进行绘图,主要使用的方式是声明一个函数为导出函数,然后就可以在C#中使用这个函数。

2016-09-21 11:41:06 7472 1

原创 【CUDA并行程序设计系列(4)】CUDA内存

【CUDA并行程序设计系列(4)】CUDA内存前言CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和CUDA Toolkit Documentation的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。

2016-09-21 11:38:56 1620 1

原创 【CUDA并行程序设计系列(3)】CUDA线程模型

前言CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和CUDA Toolkit Documentation的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。本系列目录:【CUDA并行程序设计系

2015-11-03 21:55:37 1037 1

原创 【CUDA并行程序设计系列(2)】CUDA简介及CUDA初步编程

CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和CUDA Toolkit Documentation的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。本文对CUDA进行简单介绍,并通过实例代码演示怎么编写在GPU上运行的代码

2015-11-03 21:52:28 1295

原创 【CUDA并行程序设计系列(1)】GPU技术简介

摘要: CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和CUDA Toolkit Documentation的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。本文对GPU技术进行简单介绍。

2015-10-24 10:15:09 1499

原创 关于CUDA的一些学习资料

最近看了一些关于CUDA方面的资料,并粗略地浏览了两本关于CUDA和GPGPU的书(《GPGPU编程技术:从GLSL、CUDA到OpenCL》和《CUDA并行程序设计:GPU编程指南》),对于CUDA目前本人也是处于正在入门的阶段。在此汇编CUDA的学习资料,方便以后的学习。关于GPGPU所谓GPGPU,就是把强大的图形处理器应用于日益复杂的计算工作。

2015-10-17 22:13:15 6346

原创 源码阅读:SDWebImage

SDWebImage是一个开源的iOS第三方库,主要用于下载并缓存网络图片,在我的博文iOS网络资源缓存ZCLURLCache·上篇提到过SDWebImage。它提供了UIImageView、MKAnnotationView、UIButton的categories(分类),支持网络图片的加载与缓存,其中UIImageView应该是使用最广泛的。本文从源码的角度讨论SDWebImage的下载和缓存的实现。

2015-09-08 19:54:54 743

原创 Python代码登录新浪微博并自动发微博

写个成功程序来帮我发微博。这个程序要满足以下要求:自动化,自动登录微博,自动发微博。微博内容要有意义,不能是随机生成的字符。可以设置每隔一段时间发一条微博,频率不能太快,当然也不能太慢。于是,就诞生了这个程序,代码使用纯Python实现,没有使用微博SDK,主要是模拟HTTP操作。

2015-08-28 16:50:49 5011

原创 模拟HTTP请求实现网页自动操作及数据采集

网页可分为信息提供和业务操作类,信息提供如新闻、股票行情之类的网站。业务操作如网上营业厅、OA之类的。当然,也有很多网站同时具有这两种性质,像微博、豆瓣、淘宝这类网站,既提供信息,也实现某些业务。普通上网方式一般都是手动操作(这个不需要解释:D)。但有时候人工手动操作的方式可能就无法胜任了,如爬取网络上大量数据,实时监测某个页面的变化,批量操作业务(如批量发微博,批量淘宝购物)、刷单等。

2015-08-15 18:05:03 24855 1

原创 iOS开发之Objective-C(Swift)与JavaScript交互·WebViewJavascriptBridge使用篇

在iOS原生应用程序加载网页来实现部分界面或功能已不是什么稀奇的事了。很多应用都使用了HTML+CSS+Javascript+Native APP的方式来开发,如Fackbook、微信和支付宝等。

2015-08-06 11:33:11 1532

原创 iOS开发之蓝牙4.0 BLE开发

物联网时代的到来,智能硬件层出不穷。蓝牙低功耗技术(BLE,Bluetooth Low Energy)使得蓝牙4.0的应用越来越广泛,比如小米手环就是使用蓝牙4.0来传输数据。在蓝牙4.0之前,iOS的蓝牙功能作为私有,开发者只能使用蓝牙开发联机游戏而不能和第三方蓝牙设备通信

2015-07-22 17:47:41 3427

原创 用遗传算法求解TSP问题

原文链接: http://zh.5long.me/2015/genetic-algorithm-on-tsp/遗传算法简介关于遗传算法,首先看一段维基百科的解释: 遗传算法是模仿自然界生物进化机制发展起来的随机全局搜索和优化方法,它借鉴了达尔文的进化论和孟德尔的遗传学说。其本质是一种高效、并行、全局搜索的方法,它能在搜索过程中自动获取和积累有关搜索空间的知识,并自适应的控制搜索过程以求得最优解。

2015-05-25 17:58:02 39699 11

原创 用Python做数学计算之基础计算

原文链接: http://zh.5long.me/2015/python-math-1/摘要(Abstract)本文介绍使用Python来做数学计算,在学习和工作中,经常会遇到一些数学计算的问题。一般人会使用计算器软件,不得不说,计算器太难用了。专业人士可能会使用更强大的工具,如Matlab,但这种重量级工具有时可能并不适用。本文打算使用一个轻量级的工具Python来做计算。准确来说Python并不

2015-05-06 18:11:57 49279

原创 C#调用Python脚本并使用Python的第三方模块

C#调用Python脚本并使用Python的第三方模块原文链接: http://taonull.github.io/2015/dotnet-call-python/本文谢绝转载,如需转载需征得作者本人同意,谢谢。2015 年1 月19 日 前言InronPython是一种在.NET和Mono上实现的Python语言,使用InronPython就可以在.NET环境中调

2015-01-20 19:41:32 38702 12

原创 从《庖丁解牛》谈谈学习编程

原文链接: http://zh.5long.me/2014/paodingjieniu/本文谢绝转载,如需转载需征得作者本人同意,谢谢。前一段时间读了《庄子》中的《庖丁解牛》,不说有多少感悟,联系到我们学习软件开发的一些方法技术,记录在此,一来巩固自己所学的知识,二来与大家分享一些个人体会。若有人能从中获益,那也是功德一件;若不得获益,茶余饭后,闲聊

2014-12-28 15:46:19 1565

原创 敏捷技能修炼之小舵板之三:代码未动,测试先行

原文链接: http://zh.5long.me/2014/Agile-Development-test-first/上一篇:敏捷技能修炼之小舵板之二:分离构造和使用:http://zh.5long.me/2014/Agile-Development-separate-build-use/前言随着敏捷方法的出现,测试驱动开发(Test-Driven Development,

2014-11-23 17:36:39 890

原创 敏捷技能修炼之小舵板之二:分离构造和使用

原文链接: http://zh.5long.me/2014/Agile-Development-separate-build-use/上一篇:敏捷技能修炼之小舵板之一:意图导向编程 http://zh.5long.me/2014/Agile-Development-Programming-by-Intention/前言软件开发从面向过程向面向对象发展的时候,给开发带来了不少

2014-11-14 15:16:54 826

原创 敏捷技能修炼之小舵板之一:意图导向编程

class="journal-title">敏捷技能修炼之小舵板之意图导向编程<spanclass="author">  class="the-article"> id="section">前言 最近想学习敏捷开发,在看一本书,叫《敏捷技能修炼-敏捷软件开发与设计的最佳实践》。正如书中所说,两个同等经验的程序员,在效率和质量上可能

2014-11-09 15:18:15 1087

原创 Python实现k-means算法

k-means算法描述如下:—输入:期望得到的簇的数目k,n个对象的数据D—输出:k个簇的集合—方法: (1)选择k个对象作为初始的簇的质心 (2)repeat (3)计算对象与各个簇的质心的距离,将对象划分到距离其最近的簇 (4)重新计算每个新簇的均值 (5)Until簇的质心不再变化P

2014-10-14 21:52:20 1340

原创 redmine通过https连接远程svn

在redmine

2014-09-13 10:29:22 4064 2

原创 用命令行编译C#代码

最近要写一些插件,这些插件代码类似,

2014-09-03 13:22:50 4257

原创 pcDuino使用OTG-USB通过VNC连接到电脑

pcDuino在版本20131127添加了USB网络,可以使用OTG-USB VNC连接到

2014-08-03 13:49:41 2194

原创 Windows下使用BitNami一键安装Redmine并连接VisualSVN-Server

Redmine的功能还在摸索中,先装

2014-07-29 16:52:04 4009

原创 混合语言编程—C#使用原生的Directx和OpenGL

本文要说的是混合C#和C/C++语言编程,在C#的Winform和WPF下使用原生的Direct和OpenGL进行绘图。         由于项目需要做一些图形展示,所以就想到了使用Directx和OpenGL来绘图,但项目准备使用C#来开发(大家比较熟悉C#),在网上看了相关的资料,有一些第三方的控件可用,试用了下,一运行就占了几百M的内存,而且也不知道是否稳定,教程也少,还不如直接使用原生

2014-07-16 15:24:28 1644

原创 混合语言编程之VC++和C#管道通信

使用混合语言编程,可发挥各自语言的优势,从而方便快速地完成任务。采用混合语言编程,就必然要解决进程间通信问题。管道似乎是一种不错的选择。今天参考了国外的一个开源工程,又查看了相关资料。命名管道最大的特点便是建立一个简单的客户机/服务器程序设计体系。在这个体系结构中,在客户机与服务器之间,数据既可单向传递,亦可双向流动。服务器:1)使用API函数CreateNamedPipe,创建一个命名管道实例句

2014-07-16 15:24:24 1743 3

原创 CCSstudiov3.3打不开的可能原因及解决办法

在虚拟机安装了CCS3.3之后,Setup CCStudio v3.3可以

2014-07-15 22:45:09 14150 12

VC++和C#管道通信(2015更新)

本例程服务器使用VC++,客户端使用C#,两个进程通过管道通信。2015年更新,原下载地址:http://download.csdn.net/detail/dawsen/5760333

2015-11-09

空空如也

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

TA关注的人

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