Я пытаюсь использовать функции cuBLAS в пакете Anaconda Numba и имею проблему. Мне нужны входные матрицы в C-порядке. Вывод может быть в порядке Fortran.
Я могу запустить пример script с пакетом здесь. script имеет две функции: gemm_v1
и gemm_v2
. В gemm_v1
пользователь должен создать входные матрицы в порядке Fortran. В gemm_v2
они могут быть переданы в реализацию CUDA GEMM и транспонированы на устройстве. Я могу заставить эти примеры работать с квадратными матрицами. Однако я не могу понять, как получить gemm_v2
для работы с неквадратными входными матрицами. Есть ли способ работать с входными матрицами C-порядка, которые не являются квадратными?
Примечание:
В идеале, как входные, так и выходные матрицы останутся на устройстве после вызова GEMM, который будет использоваться в других вычислениях (это часть итерационного метода).