Sto facendo alcuni calcoli e faccio alcune analisi sulle forze e debolezze delle diverse implementazioni BLAS. tuttavia mi sono imbattuto in un problema.Come trasporre una matrice in modo ottimale usando blas?
Sto testando cuBlas, fare linAlg sulla GPU potrebbe sembrare una buona idea, ma c'è un problema.
L'implementazione cuBlas utilizza il formato colonna-principale, e poiché questo non è ciò di cui ho bisogno alla fine, sono curioso di sapere se esiste un modo per far sì che BLAS esegua la trasposizione delle matrici?
".... e poiché questo non è quello che alla fine .....". Manca un paio di parole? – talonmies
A partire da CUDA 5.0, cuBLAS ha 'cublas geam', che è una routine molto efficiente per eseguire la trasposizione di matrici. Per un codice completo che implementa questa soluzione e confrontando le prestazioni con la trasposizione di matrici usando Thrust, vedere [Qual è il modo più efficace per trasporre una matrice in CUDA?] (Http://stackoverflow.com/questions/15458552/what-is- il-più-efficiente-way-to-trasporre-a-matrix-in-CUDA/21803459 # 21803459). –
JackOLantern