  The rise of graph analytic systems has created a need for ways to measure and
compare the capabilities of these systems. Graph analytics present unique
scalability difficulties. The machine learning, high performance computing, and
visual analytics communities have wrestled with these difficulties for decades
and developed methodologies for creating challenges to move these communities
forward. The proposed Subgraph Isomorphism Graph Challenge draws upon prior
challenges from machine learning, high performance computing, and visual
analytics to create a graph challenge that is reflective of many real-world
graph analytics processing systems. The Subgraph Isomorphism Graph Challenge is
a holistic specification with multiple integrated kernels that can be run
together or independently. Each kernel is well defined mathematically and can
be implemented in any programming environment. Subgraph isomorphism is amenable
to both vertex-centric implementations and array-based implementations (e.g.,
using the GraphBLAS.org standard). The computations are simple enough that
performance predictions can be made based on simple computing hardware models.
The surrounding kernels provide the context for each kernel that allows
rigorous definition of both the input and the output for each kernel.
Furthermore, since the proposed graph challenge is scalable in both problem
size and hardware, it can be used to measure and quantitatively compare a wide
range of present day and future systems. Serial implementations in C++, Python,
Python with Pandas, Matlab, Octave, and Julia have been implemented and their
single threaded performance have been measured. Specifications, data, and
software are publicly available at GraphChallenge.org.
