В общем тема не простая, я посмотрел asm, и выяснил (надо отметить слабое знание asm), что в некоторых случаях компилятор опримизирует так, что получается лучше, чем если писать самому используя simd инструцкии, так как он оптимизирует, не конкрентую процедуры а всю программу. Хотя вручную написанный на simd инструкциях код ведет себя более предсказуемо, разница +/- 30%. В общем, наверное для меня есть смысл просто попомогать компилятору с помошью alignas, -О3, -march=native, __restrict__ ну и писать попроще.