BLAS-based update_weights! (3x speedup)