FIX: Timing using std chrono library since sys/time.h doesn't work on Windows. Perhaps the best alternative is to use the CUDA timing facilities.
FIX: Unnecessary convertion of double to float
NEW: Accumulation/reduction of triangle energy values. Commented out since it doesn't behave as expected.