2012-06-27 8 views
0

我需要一個替代std庫的矩陣函數,最好是一個快速且非常便攜的函數。它需要線程安全,能夠執行矩陣乘法等操作,並且需要支持16位整數。我查看了「基本線性代數子程序」維基百科頁面,但找不到我需要的內容。谷歌也沒有太大的幫助。我遇到了像Eigen和dlib這樣的近似命中,但沒有什麼能完全符合我的需求。有誰知道我有一個很好的替代庫嗎?需要一個支持16位整數的免費線程安全矩陣數學庫(C++)

預先感謝您!

+0

我不知道它滿足您的所有要求,但是您看過Boost UBLAS嗎? –

+0

這可能很難找到,因爲規範要求「int」爲32位或更大。模板庫(Boost庫很可能)可能是你唯一的希望。 – ssube

回答

1

我不確定這樣的事情是否存在,因爲在不知道使用模式的情況下使其變得安全並不會讓它變得非常平行。這是你可以對矩陣庫進行線程安全處理的唯一方法,就是在整個庫被使用時鎖定整個庫,實質上是使它不平行。

編寫或找到您自己的互斥類,然後用互斥鎖保護您的矩陣數學運算。

這是從基本的矩陣類中派生出來的,用來添加互斥鎖,然後在對任何矩陣對象進行操作之前鎖定它的互斥鎖。有了一點關於你的使用模式的知識,你可以使這種方式更加平行,如果鎖定發生在庫中可以做到。

+0

這不是我正在尋找的答案,但由於您是唯一回答問題的人(除了評論),並且由於沒有人會給出答案,所以我會說你的答案是被接受的答案。感謝您提供解決方案。 – Craw