The present invention relates to a hardware accelerator architecture and template for network scale K mean clustering. The hardware accelerator architecture for clustering is described. A hardware accelerator includes sparse tiles and very sparse / super sparse tiles. One or more sparse tiles perform operations for cluster tasks involving matrices. Each of the sparse tiles includes the first plurality of processing units, and the first plurality of processing units operates on the first plurality of blocks of one or more random access memory of the matrix that has been flow from the first memory unit into the sparse tile through a high bandwidth interface. Each of the very sparse / Ultra sparse tiles is performed for the operation of the cluster task involved in the matrix, each of the very sparse / Ultra sparse tiles includes a more than 2 processing unit, and the more than 2 processing unit is randomly accessed from the second memory unit through a low delay interface. The more than 2 block is operated.
【技术实现步骤摘要】
用于网络规模k均值群集的硬件加速器架构和模板
本公开总体上涉及电子器件,并且更具体地,实施例涉及用于诸如网络规模k均值群集之类的群集任务的硬件加速器架构和模板。
技术介绍
近年来,来自机器学习的相对新生的领域的算法已经被广泛地应用于许多类型的实际应用,导致诸如自动驾驶车辆、改进的因特网搜索引擎、话音、音频和/或视觉识别系统、人类健康数据和基因组分析、推荐系统、欺诈检测系统等之类的技术。这些算法的使用的增长已经部分地被由人类和非人类二者产生的数据的量和类型的大幅增加所加速。随着可用于分析的数据的量已经飞涨,对机器学习的兴趣也已经飞涨。在许多不同情境中,普遍使用大矩阵来实现机器学习算法。这些矩阵中的许多矩阵是“稀疏”矩阵,这是因为它们具有显著数目的“空”或“背景”值——例如,零值。例如,社交图可以被建模为具有与在数据集中存在人同样多的行和列的矩阵(例如,“邻近性矩阵”),其中矩阵的单元中的元素表示与每一对人之间的连接有关的一些信息。当存储和利用稀疏矩阵时,使用可利用矩阵的稀疏结构的专门算法和数据结构是有用的(并且有时是严格必要的)。这是因为:随着由于大量的零的存在而实际上“浪费”处理和储存资源,使用规则的密集矩阵结构和算法执行矩阵操作将在被应用于大的稀疏矩阵时相当低效。因此,可以容易地压缩稀疏数据以要求显著更少的储存,并且可以实现特定算法和计算架构以适应这些经压缩的结构。然而,包括许多机器学习算法的涉及矩阵操控的算法往往在计算上是昂贵的,这是由于它们可能涉及利用巨大量的数据执行巨大数目的非平凡操作。由此,尽可能高效地实现这些算法是极为重要的,这是由于任何小的低 ...
【技术保护点】
1.一种高效地执行网络规模k均值群集的硬件加速器,包括:一个或多个稀疏瓦片,执行用于涉及矩阵的k均值群集任务的第一操作集合,所述稀疏瓦片中的每一个包括第一多个处理单元,所述第一多个处理单元对所述矩阵的已被通过高带宽接口从第一存储器单元成流到所述一个或多个稀疏瓦片的一个或多个随机存取存储器的第一多个块进行操作;以及一个或多个非常稀疏/超稀疏瓦片,执行用于涉及所述矩阵的k均值群集任务的第二操作集合,所述非常稀疏/超稀疏瓦片中的每一个包括第二多个处理单元,所述第二多个处理单元对所述矩阵的已通过低时延接口从第二存储器单元随机访问的第二多个块进行操作。
【技术特征摘要】
2016.12.31 US 15/3965151.一种高效地执行网络规模k均值群集的硬件加速器,包括:一个或多个稀疏瓦片,执行用于涉及矩阵的k均值群集任务的第一操作集合,所述稀疏瓦片中的每一个包括第一多个处理单元,所述第一多个处理单元对所述矩阵的已被通过高带宽接口从第一存储器单元成流到所述一个或多个稀疏瓦片的一个或多个随机存取存储器的第一多个块进行操作;以及一个或多个非常稀疏/超稀疏瓦片,执行用于涉及所述矩阵的k均值群集任务的第二操作集合,所述非常稀疏/超稀疏瓦片中的每一个包括第二多个处理单元,所述第二多个处理单元对所述矩阵的已通过低时延接口从第二存储器单元随机访问的第二多个块进行操作。2.如权利要求1所述的硬件加速器,进一步包括控制单元,所述控制单元:确定涉及所述矩阵的k均值群集任务要被执行;以及将所述矩阵分割成所述第一多个块和所述第二多个块,其中所述第一多个块包括所述矩阵的稀疏的一个或多个部分,并且其中所述第二多个块包括数据的非常稀疏或超稀疏的另一个或多个部分。3.如权利要求2所述的硬件加速器,其中所述控制单元进一步:使所述一个或多个稀疏瓦片使用所述第一多个块执行所述第一操作集合,且进一步使所述一个或多个非常稀疏/超稀疏瓦片使用所述第二多个块执行所述第二操作集合。4.如权利要求1所述的硬件加速器,其中执行所述第一操作集合的所述一个或多个稀疏瓦片:更新所述一个或多个稀疏瓦片的一个或多个随机存取存储器内的中心值的集合。5.如权利要求4所述的硬件加速器,其中执行所述第一操作集合的所述一个或多个稀疏瓦片进一步:由所述一个或多个稀疏瓦片的一个或多个数据管理单元将所述矩阵的多个行的值通过所述高带宽接口从所述第一存储器单元成流到第一多个处理元件的本地存储器。6.如权利要求5所述的硬件加速器,其中执行所述第一操作集合的所述一个或多个稀疏瓦片进一步:由所述第一多个处理元件使用所成流的值中的至少一些和与所述一个或多个稀疏瓦片分离的群集计算子系统执行多个距离计算。7.如权利要求5所述的硬件加速器,其中执行所述第一操作集合的所述一个或多个稀疏瓦片进一步:由所述第一多个处理元件使用中心值的集合执行一个或多个扩缩-更新操作。8.如权利要求1所述的硬件加速器,其中执行所述第二操作集合的所述一个或多个非常稀疏/超稀疏瓦片:在所述第二操作集合期间通过所述低时延接口更新所述第二存储器单元内的中心值的集合。9.如权利要求8所述的硬件加速器,其中执行所述第二操作集合的所述一个或多个非常稀疏/超稀疏瓦片进一步:由所述一个或多个非常稀疏/超稀疏瓦片的一个或多个数据管理单元通过使用随机访问请求、通过所述低时延接口从所述第二存储器单元检索所述矩阵的多个行的值。10.如权利要求1至9中任一项所述的硬件加速器,其中所述一个或多个非常稀疏/超稀疏瓦片中的每一个和所述一个或多个稀疏瓦片中的每一个在分别执行所述第一操作集合和所述第二操作集合时:将部分距离值提供给与所述一个或多个稀疏瓦片分离且与所述一个或多个非常稀疏/超稀疏瓦片分离的群集计算子系统;以及从所述群集计算子系统获得最接近集群标识符。11.一种用于高效地执行网络规模k均值群集的硬件加速器中的方法,包括:由所述硬件加速器的一个或多个稀疏瓦片执行用于涉及矩阵的k均值群集任务的第一操作集合,所述稀疏瓦片中的每一个包括第一多个处理单元,所述第一多个处理单元对所述矩阵的已被通过高带宽接口从第一存储器单元成流到所述一个或多个稀疏瓦片的一个或多个随机存取存储器的第一多个块进行操作;以及由所述硬件加速器的一个或多个非常稀疏/超稀疏瓦片执行用于涉及所述矩阵的k均值群集任务的第二操作集合,所述非常稀疏/...
【专利技术属性】
技术研发人员:D马尔,G文卡特什,S苏巴尚德拉,E努尔维塔希,S克里什南,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。