Я думаю, что ответ сильно зависит от размера ваших матриц.
Если вы можете разместить матрицу в разделяемой памяти, я бы, вероятно, использовал один блок для вычисления этого и имел бы все внутри одного ядра (возможно, больше, где это вычисление является лишь частью его). Надеемся, что если у вас есть больше матриц, и вам нужно вычислить вышеприведенное уравнение несколько раз, вы можете сделать это параллельно, используя всю вычислительную мощность GPU.
Однако, если ваши матрицы намного больше, вам понадобится больше блоков для их вычисления (посмотрите пример умножения матриц в руководстве CUDA). Вам нужна гарантия того, что умножение завершено на все блоки, прежде чем вы приступите к следующей части вашего уравнения, и если это так, вам потребуется вызов ядра для каждой из ваших операций.