Brief announcement: the problem based benchmark suite

Brief announcement: the problem based benchmark suite
复制标题

DOI:
10.1145/2312005.2312018
复制
发表时间:
2012-06
期刊:
--
影响因子:
--
通讯作者:
Julian Shun;G. Blelloch;Jeremy T. Fineman;Phillip B. Gibbons;Aapo Kyrola;H. Simhadri;Kanat Tangwongsan
Julian Shun;G. Blelloch;Jeremy T. Fineman;Phillip B. Gibbons;Aapo Kyrola;H. Simhadri;Kanat Tangwongsan
中科院分区:
其他
文献类型:
--
作者:
Julian Shun;G. Blelloch;Jeremy T. Fineman;Phillip B. Gibbons;Aapo Kyrola;H. Simhadri;Kanat Tangwongsan

文献摘要

被引文献

相似文献

本公告描述了基于问题的基准测试套件(PBBS)。PBBS是一组基准,用于比较并行算法方法、并行编程语言风格和机器架构,以解决一系列广泛的问题。每个基准都是根据问题规范和一组输入分布具体定义的。在算法方法、编程语言或机器体系结构方面没有要求。基准测试的目标不仅是比较运行时,而且还能够比较代码和实现的其他方面(例如,可移植性、健壮性、确定性和通用性)。因此,基准实现的代码与其运行时一样重要,公共PBBS存储库将同时包含代码和性能结果。这些基准测试的目的是使其他人可以轻松地尝试自己的实现,或者添加新的基准测试问题。每个基准测试问题包括问题规范、输入和输出文件格式的规范、默认输入生成器、检查给定输入输出正确性的测试代码、可以与实现链接的驱动程序代码、基线顺序实现、基线多核实现,以及用于运行计时(和检查)和以标准格式输出结果的脚本。当前的套件包括以下问题:整数排序、比较排序、删除重复项、字典、广度优先搜索、生成森林、最小生成森林、最大独立集、最大匹配、k近邻、Delaunay三角化、凸包、后缀数组、n体和光线投射。对于每个问题,我们都会报告在40核机器上基准多核实现的性能。
This announcement describes the problem based benchmark suite (PBBS). PBBS is a set of benchmarks designed for comparing parallel algorithmic approaches, parallel programming language styles, and machine architectures across a broad set of problems. Each benchmark is defined concretely in terms of a problem specification and a set of input distributions. No requirements are made in terms of algorithmic approach, programming language, or machine architecture. The goal of the benchmarks is not only to compare runtimes, but also to be able to compare code and other aspects of an implementation (e.g., portability, robustness, determinism, and generality). As such the code for an implementation of a benchmark is as important as its runtime, and the public PBBS repository will include both code and performance results. The benchmarks are designed to make it easy for others to try their own implementations, or to add new benchmark problems. Each benchmark problem includes the problem specification, the specification of input and output file formats, default input generators, test codes that check the correctness of the output for a given input, driver code that can be linked with implementations, a baseline sequential implementation, a baseline multicore implementation, and scripts for running timings (and checks) and outputting the results in a standard format. The current suite includes the following problems: integer sort, comparison sort, remove duplicates, dictionary, breadth first search, spanning forest, minimum spanning forest, maximal independent set, maximal matching, K-nearest neighbors, Delaunay triangulation, convex hull, suffix arrays, n-body, and ray casting. For each problem, we report the performance of our baseline multicore implementation on a 40-core machine.