Almost everywhere eta is cast to or otherwise treated as an int.
I suspect that the existing int64_t treatment of eta is a carryover from the constant time code where the specific type is perhaps more important.
Almost everywhere eta is cast to or otherwise treated as an int.
I suspect that the existing int64_t treatment of eta is a carryover from the constant time code where the specific type is perhaps more important.
eta -> zeta
Almost everywhere eta is cast to or otherwise treated as an int.
On AMD Ryzen 5950X, GCC 12.2.0:
At -O2, master:
scalar_inverse , 2.155 , 2.155 , 2.156
scalar_inverse_var , 1.419 , 1.420 , 1.422
field_inverse , 2.149 , 2.149 , 2.150
field_inverse_var , 1.408 , 1.409 , 1.410
Benchmark , Min(us) , Avg(us) , Max(us)
At -O2, this PR:
scalar_inverse , 2.155 , 2.156 , 2.157
scalar_inverse_var , 1.456 , 1.457 , 1.457
field_inverse , 2.147 , 2.148 , 2.149
field_inverse_var , 1.449 , 1.450 , 1.451
(~2.5% slower)
At -O3, master:
scalar_inverse , 2.260 , 2.260 , 2.261
scalar_inverse_var , 1.397 , 1.398 , 1.399
field_inverse , 2.214 , 2.214 , 2.215
field_inverse_var , 1.382 , 1.383 , 1.384
At -O3, this PR:
scalar_inverse , 2.259 , 2.260 , 2.261
scalar_inverse_var , 1.387 , 1.387 , 1.388
field_inverse , 2.214 , 2.214 , 2.214
field_inverse_var , 1.366 , 1.366 , 1.366
(~1% faster)
Oh well.