Здравствуйте, Nuzhny, Вы писали:
N>На CUDA/OpenCL такое сплошь и рядом
Так это — высокоспецифичные средства обработки, к которым обращаются, когда сразу видно, что обычные процессоры не потянут. И в общей массе вычислений их используют редко. А я говорю о том, что требование понимать тонкости работы аппаратных магистралей, кэшей и прочего, часто предъявляется совершенно рядовым программистам, которым сперва неплохо бы набить руку на "общей алгоритмистике", а не лезть в глубины.
N>В С++ на CPU у меня был скачок производительности, когда я свою очередь на мьютексах заменил на lock-free
Тоже весьма специфический случай, коих в общей массе очень мало. То есть — для узких специалистов, а не для массового кодера.
Это — вполне. Но лишь в том случае, когда матрицы нужно умножать много и часто. Если за секунду нужно перемножить пару-тройку небольших, то подобные оптимизации просто будут выглядеть круто, но погоды не сделают.