c++ - 计算大矩阵的零空间

标签 c++ python c algorithm matrix

我正在寻找可用于计算极大(数百万个元素,不一定是正方形)矩阵的零空间的最快算法/程序包。任何语言都可以,最好是 Python/C/C++/Java。非常感谢您的帮助!

最佳答案

避免破坏 CPU 缓存的方式在很大程度上取决于矩阵的存储/加载/传输方式,这一点您没有解决。

有一些通用的建议:

  1. 将问题分解为工作线程处理每个线程的连续行

  2. 递增指针(在 C 中)以遍历行并保持每个线程的计数

  3. 在所有工作线程结束时合并每个线程的结果。

如果您的矩阵单元格由位(而不是字节、整数或数组)组成,那么您可以读取 words(在 32 位/64 位上为 4 字节或 8 字节平台)以加快计数。

问题描述中有太多问题没有回答,无法给您任何进一步的指导。

关于c++ - 计算大矩阵的零空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12161182/

相关文章:

c++ - 指向非静态成员函数 "formally"的指针不被视为指针

c - 为什么这两个文件有不同的十六进制输出?

c++ - 重载类型不匹配

c++ - 传递模板供以后在其他结构/类上下文中使用

Python - 如何按照指定的属性顺序对对象数组进行双重排序?

python - 如何在 selenium 中使用 chrome webdriver 在 python 中下载文件?

python - 为 numpy、scipy 和 matplotlib 的 intersphinx 链接指定目标

c - 如何用C语言制作可遍历的树数据结构

c - 用 C 编写跨平台应用程序

c++ - 对 'vtable of derived_class' 的 undefined reference