文献阅读(2):KNMC

目录

一、简介

1.题目:

2.时间:

3.来源:

4.简介:

5.论文主要贡献:

二、相关名词

三、相关背景知识

1.近内存计算

2.K-NN算法

3.K-means算法

四、处理流程概述

1.KNMC硬件架构

​2.KNMC总调度流程

3.设计空间探索


一、简介

1.题目:

KNMC: 基于近内存计算的 k-NN 和 k-means 加速器设计

2.时间:

2022.05

3.来源:

Journal of Chinese Computer Systems(小型微型计算机系统 )

4.简介:

K近邻和K均值算法在人工智能领域应用广泛,但由于这两种算法在应用过程中需要不断进行距离计算,不断访问片外DRAM,导致能耗非常大。论文中提出的KNMC是基于近内存计算的可配置加速器,对上述提到的两种算法均实现了有效的性能以及能效提升。

5.论文主要贡献:

(1)加速器KNMC能通过硬件重配置灵活支持K-NN与K-means算法加速。

(2)在近内存架构前提下,关注到了片上缓存与PE规模对于近内存加速器的效率影响,通过求解加速器能效与片上缓存、PE规模的最优化问题,探索最佳的规模配置。

(3)与前人的加速器相比,两种算法均得到了不同程度的性能加速与提升。


二、相关名词

k-nearest neighbor:K近邻算法

k-means:K均值算法

near-memory computing:近内存计算

on-chip buffer:片上缓存

ASIC:application specific integrated circuit,专用集成电路

DRAM:dynamic random-access memory,动态随机存取存储器

PE:process element,处理单元

KNMC:我感觉或许这个缩写取得是K-NN、K-means和近内存计算(Near-Memory Computing)的首字母?


三、相关背景知识

1.近内存计算

顾名思义,近内存计算就是将数据处理单元设计在数据中心附近,能够最大限度地减少数据移动所带来的能耗开销。

文献阅读(2):KNMC_第1张图片

2.K-NN算法

是一种分类和回归算法,主要用于对未知类型的数据进行分类(已知分类情况)。首先将待测样本与训练集样本进行欧氏距离计算,其次按照计算结果找出与待测样本距离最近的k个训练集样本。

文献阅读(2):KNMC_第2张图片

3.K-means算法

是一种经典的无监督学习算法。主要步骤为:首先随机选取K个质心,然后将样本数据与K个质心进行欧式距离计算,每个样本所属与之最近的质心,同属一个质心的样本为一个群;接着为每个群进行质心更新操作,选出新的质心;重复上述步骤,直到新旧质心不再发生变化。


四、处理流程概述

1.KNMC硬件架构

KNMC组件,主要包括PE计算部件,片上缓存和 Centroid 模块。Centroid 模块用于实现对质心的更新和新旧质心比较。PE 模块用于计算不同数据间的距离,以及对所产生的结果进行累加。片上缓存共有五个,如下图中所示。

文献阅读(2):KNMC_第3张图片2.KNMC总调度流程

文献阅读(2):KNMC_第4张图片

3.设计空间探索

论文中对于PE数量以及片上缓存(共五个)容量进行设计空间探索(DSE,design space exploration)。并且有以下约束:

可以看出每个变量个数有限,则使用穷举法对这些变量进行组合,可以找出最优解,也就得到了最高能效的配置。为了提高加速器对不同数据集的适应能力,论文中还采用了多个数据集进行设计空间探索,对所有调度的数据集的能效求几何平均。

你可能感兴趣的:(文献阅读,论文阅读)