lattice / quda

QUDA is a library for performing calculations in lattice QCD on GPUs.
https://lattice.github.io/quda
Other
287 stars 94 forks source link

Fix failure check counter overflow #1396

Closed hummingtree closed 1 year ago

hummingtree commented 1 year ago

Large global volume causes the failure check counter (currently as int) in the tests to overflow. As a result negative numbers are shown in the logs, e.g.,

1.000000e-01 Failures: 0 / 2415919104  = 0.000000e+00
1.000000e-02 Failures: 0 / 2415919104  = 0.000000e+00
1.000000e-03 Failures: 0 / 2415919104  = 0.000000e+00
1.000000e-04 Failures: 0 / 2415919104  = 0.000000e+00
1.000000e-05 Failures: 537582906 / 2415919104  = 2.225169e-01
1.000000e-06 Failures: -2115317401 / 2415919104  = -8.755746e-01
1.000000e-07 Failures: -1902728577 / 2415919104  = -7.875796e-01
1.000000e-08 Failures: -1881416472 / 2415919104  = -7.787581e-01
1.000000e-09 Failures: -1879284507 / 2415919104  = -7.778756e-01
1.000000e-10 Failures: -1879071778 / 2415919104  = -7.777875e-01
1.000000e-11 Failures: -1879050525 / 2415919104  = -7.777787e-01
1.000000e-12 Failures: -1879048416 / 2415919104  = -7.777779e-01
1.000000e-13 Failures: -1879048211 / 2415919104  = -7.777778e-01
1.000000e-14 Failures: -1879048197 / 2415919104  = -7.777778e-01
1.000000e-15 Failures: -1879048192 / 2415919104  = -7.777778e-01
1.000000e-16 Failures: -1879048192 / 2415919104  = -7.777778e-01