当前位置: 首页 > 专利查询>英特尔公司专利>正文

利用基于向量估计的图分割的计算装置的数据流编程制造方法及图纸

技术编号:15762618 阅读:157 留言:0更新日期:2017-07-05 22:18
在多种实施例中,图分割系统(“GPS”)的谱图分割器(“SP”)可将与程序关联的数据流图分割为将用于执行分析或调试的多个子图。SP可通过向量的函数的最小化生成表示图的矩阵的估计本征向量。SP可生成多个本征向量以在本征向量描述的多维空间执行聚类。SP可通过重复本征向量的生成而细化聚类以描述更高维空间并执行进一步聚类。SP还可确定群集的质量度量并且可基于质量度量停止细化。GPS可基于多种因素诸如图的尺寸或质量度量而在利用SP或利用一个或多个其他分割器之间选择。可描述和/或要求保护其他实施例。

Data flow programming using a computing device based on vector estimation of graph partitioning

In a variety of embodiments, a spectral slicer (\SP\) of a graph division system (\GPS\) can split a data flow graph associated with a program into multiple subgraphs that will be used for execution, analysis, or debugging. SP can estimate the eigenvector of the matrix of the representation graph by minimizing the function of the vector. SP can generate multiple eigenvectors to perform clustering in the multidimensional space described by the eigenvectors. SP can refine clustering by repeating the generation of eigenvectors to describe the higher dimensional space and perform further clustering. SP can also determine the quality metrics of a cluster and can be refined based on a quality metric. GPS may select between SP or one or more other dividers based on a variety of factors such as size or quality of a graph. Other embodiments may be described and / or requested.

