如何进行程序分析与优化的多分支分析?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3187个文字,预计阅读时间需要13分钟。
本章是系列文章的第十一章,主要介绍GPU的编译原理,分析了多核运行过程中的内存分配和控制器流分配的处理。内容源自学习DCC888的学习笔记或个人理解。
本章是系列文章的第十一章,主要介绍GPU的编译原理,分析了多核运行过程中的内存分岔和控制流分岔的分析和处理。
11.1什么是GPU 11.1.1GPU的发展历史本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处。周荣华@燧原科技
软件控制的VGA帧缓冲区
频繁使用的图形栅格化程序
尝试用硬件来加速这些处理
流水线化的图形处理过程,例如变形,映射,切片,显示等等
工程师开始发现一些过程本身虽然不一样,但实现该功能的硬件是相似的,例如图着色
从单独的图着色API到泛化的API
GPU指令集的诞生→泛化的整数通用处理函数→ 带分支支持的处理函数
一个独立的栅格化处理芯片 + 通用处理芯片
然后栅格化处理芯片又集成到了GPU里面,变成通用处理芯片的一部分
……
11.1.2计算机组织传统的SIMD(Single Instruction Multiple Data)和SPMD(Single Program Multiple Data)到GPU的MSIMD(Multiple Single-Instruction Multiple-Data)
主流编程环境主要有两种,开源的OpenCL和闭源的C for CUDA,后者是NVIDIA发布的,前者是其他公司组成的联盟发布的。这里主要说CUDA。
异构编程语言:一个能指定不同异构处理器上执行的编程语言。
本文共计3187个文字,预计阅读时间需要13分钟。
本章是系列文章的第十一章,主要介绍GPU的编译原理,分析了多核运行过程中的内存分配和控制器流分配的处理。内容源自学习DCC888的学习笔记或个人理解。
本章是系列文章的第十一章,主要介绍GPU的编译原理,分析了多核运行过程中的内存分岔和控制流分岔的分析和处理。
11.1什么是GPU 11.1.1GPU的发展历史本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处。周荣华@燧原科技
软件控制的VGA帧缓冲区
频繁使用的图形栅格化程序
尝试用硬件来加速这些处理
流水线化的图形处理过程,例如变形,映射,切片,显示等等
工程师开始发现一些过程本身虽然不一样,但实现该功能的硬件是相似的,例如图着色
从单独的图着色API到泛化的API
GPU指令集的诞生→泛化的整数通用处理函数→ 带分支支持的处理函数
一个独立的栅格化处理芯片 + 通用处理芯片
然后栅格化处理芯片又集成到了GPU里面,变成通用处理芯片的一部分
……
11.1.2计算机组织传统的SIMD(Single Instruction Multiple Data)和SPMD(Single Program Multiple Data)到GPU的MSIMD(Multiple Single-Instruction Multiple-Data)
主流编程环境主要有两种,开源的OpenCL和闭源的C for CUDA,后者是NVIDIA发布的,前者是其他公司组成的联盟发布的。这里主要说CUDA。
异构编程语言:一个能指定不同异构处理器上执行的编程语言。

