GPU 核心和 CPU 核心
费林分类法 (Flynn’s Taxonomy)
单指令单数据 (single instruction, single data,SISD)
单指令多数据 (single instruction, multiple data,SIMD)
多指令单数据 (multiple instruction, single data,MISD)
多指令多数据 (multiple instruction, multiple data,MIMD)
SIMD 最大的优势或许就是,在 CPU 上编写代码时,程序员可以继续按串行逻辑思考但对并行数据操作实现并行加速,而其他细节则由编译器来负责。
延迟是一个操作从开始到完成所需要的时间,常用微秒来表示。
带宽是单位时间内可处理的数据量,通常表示为 MB/s 或 GB/s。
吞吐量是单位时间内成功处理的运算数量,通常表示为 gflops (即每秒十亿次的浮点运算数量)。
延迟用来衡量完成一次操作的时间,吞吐量用来衡量在给定的单位时间内处理的操作量。
分布式内存的多节点系统,常被称作集群。
众核 (many-core) 通常是指有很多核心 (几十或几百个) 的多核架构。
GPU 代表了一种众核架构,单指令多线程 (single instruction, multiple thread,SIMT)。
GPU 核心和 CPU 核心
CPU 核心比较重,用来处理非常复杂的控制逻辑,以优化串行程序执行。
GPU 核心较轻,用于优化具有简单控制逻辑的数据并行任务,注重并行程序的吞吐量。
graphics processing unit,GPUapplication programming interface,APIcentral processing unit,CPUgeneral-purpose computing on graphics processing units,GPGPU and GPGPhigh-performance computing,HPCHarvard architecture:哈佛体系结构Compute Unified Device Architecture,CUDA:统一计算架构