MOORE’S LAW:芯片的集成密度每两年翻翻,成本下降一半。计算CORE是由面积决定的,面积越大理论上晶体管的数目越多,晶体管数目的大小直接关系到CPU的计算速度。
CPU面临的问题:
问题一:时钟频率墙。晶体管越来越多,单位面积晶体管越来越多,能量密度非常大,散热非常多。(能量密度接近核电站了)材料无法承受。
问题二:存储器墙。上下行数据越来越多,但数据需要放在存储器上,所以存储器数据带宽压力很大,无法保证能及时放到内存上。
于是,CPU遇到的瓶颈,只能向多核及并行系统发展。顺势而生的GPU - Graphics Processing Unit
CPU更强调流水线(即指令很多,协调)优化。
协处理器,无法直接访问存储器。CPU和GPU访问同一块处理器是趋势,节省了CPU数据传输给GPU用的时间。
处理解决问题的思维改过来。
串行解决问题和并行解决问题的思维是不同的。
把一个大任务分发给小的核心。
CUDA适合应用多个计算资源解决一个计算问题。
问题被分解为多个离散的部分,可以同时处理。
想优化:
加速比
计算的关键核心耗时点在哪。除去数据通信,数据控制流,无法用GPU并行优化。