Уточнение ведущего измерения в CUBLAS при переносе

Для матрицы A в документации указано только, что соответствующий главный параметр измерения lda относится к:

ведущий размер двумерного массива, используемый для хранения матрицы A

Таким образом, я предполагаю, что это всего лишь количество строк A с учетом основного формата хранения столбцов CUBLAS. Однако, если мы рассмотрим Op(A), к какому теперь относится главный размер?

Ответ 1

Ничего не меняется. Ведущий размер всегда относится к длине первого измерения массива. Флаги порядка данных (нормальные, транспонированные, сопряженные) только указывают BLAS, как хранятся данные в массиве. Они не влияют на сам массив, который всегда упорядочен по столбцам и требует значения LDA для индексирования в 2D.

Итак, сохраняются ли данные матрицы в транспонированной форме или нет, массив m x n всегда имеет LDA >= m.

Ответ 2

Если вы используете представление с основной строкой, тогда число "столбцов" будет ведущим измерением, и наоборот, в представлении с основными столбцами количество "строк".