上一页 1 2 3 4 5 6 7 8 9 10 ··· 22 下一页

2014年8月29日

摘要: 前言 如果你不想要编译器帮你自动生成的拷贝机制 (参考前文),那么你应当明确的拒绝。 如何拒绝?这便是本文要解决的主要问题。问题描述 当你定义了一个类,而这个类中各对象之间也是封装的 - 禁止同类对象之间的相互赋值以及复制,那么你需要屏蔽掉编译器帮你生成的拷贝构造函数以及赋值运算符。 在许多... 阅读全文
posted @ 2014-08-29 08:35 空山悟 阅读(605) 评论(0) 推荐(0) 编辑

2014年8月28日

摘要: 前言 对于一个类来说,最最基础的三类成员函数莫过于:构造函数,析构函数以及拷贝函数 (copy构造函数和=重载函数)。即使你的类没有为这些函数做出定义,C++ 也会自动为你创建。本文将讲述的是 C++ “偷偷”为你创建的这三个函数究竟是怎么样的。 了解这些,能更清楚代码是如何运转的,从而写出自己... 阅读全文
posted @ 2014-08-28 21:50 空山悟 阅读(283) 评论(0) 推荐(0) 编辑

2014年8月24日

摘要: 前言 某个对象若不被初始化,意味着它的执行很有可能导致不确定的结果,这是我们的代码所要坚决避免的情况。 本文将讲解 C++ 代码中关于对象初始化的方方面面。成员变量的初始化 当我们构造一个对象的时候 (不含初始化列表),在进入构造函数之前,其实所有成员变量已经被其所属类型的默认构造函数给初始化... 阅读全文
posted @ 2014-08-24 11:18 空山悟 阅读(217) 评论(0) 推荐(0) 编辑

2014年8月23日

摘要: 前言 const 关键字是常量修辞符,如果要告知编译器某个变量在程序中不会发生改变,则可将其声明为 const。 但,对 const 关键字的认识不能仅仅停留在这一层 - 它提供了很多更强大的功能。 因此很多情况下const 关键字的使用方法也不是简单的 const + 变量,其用法总的来说是... 阅读全文
posted @ 2014-08-23 22:57 空山悟 阅读(160) 评论(0) 推荐(0) 编辑

2014年8月22日

摘要: 前言 在面向过程语言,如 C 语言中,#define 非常常见,也确实好用,值得提倡。但在如今面向对象的语言,如 C++ 语言中,#define 就要尽量少用了。 为何在 C++ 中就要少用了呢? 这是因为 #define 机制只是简单的字符替换,这样一方面你无法对 #define 定义的东西... 阅读全文
posted @ 2014-08-22 22:35 空山悟 阅读(287) 评论(0) 推荐(0) 编辑

2014年8月17日

摘要: 前言 如何对现有的程序进行并行优化,是 GPU 并行编程技术最为关注的实际问题。本文将提供几种优化的思路,为程序并行优化指明道路方向。优化前准备 首先,要明确优化的目标 - 是要将程序提速 2 倍?还是 10 倍?100倍?也许你会不假思索的说当然是提升越高越好。 但这里存在一个优化成本的问题... 阅读全文
posted @ 2014-08-17 15:55 空山悟 阅读(695) 评论(0) 推荐(0) 编辑

2014年8月11日

摘要: 前言 CPU 的并行编程技术,也是高性能计算中的热点,也是今后要努力学习的方向。那么它和 GPU 并行编程有何区别呢? 本文将做出详细的对比,分析各自的特点,为将来深入学习 CPU 并行编程技术打下铺垫。区别一:缓存管理方式的不同 GPU:缓存对程序员不透明,程序员可根据实际情况操纵大部分缓存... 阅读全文
posted @ 2014-08-11 21:39 空山悟 阅读(728) 评论(0) 推荐(0) 编辑
摘要: 前言 在用 CUDA 对 GPU 进行并行编程的过程中,除了需要对线程架构要有深刻的认识外,也需要对存储系统架构有深入的了解。 这两个部分是 GPU 编程中最为基础,也是最为重要的部分,需要花时间去理解吸收,加深内功。 了解 GPU 存储系统架构的意义 CUDA 编程架构的设计思路本身也就是让... 阅读全文
posted @ 2014-08-11 21:07 空山悟 阅读(943) 评论(0) 推荐(0) 编辑

2014年8月3日

摘要: 前言 GPU 是如何实现并行的?它实现的方式较之 CPU 的多线程又有什么分别?本文将做一个较为细致的分析。GPU 并行计算架构 GPU 并行编程的核心在于线程,一个线程就是程序中的一个单一指令流,一个个线程组合在一起就构成了并行计算网格,成为了并行的程序,下图展示了多核 CPU 与 GPU 的... 阅读全文
posted @ 2014-08-03 10:36 空山悟 阅读(712) 评论(0) 推荐(0) 编辑

2014年7月19日

摘要: 前言 在实际项目的一些矩阵运算模块中,往往需要对线性方程组进行求解以得到最终结果。 然而,你无法让计算机去使用克莱默法则或者高斯消元法这样的纯数学方法来进行求解。 计算机解决这个问题的方法是迭代法。本文将介绍三种最为经典的迭代法并用经典C++源代码实现之。迭代法简介 从解的某个近似值出发,通... 阅读全文
posted @ 2014-07-19 17:24 空山悟 阅读(11459) 评论(1) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 22 下一页

导航