This is an archive of the discontinued LLVM Phabricator instance.

[test-suite] Adding Pathfinder Benchmark
ClosedPublic

Authored by homerdin on Aug 14 2017, 7:20 AM.

Details

Summary
Description:

PathFinder searches for "signatures" within graphs. Graphs being searched are
directed and cyclic. Many, but not all nodes within the graph have labels. Any
given node may have more than one label, and any label may be applied to more
than one node. A signature is an orderd list of labels. PathFinder searches for
paths between labels within the signature. PathFinder returns success if there
is a path from a node with the first label in the signature that passes through
nodes with each label in order, ultimately reaching a node with the last label
in the signature. Labeled nodes need not be contiguous on any given path.

At the current time, PathFinder does not do any pathway analysis (e.g. shortest
path) for discovered signatures. PathFinder simply searches until a signature is
satisfied or all pathways have been exhausted.

Links:

Web: https://mantevo.org/packages/
Github: https://github.com/Mantevo/PathFinder

When run on Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz:
compile_time: 13.3092 
exec_time: 3.1158 
Maximum resident set size (kbytes): 6256

Diff Detail

Repository
rL LLVM

Event Timeline

homerdin created this revision.Aug 14 2017, 7:20 AM
MatzeB edited edge metadata.Aug 15 2017, 2:55 PM
  • Integration looks good to me
  • I'd like to hear some clarification on the license in the file headers
  • You could add a REAMDE file describing the benchmark in the benchmark directory
MultiSource/Benchmarks/DOE-ProxyApps-C/Pathfinder/bitfield.h
7–9 ↗(On Diff #110958)

See my comments in D36683

homerdin updated this revision to Diff 111394.Aug 16 2017, 12:02 PM

Hi, I've added the original README with a note at the top.

This is the same as what i said on D36682 :)

MatzeB accepted this revision.Aug 18 2017, 10:51 AM

LGTM

This revision is now accepted and ready to land.Aug 18 2017, 10:51 AM
hfinkel edited edge metadata.Aug 21 2017, 5:31 PM

A couple of things I'll fix while committing...

MultiSource/Benchmarks/DOE-ProxyApps-C/Pathfinder/main.c
81 ↗(On Diff #111394)

This must be signed char or else it can never be equal to -1 below on platforms, such as PowerPC, where char is unsigned.

MultiSource/Benchmarks/DOE-ProxyApps-C/Pathfinder/searchAlgorithms.c
452 ↗(On Diff #111394)

Likewise, having this go to stderr can lead to a confusing output ordering.

545 ↗(On Diff #111394)

Having this go to stderr can lead to confused ordering with the other outputs.

This revision was automatically updated to reflect the committed changes.
test-suite/trunk/MultiSource/Benchmarks/DOE-ProxyApps-C/Pathfinder/main.c