我正在为矩阵使用 Armadillo C++ 库。
我想将一些行复制到外部数组(我需要将它们复制到 gpu)。 有没有快速的方法来做到这一点?
如果我使用 .rows
,它会给我一个无法访问数据指针的 subview ,因此我必须迭代这些值并将它们一一复制。这非常慢。
还有其他选择吗?
谢谢。
最佳答案
Armadillo 逐列存储数据(为了与 LAPACK 兼容),因此通过 .colptr() 提取列是首选方法。您可以重构您的代码,以便逐列而不是逐行存储数据。实现此目的的一种蛮力方法是转置矩阵。
关于c++ - Armadillo - 如何提取行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21552258/