【技术实现步骤摘要】
利用基于向量估计的图分割的计算装置的数据流编程
本公开涉及数据处理领域,特别地,涉及与计算装置的数据流编程关联的装置、方法和存储媒体,包括自动分割与用于编程计算装置的程序关联的大数据流图。
技术介绍
本文提供的背景描述用于总体上呈现该公开的上下文的目的。除非本文另行表示,在该部分描述的材料不是本申请权利要求的现有技术并且不因包括于该部分而承认为现有技术。在数据流编程范例,自动过程可描述为数据流图的形式。为进行数据流程序的性能分析,相关数据流图可被分割为更小的、独立的子图,这些子图可单独分析。该分割可能是所需要的,因为图的不同部分可能具有不同的性能特性并且因此可受益于不同性能解决方案。然而,确定最佳图分割典型地是阻碍有效计算的复杂过程,尤其是随着图尺寸的增加。多个典型图分割过程对于尺寸较大的图缩放并不理想。附图说明实施例将通过如下详细描述结合附图而容易理解。为便于该描述,相同参考数字指代相同结构元素。在附图的图中,实施例以示例的形式而非以限制的形式说明。图1说明了根据多种实施例的包括谱图分割器的图分割系统的示例组件和信息流。图2说明了根据多种实施例的用于分割图的图分割系统的示例过程。图3说明了根据多种实施例的用于执行图的谱分割的谱图分割器的示例过程。图4说明了根据多种实施例的用于估计图的本征向量的示例过程。图5说明了根据多种实施例适用于实现本公开的多种方面的示例计算环境。图6说明了根据多种实施例的具有配置为使装置能够实现本公开的多种方面的指令的示例存储介质。具体实施方式在如下详细描述中,参考形成其一部分的附图,图中相同数字始终指代相同部件,并且图中以可被实现的说明实施例的形式示出。应当理解,可利用其他实施例并且可改变其结构或逻辑而不偏离本公开的范围。因此,如下详细描述不应视为限制意义,而且实施例的范围由所附权利要求及其等同物定义。多种操作可以按最有助于理解要求保护的主题的方式描述为多个有顺序的离散动作或操作。然而,描述的顺序不应被解释为暗示这些操作一定是依赖顺序的。特别地,这些操作可不按呈现的顺序执行。描述的操作可以与所描述实施例不同的顺序执行。在附加的实施例中,多种附加的操作可被执行和/或描述的操作可被省略。对于本公开的目的,词语“A和/或B”表示(A)、(B)或(A和B)。对于本公开的目的,词语“A、B和/或C”表示(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。描述可使用词语“在一实施例”或“在实施例中”,其每一个可指代一个或多个相同的或不同的实施例。此外,术语“包含”、“包括”、“具有”等,如结合本公开的实施例所使用的,是同义词。如本文所使用的,术语“逻辑”和“模块”可指代、作为其一部分或包括专用集成电路(ASIC)、电子电路、处理器(共享、专用或组)和/或执行一个或多个软件或固件程序的存储器(共享、专用或组)、组合逻辑电路、和/或提供所描述功能的其他合适的组件。如本文所描述的,术语“逻辑”和“模块”可指代、作为其一部分或包括片上系统,如下文所述。在多种实施例中,图分割系统(“GPS”)的谱图分割器(“SP”)可配置为执行与用于编程计算装置的程序关联的数据流图的基于估计的分割,从而分割为多个子图。子图可用于执行程序的分析或调试。在执行程序分析或调试之后,程序可用于编程计算装置以执行任务。操作SP的计算装置和被编程的计算装置可为相同或不同的计算装置。计算装置可为本领域已知的任何计算装置,包括但不限于,计算平板、膝上型电脑、桌面电脑或服务器。任务可为从系统服务任务到应用任务的本领域已知的任何任务。SP可配置为估计一个或多个向量以用于将数据流图(下文简称为“图”)分割为节点的多个群集,从而形成对应子图。SP可配置为生成用于表示图的拉普拉斯矩阵的估计的本征向量。SP可配置为通过所描述的函数的最小化来将估计的本征向量生成为向量v。在多种实施例中,SP可配置为在函数f的最小化期间将向量v的随机坐标设置为0。在估计本征向量之后,设置为0的坐标可重新设置为邻居坐标的均值。在多种实施例中,SP可配置为生成多个估计的本征向量,以便在将图的节点聚类为多个群集时使用,因此将图分割为多个子图。SP可配置为利用由估计的本征向量所描述的多维空间中的k均值聚类来执行聚类。在多种实施例中,SP还可配置为通过重复生成估计本征向量来细化聚类以描述更高维空间,其中可以进一步执行聚类。SP还可配置为确定群集的质量度量并基于质量度量停止聚类的细化。在多种实施例中,GPS还可配置为在利用由SP生成的分割或利用用于分割的一个或多个其他分割器之间选择。例如,GPS可利用边缘中心化分割器,用于报告图的一个或多个分割,而非SP。GPS可基于多种因素在SP和另一分割器之间选择,诸如由SP确定的用于由SP生成的一个或多个聚类的图的尺寸或质量度量。现参见图1,示出了根据多种实施例的包括SP150的GPS100的组件和信息流。应当注意,尽管说明的是特定组件,但在多种实施例中,GPS100和/或SP150可包括其他组件和/或可省略图1说明的一个或多个组件。在多种实施例中,说明的组件可实现为硬件和/或软件,并且可配置为操作于多种形状因子的计算设备,诸如如下描述的计算设备。在多种实施例中,GPS100可接收与用于编程计算装置的程序关联的图(诸如说明的示例图105),以分析且分割为多个子图(在图1中说明为子图195和196),从而便于程序的分析和/或调试。应当注意,尽管图105说明为被分割成两个子图,其用于说明的目的而进行;但在多种实施例中,分割可包括多个数量的子图。在多种实施例中,图105可包括一个或多个顶点或节点,在图1中说明为多个节点ni。图105还可包括连接节点的一个或多个边,在图1中说明为边ei。在多种实施例中,GPS100和SP150特别地可配置为将图105的节点聚类为多个群集,以使连接群集的边的数量被减少,如果不被最小化。在多种实施例中,图105可以多种形式被提供至GPS100,如可理解那样。并且,尽管说明的图105仅包含8个节点和11个边,但应当认识到,在多种实施例中,图105可更大,包含数百或数千的节点和/或边,远超出人类的用以有效地人工分割该图的能力。总体上,对于人类而言,具有多于一百个节点和/或边的图难以有效地人工分割。在多种实施例中,SP150可包括多种组件以对图105执行谱分割。例如,SP150可包括向量估计器110(“VE110”),其可配置为生成一个或多个估计向量,诸如估计本征向量,该向量可帮助图105的分割。在多种实施例中,估计本征向量可为用于描述图105的拉普拉斯矩阵的估计本征向量,如可以理解那样。可在以下发现本征向量和拉普拉斯矩阵的特定描述。在多种实施例中,VE110可配置为通过向量的确定执行本征向量估计,该向量的值基于向量而最小化估计函数。在多种实施例中,VE110可配置为生成多个估计本征向量以用于聚类。VE110还可配置为生成附加的估计本征向量以将聚类细化为更大数量的子图,诸如如下描述的那样。在多种实施例中,SP150还可包括群集确定器120(“CD120”)。在多种实施例中,CD120可配置为基于由VE110生成的估计本征向量而将图105的节点聚类为多个群集。在多种实施例中,C本文档来自技高网...
利用基于向量估计的图分割的计算装置的数据流编程

【技术保护点】
一种计算装置,配备为支持数据流编程,包括:一个或多个计算处理器;以及谱图分割器,用于在所述一个或多个计算处理器上操作以将与程序关联的数据流图分割为多个子图;其中所述谱图分割器包括:向量估计器,用于生成一个或多个估计向量,以将所述图分割为所述多个子图;以及群集确定器,用于:基于所述多个估计向量定义多维空间;以及聚类所述图的节点以形成所述多维空间中的所述多个子图;并且其中所述多个子图用于所述程序的分析或调试,且所述程序用于对所述计算装置或另一计算装置编程以执行任务。

【技术特征摘要】
2015.12.24 US 14/9981371.一种计算装置,配备为支持数据流编程,包括:一个或多个计算处理器;以及谱图分割器,用于在所述一个或多个计算处理器上操作以将与程序关联的数据流图分割为多个子图;其中所述谱图分割器包括:向量估计器,用于生成一个或多个估计向量,以将所述图分割为所述多个子图;以及群集确定器,用于:基于所述多个估计向量定义多维空间;以及聚类所述图的节点以形成所述多维空间中的所述多个子图;并且其中所述多个子图用于所述程序的分析或调试,且所述程序用于对所述计算装置或另一计算装置编程以执行任务。2.如权利要求1所述的计算装置,其中所述向量估计器用于通过生成描述所述图的拉普拉斯矩阵的本征向量而生成所述一个或多个估计向量。3.如权利要求2所述的计算装置,其中所述向量估计器用于通过最小化由描述的函数而生成本征向量作为向量v,其中n为所述图中的顶点的数量并且c为常量。4.如权利要求3所述的计算装置,其中所述函数的最小化包括对所述函数f执行梯度下降。5.如权利要求3所述的计算装置,其中所述常量c的值至少部分基于并且为所述图的度的倒数。6.如权利要求3所述的计算装置,其中生成本征向量包括在最小化所述函数f之前将所述向量v的一个坐标设置为0。7.如权利要求6所述的计算装置,其中生成本征向量包括:在最小化所述函数f之后将已被设置为0的坐标设置为其坐标邻居的均值。8.如权利要求1-7的任一项所述的计算装置,其中所述群集确定器用于通过执行k均值聚类过程而将所述图的节点聚类以形成所述多个子图。9.如权利要求1-7的任一项所述的计算装置,其中所述谱图分割器进一步包括质量度量确定器,用于对给定所述图的节点的聚类确定用于所述节点的聚类的一个或多个质量度量。10.如权利要求9所述的计算装置,其中所述质量度量确定器用于确定用于所述节点的聚类的模块化度量或群集路径长度度量。11.如权利要求9所述的计算装置,其中所述谱图分割器进一步包括细化控制器,用于至少部分地基于所述一个或多个质量度量而使得估计向量的生成和所述图的节点的聚类重复进行。12.如权利要求11所述的计算装置,其中所述细化控制器用于使所述图的节点聚类为由于生成附加的估计向量而增加的数量的群集。13.如权利要求1-7的任一项所述的计算装置,进一步包括分割器选择器,用于在利用所述谱图分割器或所述装置的一个或多个其他图分割器之间选择。14.如权利要求13所述...

【专利技术属性】
技术研发人员:L·J·孙V·R·托温科雷
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1