GPU 数据库核心技术综述∗
2021-05-23李战怀
裴 威,李战怀,潘 巍
1(西北工业大学 计算机学院,陕西 西安 710129)
2(锦州医科大学,辽宁 锦州 121001)
近年来,GPU 已经从专业的图形处理器发展成为通用的计算处理器(general-purpose computing on graphics processing units,简称GPGPU)[1],其超高速计算能力和超大数据处理带宽受到数据库厂商及研究人员的青睐.一方面,传统以CPU 为计算中心的数据库技术面临“能耗墙”“内存墙”的限制,单核CPU 的性能提升已经接近物理极限,不得不借助并行计算、分布式技术来提升系统整体性能;另一方面,通用GPU 每10 年提升1 000 倍的性能增长(Jensen’Law),使GPU 在满足当今大数据需求方面具有得天独厚的优势.
由于受能耗墙(“heat wall”)限制[2],简单地增加CPU 的主频来获得性能提升走到了尽头.早在2004 年,45 纳米制程下,CPU 的主频就可达到3GHz;但时至今日,主流CPU 制程已达到14 纳米~7 纳米,主频却仍然在3GHz~4GHz 左右(除了2017 年IBM z14 CPU 主频曾达到5GHz)[3].与此同时,以超流水线、乱序执行、微指令(uops)技术在提升CPU 每时钟周期内执行指令数上也收效甚微.比如将CISC 指令变为RISC 类似的微指令(uops)来提高并发度的方法,从1995 年~2013 年,近20 年间仅仅把最高并发微指令数从3 提高到4[3].尽管使用多核CPU 一定程度上缓解了CPU 性能提升的瓶颈,每年继续保持15%~20%的增长.然而,CPU 已经无法跟上多源异构数据的爆炸性增长.
GPU 与CPU 具有不同的体系结构和处理模式,将更多的片上空间用于计算单元,控制单元和缓存单元相对很少,使得单块GPU 上拥有数千个并发计算核心.因此,在同样的主频下,GPU 能够取得更高的并发计算能力,也使GPU 具有满足大数据处理需求的巨大潜能……
