2 comments

[ 0.25 ms ] story [ 18.2 ms ] thread
In line 423 or the optimised code there's a typo: "sort2(e,i)" should be "sort2(i,e)"
branch-less programming is a fascinating area. you have used -O3. Possibly, the compiler is also vectorizing some parts of the code. I am curious to know the contribution of AVX/SIMD to the speed-up (i.e, how much speed-up avoiding branches "alone" yields)