我正在寻找可用于计算极大(数百万个元素,不一定是正方形)矩阵的零空间的最快算法/程序包。任何语言都可以,最好是 Python/C/C++/Java。非常感谢您的帮助!
最佳答案
避免破坏 CPU 缓存的方式在很大程度上取决于矩阵的存储/加载/传输方式,这一点您没有解决。
有一些通用的建议:
将问题分解为工作线程处理每个线程的连续行
递增指针(在 C 中)以遍历行并保持每个线程的计数
在所有工作线程结束时合并每个线程的结果。
如果您的矩阵单元格由位(而不是字节、整数或数组)组成,那么您可以读取 words
(在 32 位/64 位上为 4 字节或 8 字节平台)以加快计数。
问题描述中有太多问题没有回答,无法给您任何进一步的指导。
关于c++ - 计算大矩阵的零空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12161182/