首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用cuda计算二元NxN矩阵的行列式

用cuda计算二元NxN矩阵的行列式
EN

Stack Overflow用户
提问于 2020-01-17 22:59:44
回答 1查看 192关注 0票数 3

我正在寻找一种好的方法来计算二进制NxN矩阵的行列式。

到目前为止,我发现了这个:https://github.com/OrangeOwlSolutions/Linear-Algebra/blob/master/DETERMINANT/determinant.cu,但是这个实现可能适用于一般的矩阵(浮点),而我只需要处理整数。此外,cuBLAS或cuSOLVER仅支持双精度矩阵。

EN

回答 1

Stack Overflow用户

发布于 2020-07-03 18:58:30

根据this reference的说法,一个秩为N的square (0,1)-matrix的行列式有一个已知的上界。

对于N=36,确定的上限为1200757082375992968,这需要61个整数位才能精确表示。考虑到图形处理器只有64位长度的本地整数类型,如果没有某种大整数实现(如果存在),这绝对不可能在整数中的N=64中做到这一点,这将是100%的软件实现,并且保证非常慢。

因此,唯一可行的实现是在双精度浮点数上执行,并且现有的双精度线性代数库之一将是GPU上的最优(也是唯一的)可行解。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59789839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档