Я для скорости всегда ставлю функции на с, с++ чисто для вычислений не нужен. Фортран возможен, но это уже от наличия библиотек зависит, мало ли что-то специфическое нужно.
Открывайте быстрее прекрасный мир оберток для blas/lapack типа плюсового eigen и портов блас на куду. Велосипеды - это не то (хотя для понимания полезно, конечно)