2
我需要計算以下矩陣運算:
D * A
其中D是稠密的,A是稀疏的,採用CSC格式。
cuSPARSE允許乘以稀疏*密集,其中稀疏矩陣採用CSR格式。
以下相關的問題,我可以簡單地通過轉置A「轉換」CSC到CSR。
另外,我可以計算(A^T * D^T)^ T,因爲我可以處理得到轉置的結果。
在這種方法中,我也可以避免「轉置」A,因爲CSR^T是CSC。
唯一的問題是cuSPARSE不支持在此操作中轉置D,所以我必須事先轉移它,或將其轉換爲CSR,這是一種浪費,因爲它是非常密集的。
有什麼解決方法嗎?
謝謝。cuSPARSE密集時間稀疏
可能您已經知道這一點,但您可以使用[geam](http://docs.nvidia.com/cuda/cublas/index.html#topic_9_1)函數在cublas中轉置一個緻密矩陣。 –
這是一個獨立的操作,還是你正在做'A'* D * A'? –
該操作是X - D * A 其中X和D非常密集,A非常稀疏 – MrDor