是否有稀疏矩陣庫複製密集BLAS的功能?需要一個稀疏矩陣庫
我願意至少:
- 高效SYR和SYRK(秩k值更新)與稀疏輸入(以及可能的緻密輸出),
- 選項稀疏對稱存儲,
- DOT ,NRM2,轉置和其他標準的好東西。
儘管命名和API不需要以BLAS爲中心,只要它能完成這項工作即可。首選C或Fortran,但C++也可以。
我看着MKL,scipy.sparse,uBLAS和Eigen3,但他們既沒有支持我需要什麼或者我無法弄清楚他們是否這樣做。
是否有稀疏矩陣庫複製密集BLAS的功能?需要一個稀疏矩陣庫
我願意至少:
儘管命名和API不需要以BLAS爲中心,只要它能完成這項工作即可。首選C或Fortran,但C++也可以。
我看着MKL,scipy.sparse,uBLAS和Eigen3,但他們既沒有支持我需要什麼或者我無法弄清楚他們是否這樣做。
我很抱歉讓人失望,但據我所知,恐怕答案是否定的。我對稀疏數據進行了廣泛的研究,並沒有發現用於稀疏矩陣操作的深層庫(即BLAS級別)。在比BLAS更高的層面上,Matlab,R,Python和其他語言提供了廣泛的支持。由於稀疏矩陣(散射,對稱,帶狀或三對角線,塊對角線)類型的變化,其內容(二進制,整數,實數)及其數學屬性(例如,肯定的 - 不能保證的,滿秩的 - 不常見的)等等會使優化複雜化。相反,我傾向於編寫自己的代碼來處理稀疏矩陣,重新使用我可以用於存儲和簡單計算(如乘法)的東西。
隨着時間的推移,一個好的低級圖書館將會出現,但我還沒有看到它。
我發現了很多的歡樂與Matlab和R.稀疏的支持對於R,看看@這些軟件包:矩陣,sparseM,和垃圾郵件。還有其他人,但我遠離我的電腦。 – Iterator