The performance of graph algorithms is often measured in terms of the number of traversed edges per second (TEPS). However, this performance metric is inadequate for a graph operation such as exact triangle counting. In triangle counting, execution times on graphs with a similar number of edges can be distinctly different as demonstrated by results from the past Graph Challenge entries. We discuss the need for an objective performance metric for graph operations and the desired characteristics of such a metric such that it more accurately captures the interactions between the amount of work performed and the capabilities of the hardware on which the code is executed. Using exact triangle counting as an example, we derive a metric that captures how certain techniques employed in many implementations improve performance. We demonstrate that our proposed metric can be used to evaluate and compare multiple approaches for triangle counting, using a SIMD approach as a case study against a scalar baseline.
翻译:图形算法的性能往往以每秒穿行边缘的数量来衡量。 但是,这种性能衡量尺度不足以进行精确三角计数等图形操作。在三角点数中,具有类似边缘数的图形的执行时间可以截然不同地不同,正如以往图表挑战条目的结果所显示的那样。我们讨论了对图形操作采用客观性能衡量尺度的必要性,以及这种测量的预期特点,以便更准确地捕捉所完成的工作量与执行代码的硬件能力之间的相互作用。我们以精确三角点数为例,得出一种衡量尺度,说明许多实施过程中使用的某些技术如何改善性能。我们证明,我们提议的衡量尺度可以用来评估和比较三角点数的多种方法,使用SIMD方法作为比标度基线的案例研究。