序:
我是一名光学专业研究生,主攻三维立体显示。发表过两篇SCI,一项液晶显示器的发明专利。但我现在是一名软件工程师,就职于成都品果科技(Camera360),任Windows Phone 8开发一职。也许你没听过,但是过几年,你一定会记住它,还有我。
我们的CTO教育我们:专注地做事。他用实际行动诠释了这句话。他浸淫技术多年,主攻GPU编程,30多岁依然是个技术狂,公司的核心。
对于半路出家的我来说,编程是件麻烦事,也是件痛苦的事,但我觉得编程这事,很像炒菜,多看菜谱,多下厨,多交流就可以了。
学习GPU编程的几个原因:
1. 公司以图形图像为核心,不懂点GPU编程,不好意思跟人家打招呼。
2. 底层的东西,可移植的东西,移动平台通用。
3. 技术的无可替代性。一个团队需要动GPU知识的人,界面,业务逻辑门槛低。
4. GPU数据处理能力确实高效。
推荐一本学习GPU的书,也试我正在读的:《GPGPU编程技术--从GLSL、CUDA到OPENCL》 仇德元编著,机械工业出版社出版。说下推荐这本书的原因:
1. 看了两章,没晕,很清晰。
2. 中文书,流程、原理讲解到位。
第一章概述看了几遍,力图用自己的话总结书中内容,但是还不行,今天先写个大概,明天继续。
几个概念先列出来:
1. GPU: Graphics Processing Unit
2. GPU生来为计算,高带宽,几乎所有部分都是计算单元,高效浮点计算能力,多任务
3. 可编程着色器,定制化
4. 固定的图形流水线,适用于SIMD模型
5. GPU语言:CUDA, DX, OPENCL
6. 从内存到现存为何耗时。
2013-12-24