未知のサイズの 2 つの大きな行列を合計するために CUBLAS を使用しようとしています。(可能であれば) 完全に最適化されたコードが必要なので、行列加算コード (単純) を書き直すのではなく、CUBLAS、特に A と C (B が単位行列の場合) を合計できる cublasSgemm 関数を使用することにしました: *C = alpha*op(A)*op(B)+beta*c*
問題は次のとおりです。C および C++ は行列を行優先形式で格納しますが、cublasSgemm は (fortran との互換性のために) 列優先形式で動作することを意図しています。A と B を最初に転置するかどうかを指定できますが、C を転置するように指定することはできません。そのため、行列の追加を完了することができません..
行列の最大サイズは 20000x20000 程度なので、自分で C 行列を転置することはできません。
解決方法を教えてください。