KAIST的研究小组已经开发出一种新技术,该技术能够处理大规模图形算法,而无需将图形存储在主存储器或磁盘上。KAIST计算学院的开发人员Min-Soo Kim教授将其命名为T-GPS(万亿级图处理仿真),它可以使用一台计算机处理一万亿条边的图。
图形被广泛用于表示和分析社交网络,商业智能,生物学和神经科学等许多领域的现实世界对象。随着图形应用程序数量的快速增长,开发和测试新的图形算法变得比以往任何时候都更加重要。如今,许多工业应用都需要一种图算法来处理大型图(例如,一万亿条边)。因此,在开发和测试用于大型图形的图形算法时,通常使用合成图形代替真实图形。这是因为共享和利用大规模实图非常有限,因为它们是专有的或实际上是无法收集的。
通常,开发和测试图形算法是通过以下两步方法完成的:生成和存储图形,并使用图形处理引擎在图形上执行算法。
第一步生成一个合成图并将其存储在磁盘上。合成图通常通过基于参数的生成方法或图放大方法生成。前者提取少量参数,这些参数可以捕获给定实图的某些属性,并生成带有参数的合成图。后者将给定的实图放大为更大的图,从而尽可能多地保留原始实图的属性。
第二步将存储的图形加载到图形处理引擎(例如Apache GraphX)的主存储器中,并在引擎上执行给定的图形算法。由于图形的大小太大而无法容纳在一台计算机的主内存中,因此图形引擎通常在数十台或数百台计算机的群集上运行。因此,传统的两步法的成本非常高。
研究小组解决了传统的两步法的问题。它不会生成和存储大规模的合成图。相反,它只是将初始的小实数图加载到主内存中。然后,T-GPS在小的实图上处理图算法,好像应该从实图生成的大规模合成图存在于主存储器中一样。算法完成后,T-GPS返回与传统两步法完全相同的结果。
T-GPS的关键思想是仅生成算法需要动态访问的合成图部分,并修改图处理引擎以将动态生成的部分识别为实际生成的合成图的部分。
研究团队表明,T-GPS可以使用单台计算机处理1万亿条边的图形,而传统的两步方法只能使用11台相同规格的计算机集群来处理10亿条边的图形。因此,就计算资源而言,T-GPS的性能比传统方法高出10,000倍。研究小组还表明,在T-GPS中处理算法的速度比传统方法快43倍。这是因为T-GPS没有网络通信开销,而常规方法在计算机之间有很多通信开销。
金教授认为,这项工作将对几乎每个领域都使用图形数据的IT行业产生重大影响,并补充说:“ T-GPS可以显着提高开发新图形算法的规模和效率。”