Added Backprop kernel from Rodinia benchmark.
The kernel is modified such that Polly recognizes SCoPs in it.
Runtime:
With Polly: 0.40 sec
Without Polly: 0.81 sec
Paths
| Differential D48046
[test-suite] Backprop kernel from Rodinia Benchmark ClosedPublic Authored by proton on Jun 11 2018, 12:57 PM.
Details Summary Added Backprop kernel from Rodinia benchmark. Runtime:
Diff Detail Event TimelineComment Actions Polly only optimizes part of the kernel. The loops containing exp calls are not. The swtich -ffast-math might help. Comment Actions Added -ffast-math flag... Polly recognizes entire kernel but still no performance improvement with Polly. Comment Actions
This revision now requires changes to proceed.Jul 13 2018, 12:27 PM
Comment Actions It runs for 1.1 sec for normal problem size and 0.6 sec for smaller Changes:
Comment Actions test-suite integration LGTM
This revision is now accepted and ready to land.Aug 2 2018, 4:46 PM Comment Actions Changes:
Closed by commit rL339052: Add backprop kernel from Rodinia benchmark (authored by proton). · Explain WhyAug 6 2018, 1:40 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 152379 backprop/CMakeLists.txt
backprop/Makefile
backprop/backprop.h
backprop/backprop.c
backprop/backprop.reference_output
backprop/main.c
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
This ABS implementation doesn't work correctly for negative zeros, use fabs() which is likely to be faster anyway.