finish SIMD implementation