阻变存储器(ReRAM)是一种新型非易失存储器,具有着零静功耗、读写速度快、单元尺寸小等优点。ReRAM以交叉点阵列结构构成存储阵列可提供最大化的面积效率,同时有着完成矩阵向量乘法的能力:向量数值以电压形式给入字线,一条位线上流出的电流即为电压与位线ReRAM单元电导的内积,多条位线完成了矩阵向量的乘法(MVM)计算。基于其MVM计算能力,交叉点阵列被广泛运用于神经网络、图像处理、图计算等应用。
信息存储与光显示功能实验室博士生吴兵在冯丹教授、童薇副教授的指导下,提出了一种基于ReRAM单元交叉点阵列的朴素贝叶斯推理引擎。朴素贝叶斯算法是广泛应用的一种分类算法。其算法主要分为概率计算和选举具有最大概率的类别两个步骤。研究中,我们通过将先验概率和条件概率预先写入阵列,使用阵列的MVM能力并行计算出属于每个类别的概率。接着,设计了一种模拟并行比较电路来完成了选举过程。研究经Neursim、GEM5以及Nvmain模拟器模拟运行了我们提出的推理引擎以及软件实现朴素贝叶斯算法。在Mnist和其他10个特性各异的分类负载上进行了实验。实验结果表明,相比软件实现,推理引擎实现了最大2289.6倍的加速比,同时保证了测试准确度基本没有下降。相比其他内存计算架构(PRIME)兼容实现贝叶斯,推理引擎分别有着96.2%、42.5%的能耗下降和面积下降。
该研究于2019年9月被IEEE International Conference on Computer Design (IEEE ICCD)以长文录用,入围最佳论文候选,题为“基于阻变存储器交叉点阵列的朴素贝叶斯模拟计算架构”(ReRAM Crossbar-based Analog Computing Architecture for Naive Bayesian Engine)。ICCD是计算机体系结构领域重要的国际学术会议之一,本届录用率23.8%。
可编程ReRAM单元及交叉点阵列的矩阵向量乘法计算能力
推理引擎运行MNIST测试示例