Cognition 工程师用 Devin 智能体完成 RSA-260 因式分解,刷新公开纪录
RSA 260 的因式分解
精选理由
作者亲历了用 Devin 智能体在约三周内分解 RSA-260 的全过程,给出成本明细和人类介入的具体环节,可帮助读者判断智能体承担大规模科研计算的真实边界。
AI 摘要
Cognition 员工 samyok 率团队驱动多个 Devin 智能体构建了高性能 GPU 格子筛,对 260 位的 RSA-260 完成因式分解,刷新此前 RSA-250(2020 年 2 月)保持的公开 RSA 挑战纪录。
正文 · AI 翻译
分解 RSA-260
过去几周,Cognition 研究团队和我一直在优化我们的作业调度器,以更好地利用解耦计算资源。作为概念验证,同时也因为我过去十年左右一直把因数分解当作爱好,我驱动了一群 Devin 去完成 RSA-260 的因数分解。为此,我的 Devin 们构建了世界上性能最高的 GPU 格筛,使得因数分解的成本比此前公开的最先进水平低 10 倍。以下是分解结果:
RSA-260(一个 260 位数)创下了公开求解的 RSA 因数分解挑战 中最大数的新纪录,该挑战用于评估破解 RSA 密码系统 的可行性。此前的纪录 RSA-250 于 2020 年 2 月创下。作为参照,最先进的 RSA 公钥包含 2048 位(约 617 位十进制数字)的因数分解问题,而 1024 位(约 309 位十进制数字)的 RSA 已于 2013 年被弃用。
下面我会给出一些关于这是如何实现的细节,但有两个重要结论:
超大规模云厂商或前沿 AI 实验室很可能能够以每个数约 3000 万美元的成本分解 RSA-1024 数——而且,再稍加优化,成本很可能大幅降低。另一方面,RSA-2048 的难度仍大约是 RSA-1024 的十亿倍,并且似乎并未受到这项工作的实质性影响。
Devin 是一位足够强大的软件工程师,能够解决计算数论与 GPU 性能工程交叉领域的一个极具挑战性的问题。我的角色主要是设定优先级、建立基准,并在工作偏离轨道时及时察觉。除此之外,Devin 自主地端到端处理了测量、集群操作和优化。这替代了原本可能需要一支高度专业化的领域专家团队耗费数月才能完成的工作。
总而言之,密码分析工作、更广泛的计算数学、以及很可能大多数大规模科学计算研究的入门门槛,都远低于过去。在任何可以用编程来解决研究问题的地方,激动人心的工作都在向人们招手;我鼓励所有人都怀抱雄心,去探索自主软件工程智能体应用于这些领域时能够做到什么!
这是怎么发生的?
与一些流传中的说法相反,我并不是通过手工猜测和检验 130 位的质数来分解 RSA-260 的。Cognition 也尚未造出数千量子比特的量子计算机。RSA-260 是通过一种面向 GPU 的通用数域筛法(GNFS)新实现来分解的,该实现借助 Devin 准备并运行。GNFS 是已知对于大约 100 位以上的(大多数)数字最高效的算法,此前多次破纪录的 RSA 数分解也使用了它。
该实现是对CADO-NFS进行了大幅修改的版本。我基本上没有报告任何算法层面的进展——在 GPU 上实现格筛法和稀疏线性系统求解,只需要“老派的性能工程”就能利用 GPU 那荒谬的内存系统。
成本估算
总的来说,我估计这次分解大约花费了 4,900 GPU-天,即 13.5 GPU-年,按当前市场价格约合 40 万美元。更详细地说,现代 GNFS 实现由几个顺序运行的阶段组成:多项式选择、格筛法和线性系统求解。时间分布如下:
多项式选择耗时 643 GPU-天(这个数字异常偏高,基本上是因为操作者能力不足)
筛法耗时 3,813 GPU-天
线性系统求解耗时 467 GPU-天(其中约 7% 因崩溃或被更重要的工作抢占而未能取得进展)
这是我利用集群个位数百分比的资源做的副业项目,期间还在优化我们的作业调度器,以改善分配、利用 disaggregated compute。这对更大规模的 RSA 实例意味着什么?
RSA-1024 相当于 309 位数字;按照标准 GNFS 的规模推算,这仅仅比 RSA-260 多出 78 倍的计算量。我估算,按市场 GPU 价格计算,分解 RSA-1024 的成本大约为 3000 万美元,这可以与实际耗时进行权衡取舍。我确知当前的实现仍然明显次优;如果进一步的适度工作能将分解 RSA-1024 的成本再降低 2 倍,我不会感到意外。
当然,RSA-1024 不安全这件事并不是新闻。早在 2000 年代中期就有人猜测 NSA 可能具备经济地攻破 RSA-1024 的能力(参见例如 TWIRL 或 Bernstein 矩阵机)。相反,如下文所述,主要进展是:(1) 分解在成本(美元和时间)上可能更低;(2) 可能有更多方具备执行分解的能力(你只需要足够的 GPU,而不必制造专用硬件);以及 (3) 非密码学研究者现在能够相对容易地参与加速分解的工作。
最后,我要强调,这些效率提升对使用 GNFS 分解 RSA-2048 规模数字的可行性几乎没有影响。
利用闲置算力进行分解
这次分解是在闲置或碎片化算力上以零边际成本运行的,这些算力原本无法用于其他用途。为什么会有这样的算力存在?
我们用于 LLM 训练和推理的集群包含 NVL72 机架,每个机架名义上由 18 台通过高速 NVLink 互连的计算机组成。LLM 工作负载使用单个机架内的计算机分组,以利用这种高速互连。作业调度器必须解决一个约束优化问题,将工作负载打包进机架。在这种全局分配中,一些机架最终可能会剩下一两个空闲节点;有时作业会请求备用节点以应对故障转移,或者作业可能需要偶数台计算机,而某个机架上只有 17 台。对我们来说,这些低效加起来只占整体算力的个位数百分比。
为了利用这些闲置算力,作为第一步,我改造了我们的作业调度器,让它以最低优先级将单节点作业填充到其他工作负载周围。然而,我们还缺少一个稳定的、可随时被抢占的单节点工作负载来源。自然,此时我想到了格筛法,它完美契合这种情况。
格筛法在数十亿个小型工作单元上具有极佳的并行性,可以一次使用单个节点推进,并且可以安全地被即时抢占。它也是 GNFS 中计算开销最大的部分,因此完成筛法就意味着在因式分解上取得了很大进展。然而,此前所有公开的 GNFS 因式分解记录都只使用 CPU 进行格筛;事实上,由于在 GPU 上高效实现格筛存在挑战,很长一段时间内人们并不清楚 GPU 格筛在整体上是否更具成本效益。
简而言之,我所缺的只是一个性能足够高的 GPU 格筛器,能够接受分解 RSA-260 所需的参数。那么,我做了什么?问 Devin。
使用 Devin 优化 GNFS
太平洋时间 8 月 13 日 0:11:58,我让 Devin 去为 las(CADO-NFS 的 CPU 格筛器)生成一个可直接替换的替代品。以下是我使用的提示词:
CADO-NFS 是用于执行 GNFS 的 FOSS 软件。我希望你开发一个快速的 GPU 格筛器。这在现有技术条件下历来很困难,因为 CPU 格筛的优化使用了大量条件分支和复杂的内存访问模式,而且同时精通 GPU kernel 编写和数域理论的人非常少。然而,GPU 中可用的更高总内存带宽预示着更高的性能上限。而如今这个交集里有了你。你有可用的 Modal 访问密钥,我授权你使用它们来启动一台 GPU 机器进行性能测试。获取 CUDA 工具链等并在本地构建;GPU 仅用于性能测试,并在两次测量之间将其关闭。由此产生的 GPU 格筛器应当可以直接替换 CADO-NFS 的筛器步骤。不断迭代,直到你超过 CPU 格筛器的性能。
两小时后,我补充说 glas(当然是 GPU las)应当能够处理 RSA-250 所用的参数。然后我就去睡觉了。醒来后发现,在又迭代了 7 个小时之后,Devin 已经成功了。
在接下来的一周里,我驱动 Devin 优化格筛,然后是 GNFS 流程的其余部分。首先,我会对我们的 GNFS 优化做一个高层次的描述,然后我会描述优化工作流程。
GNFS 优化(高层概述)
在高层上,GNFS 由若干按顺序运行的阶段组成:多项式选择、格筛法和线性方程组求解。
多项式选择确定了算法所运行于的数域。多项式的选择控制着格筛法步骤上的常数因子加速。因此,通常值得将整体筛法计算中固定比例(约 5%)的算力用于寻找一个“好”的多项式。这里几乎没有技术创新;我们将 CADO 的第一阶段多项式选择适配到了 GPU 上(结果见 gps1),同时还使用了 msieve 经过良好优化的第一阶段多项式选择中的一些内核组件。多项式选择基本上是高度并行的。
GNFS 计算工作量的主体在于格筛法。格筛法的目标是在 GF(2) 上产生大量(在我们的案例中为 83 亿条)稀疏线性关系,这里(省略一些细节)向量条目表示某个光滑数的素因子分解中素数指数的奇偶性。格筛法同样可以针对称为“特殊 q”的工作项高度并行,但每个工作项都需要在一个大数组中的(就我们的目的而言)伪随机位置执行大量读/写操作;处理这一点是优化筛法过程中的主要技术挑战。
最终,我们将这些关系打包成一个 GF(2) 上的大型矩阵,并使用线性方程组求解来寻找线性相关性。在这个规模下,线性方程组求解通常是分布式的,并且需要大量通信带宽;而 Infiniband 和 NVLink 恰好能充分提供这种带宽。block Wiedemann 算法允许在一定程度上放宽通信约束,而 CADO-NFS 中的特定实现也易于优化并可在 GPU 上运行,我们正是这样做的。解可以被处理为模 N 的平方同余式,从而得到因数分解。
总体而言,Devin 几乎修改了每一部分,包括修改了几个接口:
一个适配 GPU 的 CADO-NFS 第一阶段 polyselect 版本,包含来自 msieve 的组件
一个基于 las 的 GPU 优化格筛
一个经过优化的 CADO 头部,用于处理工作单元量
并行化并优化的 dup/purge 以及融合 merge/replay 程序
一个新的 GPU 优化 block Wiedemann 实现
GPU 加速的 sqrt
相关的运行脚本
CADO-NFS 流水线中唯一未被改动的程序是:cado-nfs.py 本身、polyselect_ropt(第二阶段多项式选择)、makefb 以及 dup1。为了在所需规模的合成输入上获得合理的性能,我们甚至不得不优化 fake_rels。
注意:我对这些组件的理解,就好比一个中级汽车爱好者对汽车部件的理解:知道它们在整体系统中的大致作用、对性能的影响、做出改动时的一些权衡,以及良好的运行和使用方式是什么样的——但不了解底层的物理原理,也不知道如何从原材料制造这些部件。也就是说,我并不太懂底层的数学。我可以告诉你,多项式选择为格筛产出提供了一个常数因子;但我无法告诉你多项式在筛选中是如何使用的。在这个领域,我远非专家!
优化工作流程
我同时驱动了多个 Devin。在项目为期 3 周的时间里,我平均同时运行 3 个 Devin 会话,最多时达到 18 个。这些会话大致分为两类:
迭代优化单个组件——设计并运行实验、解读结果、选择目标改进项、实施改进,然后重复
在集群上管理端到端的因式分解运行——检验整条流水线及配套脚本,找出最重要的低效环节(错误、利用率、性能)以供进一步优化
特别是,Devin 处理了以下工作中的很大一部分:
为筛法和线性系统求解选择和调优参数(尽管使用的是我不得不帮忙搭建的基准测试设备)
生成/优化多项式选择(同样,难度各不相同)
运行迭代优化循环
调试(自然是少不了的)
设置并优化处理脚本
在集群上编排大规模计算
我每隔几个小时与这个优化循环交互一次,其间穿插着与其他 Devin 会话沟通以处理我的日常工作。
Devin Cloud 对这种工作流来说尤其方便:会话是持久化的,且独立于我的电脑,并行化简单直接,沙箱机制可防止独立工作流之间相互干扰,会话还能自主运行数周。我们早已知道 Devin 在 GPU 编程、实验以及面向 ML 相关负载的集群管理方面很高效,但格筛法和 GNFS 相当不同;我发现 Devin 在这里的泛化能力令人印象相当深刻。
沿扩展阶梯向上攀登
这一工作流带来了惊人的推进速度,连我(甚至 Devin 本身)都几乎跟不上。最初五天,我们沿着一条扩展阶梯不断攀升。到这一阶段结束时,分解一个 190 位数字所花的时间,已经与开始时分解一个 157 位数字相当——略多于 3 小时。
目标开始时间(UTC)完成时间(UTC)实际耗时
C155(aliquot 数列 171648 中的一项)2026-08-14 21:51:502026-08-15 00:04:587,988 秒(其中包括因磁头碰撞测试造成的 1,412 秒中断)
C157(aliquot 数列 171648 中的一项)2026-08-14 13:39:582026-08-14 16:51:2411,486 秒
C173(aliquot 数列 9708 中的一项)2026-08-14 22:01:022026-08-15 09:18:4840,666 s
C175(近重位数)2026-08-16 00:32:512026-08-16 08:56:5030,239 s
C190(近重位数)2026-08-17 02:17:162026-08-17 07:34:5619,060 s
C201(奇完全数障碍)2026-08-17 09:42:442026-08-18 01:33:5957,075 s
C311 = (179^139 - 1)/1782026-08-18 06:52:442026-08-18 21:11:4651,542 s
C190(只为吓一吓某个随机生成半素数的 Devin)2026-08-18 22:12:282026-08-19 01:23:1111,443 秒
C344 = (11^331 - 1)/10(奇完全数之路的障碍)2026-08-31 10:44:542026-09-01 23:40:44132,950 秒
RSA-2602026-08-18 12:14:192026-09-03 01:48:571,344,878 秒
在分解完 C311(其难度大致相当于对一个 216 位数进行 GNFS)之后,更稳妥的做法本应是转而分解一个难度相当于 230 位数的数,以跨越剩下的那两三个数量级。但我估计 RSA-260 可以在一个月内完成,因此已经开始了多项式选择,尽管我知道线性代数部分仍然明显优化不足。
Devin 还需要我(或其他人类)做什么?
Devin 成功优化并执行了一条复杂的计算数论流水线,其规模此前需要相当多的人类专业知识才能完成。但我不能声称 Devin 是在整条端到端流水线上自主迭代的。想想它究竟需要我做什么,这很有意思。
不知何故,答案似乎是:还是很多。回想起来,Devin 声称我在 233 个用于因式分解的会话中的 192 个里,通过 3,328 条消息发送了 82,702 个词(502,887 个字符)(总计 14,450 ACU)。其中,Devin 自身启动了 101 个子会话,有 36 个完全没有我的介入。
Devin 需要我来承担执行功能,与它讨论并检验它正在做的事情是否合理,具体包括:
设定目标层级,并让 Devin 保持在恰当的范围内
识别出 Devin 何时在做无用功并加以纠正(“你不需要做那个测量”)
识别出 Devin 工作流程中反复出现的低效(“你可以把这部分设置工作摊销掉”)
指出尚未尝试的方向(“确保 GPU 永远不会因 CPU 而阻塞”,“你能在这里用 NVLink SHARP 吗?”)
整理实验框架和结果(“用这种方式做测量,在这里找之前的结果,不要每次都搞出新的、无法比较的方法”)
捕捉 Devin 何时过早放弃某个方向
虽然事后看来,我似乎提供了一些具体的技术洞见,但我最大的贡献大概在于手把手促成了统一的一套测量结果、基准和性能估算器的建立,而这些显然不会自行拼装成型。这使 Devin 能够更轻松地运行和理解测量,也让我能够了解进展的程度以及哪里还需要更多改进。
退一步说,我还想强调,这项工作没有 CADO-NFS 是不可能完成的。CADO-NFS 是 GNFS 的一个先进、稳健的开源实现,曾被用于此前的许多纪录,也被因数分解爱好者社区所使用。它提供了所有相关技术、流水线各阶段及其接口,以及一个参考 CPU 实现。借助这些,我可以让 Devin 集群大致独立地优化各个程序,并将输出与原始版本进行比较。与许多其他情况一样,我相信人类对问题的工程化分解对于让智能体取得进展至关重要。
事实上,我注意到代码库离上游 CADO-NFS 越远,智能体就越困惑。这可以归因于复杂性的累积,但我也在想,CADO-NFS 在预训练中的存在是否也与此有关。
博客文章的技术部分到此结束(附录除外,附录中有多得多的细节)。
杂感
这里发生的事情让我感到奇怪。成果上署着我的名字,但我并不清楚该如何在我自己、Devin、硬件以及整个外部世界之间分配功劳。
对于编程任务,我把当前的模型和智能体大致看作一台缝纫机或织布机。我以某种方式推动它运转;显然没有我它就无法发生,但我也不是用手在投梭。很难确切说清我的角色是什么,尽管我确信它并非无足轻重。从某种轻率的意味上说,用 Devin 做这件事与原本可能发生的情况并没有太大不同:我与一个远比我庞大、其精确运作机制对我而言晦涩难解的物质系统发生了交互,能量被耗散,结果随之产生。
另一方面,某种明显全新的东西正在发生。从第一次提示词到找到 RSA-260 的因子,大约过去了三周。这一速度体现出一种能力过剩,其程度我们才刚刚开始探索。我认为我们不应回避这种探索。尤其是,如果一个难题可以通过“单纯的编程”来解决,那么立刻尝试似乎就是值得的。
过去几天里,我们还看到了一些令人印象深刻的数学成果宣称,其中包括对某个千禧年大奖难题的宣称解答。我对人类理解力的流失有一些担忧。如果我自己动手做这件事,我本可以对 NFS 或 GPU 编程有更多了解,但即便如此,大概也比完全不用 Devin 时学到的更多。即便技术使我们能够或激励我们放弃人类理解,如何在全球范围内分配资源以维持人类理解,似乎仍是一个重要问题。与此同时,这些工具或许能让我们选择在何处深入理解最有价值,探索到任何个体此前都无法企及的更远处,并扩大能够做出有意义贡献的人群。我认为这项工作在两个方向上都是一个例证。
致谢
感谢 Alex Lombardi 提供数学方面的咨询以及大量编辑工作。
感谢我的雇主 Cognition;没有 Cognition 的算力,这一切都不可能实现。特别感谢 Cognition 研究团队容忍那些无休止反复重启的 glas 任务。还要感谢朋友们,尤其是我妻子 Jiwon Joung,对这个业余项目的支持。
我想把这项工作献给整个在线因数分解社区——GIMPS、mersenneforum、FactorDB、GPU to 72 以及其他所有人——感谢他们最初激发了我在这方面的兴趣,并让这场追逐持续下去。
参考文献
[1]F. Boudot、P. Gaudry、A. Guillevic、N. Heninger、E. Thomé 和 P. Zimmermann,《比较因式分解与离散对数的难度:一项 240 位数字实验》,Advances in Cryptology — CRYPTO 2020,LNCS 12171,第 62–91 页,2020 年。arxiv.org/abs/2006.06197
[2]CADO-NFS 开发团队,《CADO-NFS:数域筛法算法的一种实现》,软件项目,访问于 2026 年 9 月 9 日。cado-nfs.gitlabpages.inria.fr
[3]N. David 和 P. Zimmermann,《数域筛法中多项式选择的一种新排序函数》,75 Years of Mathematics of Computation,Contemporary Mathematics 754,第 315–325 页,2020 年。inria.hal.science/hal-02151093v4/document
[4]J. Franke 和 T. Kleinjung,《连分数与格筛法》,Special-Purpose Hardware for Attacking Cryptographic Systems — SHARCS 2005,2005 年。hyperelliptic.org/tanja/SHARCS/talks/FrankeKleinjung.pdf
[5]A. K. Lenstra、A. Shamir、J. Tomlinson 和 E. Tromer,《Bernstein 因式分解电路分析》,Advances in Cryptology — ASIACRYPT 2002,LNCS 2501,第 1–26 页,2002 年。research.tue.nl/en/publications/analysis-of-bernsteins-factorization-circuit
[6]J. Papadopoulos 及贡献者,《Msieve》,整数分解软件,访问于 2026 年 9 月 9 日。sourceforge.net/projects/msieve
[7]A. Shamir 与 E. Tromer,《利用 TWIRL 设备分解大数》,密码学进展 — CRYPTO 2003,LNCS 2729,第 1–26 页,2003 年。link.springer.com/chapter/10.1007/978-3-540-45146-4_1
[8]M. Tervooren 及贡献者,《FactorDB》,在线分解数据库,访问于 2026 年 9 月 9 日。factordb.com
[9]L. Valenta、S. Cohney、A. Liao、J. Fried、S. Bodduluri 与 N. Heninger,《分解即服务》,金融密码学与数据安全 — FC 2016,LNCS 9603,第 321–338 页,2016 年。eprint.iacr.org/2015/1000
[10]D. H. Wiedemann,《求解有限域上的稀疏线性方程》,IEEE 信息论汇刊,第 32 卷,第 1 期,第 54–62 页,1986 年 1 月。doi.org/10.1109/TIT.1986.1057137
附录 1:分解其他 RSA 数的成本估算
#对比 RSA-260CPU 核心年CPU 成本(美元)GPU 年GPU 成本(美元)
RSA-2300.053×372*260k*0.72*21.9k*
RSA-2400.142×1,000701k*1.9*58.8k*
RSA-2500.385×2,7001.89M*5.2*159k*
RSA-2601×7,010*4.91M*13.5414k*
RSA-102477.9×546,000*383M*1,050*32.3M*
RSA-204891.2B×6.39 × 10¹⁴*4.48 × 10¹⁷*1.23 × 10¹²*3.77 × 10¹⁶*
* = 估算值。成本假设为每 CPU 核心小时 $0.08、每 GPU 小时 $3.50。CPU 估算基于 RSA-250 的 GNFS 缩放,GPU 估算基于 RSA-260。
附录 2:RSA-260 运行的详细信息
多项式选择
多项式选择于 2026-08-18 12:14:19 UTC 开始。搜索过程并不规律,有些临时拼凑;它覆盖了不同 admin/admax 范围、素数上界 P 和 incr 值的多轮运行。搜索参数随着基准测试结果的产出而调整,由于对基准测试的错误解读,我在无产出的范围上浪费了大量搜索时间。这次运行的一个显著次优之处是在多项式选择上花费了过多时间;我们本可以在 1 天内搜索完预定范围,而不是 2.5 天,而且只花 12 小时搜索少于预定范围很可能也是值得的。
产生所有试筛多项式的四次第一阶段运行共使用了 15,424 GPU 小时,即 643 GPU 天。它们的参数如下:
#Pincrad 范围GPU 小时多项式根优化
12e71108801.1e5 到 7.67e11743.65,545,87311,468
23e74655851204.7e8 到 1.55e1473.0323,9794,602
32e71108801.1e5 到 1.87e124,352.929,976,690399
43e71108801.1e5 到 3.14e1210,254.147,711,1811,864
总计15,423.683,557,72318,333
我们共试筛了 22 个不同的多项式,可在此处附件中查看。截至 2026-08-19 10:53,我们从手头可用的多项式中按 MurphyE 选出前 5 名进行了测试,它们全部来自前两轮运行;随后又选取了 17 个,作为截至 2026-08-21 06:08:18 按 MurphyE、CADO 的 E、E'sigma 和 E'chi2(来自David 和 Zimmermann)这四项评分各自前 10 名取并集的结果,它们来自第 3 轮和第 4 轮运行。
经过试筛后,我们最终采用的多项式为:
Y0: -221673351566952308029695237213052836736183 Y1: 5766034074997040571677 c0: 4438326758963496161172848385157253702543453653246272 c1: -2760724998540198898516614911500562788411825980 c2: -3288611114230578563553198296458642435160 c3: 950383683194810225243935581823335 c4: 541831494549130032021283293 c5: -32669802676467106300 c6: -1863645537600 skew: 3226459.164
该多项式的一些属性:次数为 6,skew 为 3,226,459,MurphyE 为 6.633e-10(Bf=2.749e11,Bg=1.374e11,area=8.59e18),alpha 为 -9.57(projective 为 -2.38),side-1 lognorm 为 73.31,有 6 个实根。(附件中的 c260-r1)。
第二好的试验筛多项式(c260-r2)的 MurphyE 为 6.215e-10,产率低 1-2%。按 MurphyE 排名前五中最好的一个(c260-p1)为 5.674e-10,产率低 13-16%。
筛选
筛选于 2026-08-22 10:01:12 UTC 开始,并于 2026-08-30 07:26:15 UTC 达到目标;最后的工作单元于 2026-08-30 07:32:17 UTC 上传。筛选的挂钟时间为 189.5 小时 = 7.9 天。筛选参数为 lpb0/lpb1 = 36/37(候选 lpb3637),lim0 = lim1 = 2^31,mfb0/mfb1 = 72/111,ncurves 50/35,A = 33,sqside = 1。特殊 q 范围为 q = 1.0e9 到约 q = 3.91e10(最高的工作单元结束于 39,091,320,000),总计 632,249 个工作单元。我们使用的特殊 q 范围为每个工作单元 60,000,这样每个工作单元大约需要 10 分钟。
筛选过程相对顺利。我们在此过程中两次升级了筛选器,相比筛选开始时获得了 14-17% 的性能提升。以来自同一 GPU 的连续上传之间的中位间隔来衡量端到端工作单元时间,我们的 GB200 从 585 秒降至 486 秒,GB300 从 586 秒降至 504 秒,B200 从 628 秒降至 541 秒。总筛选时间为 3,813 GPU-天。
下图展示了筛选进度随时间的变化。
RSA-260 筛选进度
标记为 OK 的工作单元
标记为 OK
目标:13.85B 原始数据
原始关系与唯一关系
原始、模型唯一、模型原始、实测唯一、实测
从 q = 1,000,000,000 开始。
每个 special-q 的产出率:实测值与模型值
原始、模型唯一、模型原始、实测唯一、实测
最终,我们获得了 13,849,985,589 条原始关系用于筛选(略低于 13.85B 的目标,因为有四个文件在磁盘空间耗尽后被截断),筛选后得到 8,298,749,059 条唯一关系(重复率 40.1%),以及 3,991,449 条自由关系。
线性代数
去重/清除/合并/筛选端到端耗时 4 小时(此前一次运行在进行了 2 小时后崩溃),在一台 192 vCPU 节点的 176 个线程上完成,生成了一个 656,182,601 x 656,182,189 的矩阵,非零元素数为 98,431,741,898,密度为每行 150。我们曾对最优合并做过一些考量,并在筛选过程中调整了目标密度,但最终落在接近 150 的位置。
我们在筛选进行的同时优化了线性代数。优化过程颇为动荡,因为我们同时协同优化了矩阵参数、求解器布局,以及针对推测性最终矩阵特性的代码目标。对于具有代表性的测试输入,我们最终收敛到几个使用优化后的 fake_rels 形成的矩阵。这又反过来影响了筛选:线性代数性能的变化(以及偏离试验筛选产出估计)数次微调了关系目标。我不清楚我们距离整体最优还有多远,但当一次 48 小时的线性代数运行似乎触手可及时,我停止了优化。
线性代数于 2026-08-30 15:45:10 UTC 开始。调度/准备/安全保护耗时 4.4 小时。krylov 在两条宽度为 256 的序列(m = n = 512)上各运行了 2,564,096 次迭代,每次迭代耗时 0.045 至 0.102 秒,具体取决于可用算力。我们每 8,192 次迭代保存一次检查点,并保留每第四个检查点以便并行化 mksol;其余的在验证后删除。krylov 于 2026-09-02 02:38:14 UTC 完成。lingen 在单台配备 4 块 GPU 的 GB200 节点上耗时 3.5 小时;多次尝试被抢占,因此该阶段总共耗时 7 小时。我们在两个集群上运行了 40 个 mksol 区间;每个区间在 2x2 网格(16 块 GPU)上运行,耗时 82 至 87 分钟。收集阶段在 2x2 网格上耗时 9 分 04 秒,写入了 64 个核向量。
为了确认优化后实现的正确性——该实现在运行开始前未在任何更小规模上测试过——我们在 krylov 运行期间端到端地分解了 (11^331 - 1)/10(C344)。作为另一项检查,在 krylov 进行的同时,我们还在每一对 V 检查点上运行了 CADO 的 bwccheck。CADO 常规的 krylov 内检查在运行约 14 小时时出了问题;我们重新运行了该区间并正确地继续了运行。
我最初打算将线性代数配置设为 m = n = 512,并在 4x4 MPI 网格中的 16 个 GB200 节点上运行两个宽度为 256 的序列(每个节点 64 块 GPU)。我原本计划使用专用 clique,但由于更高优先级工作负载的需求而无法实现,因此像之前一样继续使用分散计算。我预计跨 InfiniBand 运行会带来一些性能损失,但该实现并未充分利用 NVLink,因此性能下降并不太严重。与筛法不同,线性代数要求所有工作节点保持在线。因此它经常被致命抢占,我们不得不开发一个相当复杂的放置脚本,以不断将最佳形状适配到可用计算资源上。
下面是一张展示随时间变化的分配和进度的图表:
RSA-260 线性代数 · 2026 年 8 月 30 日–9 月 2 日
集群 1集群 2
Krylov 序列 0..256:节点、MPI 网格和 NVLink 域
悬停或聚焦某个分配,以查看其节点数、网格、域和时间范围。
Krylov 序列 256..512:节点、MPI 网格和 NVLink 域
悬停或聚焦某个分配,以查看其节点数、网格、域和时间范围。
已记录的 Krylov 检查点
序列 0..256序列 256..512
点使用记录的检查点写入时间。最终迭代:两条序列均为 2,564,096。
其他步骤:节点由集群分配
集群 1集群 2
字符与平方根
通常这一步所需的计算量相对微不足道,但在 RSA-260 的运行中,由于遇到了一些麻烦,端到端耗时 12 小时。由于有理乘积的规模(1.76e11 位),sqrt 溢出了 mpz_t 的 limb 计数器并中止。Devin 重建了 sqrt 三次(首先使用 GMP 的 mpn 函数,然后还在 CPU 上使用并行 Karatsuba);最终产出因子的版本使用了 GPU 加速的 NTT 乘法,并在 88 分钟内完成。因子生成于 2026-09-03 01:48:57 UTC。
附录 3:所有已分解的数
† = 时间戳按文件修改时间评估
1. C155,aliquot 序列 171648 中的项
35897832874755680820449985423390320593468589158596246321041362108197306669238431228407629716984730854707528618438239056757108766703839883694565332020649303 = 22021946164808393 (p17) × 262417319699457621175161752791477017206038853130734538645633052531 (p66) × 6211836830541364900526909822006571137609795674665615556271096661561407141 (p73)
FactorDB
阶段开始(UTC)完成(UTC)墙钟时间(秒)GPU 天数输出
多项式选择2026-08-1421:51:502026-08-1421:57:403500.29375,600 个候选;160,578 个完成规模优化;72 个完成根优化;保留 67 个;选定的 MurphyE 为 3.228e-07
筛选2026-08-1421:58:372026-08-1422:04:163390.42原始 164,161,253;唯一 118,353,582;空闲 875,191
过滤2026-08-1422:04:162026-08-1422:26:101,3140.12清除 16,040,431x16,040,251,超出 180;合并 3,664,154 行,545,411,699 个非零元素(密度 148.9)
krylov2026-08-1422:26:44†2026-08-1423:02:59†2,1750.07116,000 次迭代
lingen2026-08-1423:02:59†2026-08-1423:06:57†2380.02生成元长度 56,839
mksol2026-08-1423:06:57†2026-08-1423:22:07†9100.0815 个部分解文件
gather2026-08-1423:22:07†2026-08-1423:22:22150.0064 个内核向量
字符2026-08-1423:22:222026-08-1423:45:561,4140.1328 个非零依赖
sqrt2026-08-1423:45:562026-08-1500:04:581,1420.11每个依赖约 7.88M 对;从第 4 个依赖起的因子:p17 x p66 x p73
总计2026-08-1421:51:502026-08-1500:04:587,9881.2
参数
polyselect:degree 5;P 390000;incr 420;admin 4620;admax 180000;adrange 12600;nq 156250;nrkeep 72;sopteffort 4;ropteffort 25;threads 22;GPU stage 1(polyselect-gps1)
sieve:I 14;sqside 未设置;lpb 31/31;lim 33000000/40000000;mfb 60/60;lambda 1.94/1.95;ncurves 15/15;qmin 5200000;qrange 50000;special q 5200000 至 29050000;rels_wanted 164000000;las.threads 22;wutimeout 900
filter+merge:target_density 148.0;purge.keep 180;required_excess 0.04;dup1、dup2 及 merge 设置未设置
线性代数:krylov:m=64,n=64;一个序列 0-64;thr=2x4,无 MPI,一个 B200 节点;mm_impl=cuda;interleaving=0;nullspace=left;每 4,000 次迭代设置检查点。lingen:thr=2x4;mksol:15 个区间,每个 4,000 次迭代;gather:thr=2x4,一个 B200 节点
sqrt:nchar 50;sqrt.threads 1;CPU sqrt,依赖按顺序执行
多项式
n: 35897832874755680820449985423390320593468589158596246321041362108197306669238431228407629716984730854707528618438239056757108766703839883694565332020649303 skew: 1079717.52 c0: 311415128652871829359026871832488890 c1: 6038213931379356671126098734089 c2: -52755893829252005178014 c3: -3979443941439656428 c4: -636741235170 c5: 963900 Y0: -183822426494573757202526169411 Y1: 799614469853922336864107 # MurphyE (Bf=2.147e+09,Bg=2.147e+09,area=6.979e+14) = 3.228e-07 # f(x) = 963900*x^5-636741235170*x^4-3979443941439656428*x^3-52755893829252005178014*x^2+6038213931379356671126098734089*x+311415128652871829359026871832488890 # g(x) = 799614469853922336864107*x-183822426494573757202526169411
2. C157,aliquot 序列 171648 中的项
9094117661604772474513996307258881217012042571399291054272697101019113898735915143042712474990468911795356432593098151723862961657529605023713028245732813881 = 1373873899497528055698752141917005095037184057 (p46) × 6619324863024763414167515910344780329208808737133855530598807493174878587238190154476062604506187361704747820033 (p112)
FactorDB
阶段开始(UTC)结束(UTC)实际耗时(秒)GPU-天输出
多项式筛选2026-08-14 13:39:582026-08-14 13:46:013630.03490,548 个候选;210,537 个完成尺寸优化;72 个完成根优化;保留 59 个;选中的 MurphyE 为 2.364e-07
筛法2026-08-14 13:46:592026-08-14 14:51:363,877—原始 170,017,806;唯一 120,860,691;空闲 875,427
过滤2026-08-1414:51:362026-08-1415:16:051,4690.14清除 20,378,554x20,378,374,超出 180;合并 4,586,690 行,691,435,635 个非零元素(密度 150.7)
krylov2026-08-1415:16:48†2026-08-1415:36:31†1,1830.11145,000 次迭代
lingen2026-08-1415:36:31†2026-08-1415:42:08†3370.03生成元长度 71,513
mksol2026-08-1415:42:08†2026-08-1416:05:54†1,4260.1315 个部分解文件
gather2026-08-1416:05:54†2026-08-1416:06:10160.0064 个 kernel 向量
characters2026-08-1416:06:102026-08-1416:34:471,7170.1626 个非零依赖
sqrt2026-08-1416:34:472026-08-1416:51:249970.09每个依赖约 10.13M 对;来自第 3 个依赖的因子:p46 x p112
总计2026-08-1413:39:582026-08-1416:51:2411,486~0.70
参数
polyselect:degree 5;P 480000;incr 420;admin 3360;admax 240000;adrange 12600;nq 156250;nrkeep 72;sopteffort 4;ropteffort 25;threads 22;GPU stage 1(polyselect-gps1)
sieve:I 14;sqside 未设置;lpb 31/31;lim 36000000/45000000;mfb 60/61;lambda 1.95/1.98;ncurves 15/15;qmin 7000000;qrange 10000;special q 7000000 至 34790000;rels_wanted 170000000;las.threads 22;wutimeout 未设置
filter+merge:target_density 150.0;purge.keep 180;required_excess 0.04;dup1、dup2 和 merge 设置未设置
线性代数:krylov:m=64,n=64;一个序列 0-64;thr=2x4,无 MPI,一个 B200 节点;mm_impl=cuda;interleaving=0;nullspace=left;每 5,000 次迭代设置检查点。lingen:thr=2x4;mksol:15 个区间,每个 5,000 次迭代;gather:thr=2x4,一个 B200 节点
sqrt:nchar 50;sqrt.threads 1;CPU sqrt,依赖项按顺序
多项式
n: 9094117661604772474513996307258881217012042571399291054272697101019113898735915143042712474990468911795356432593098151723862961657529605023713028245732813881 skew: 4028941.249 c0: -30929648823185396741795692684080726360 c1: 1984799888640434257894945231826 c2: 32825749084108570009393021 c3: 197070756762860649 c4: -1019587382066 c5: 27720 Y0: -4731635427901989535771954621627 Y1: 94637504817809596577371 # MurphyE (Bf=2.147e+09,Bg=2.147e+09,area=9.395e+14) = 2.364e-07 # f(x) = 27720*x^5-1019587382066*x^4+197070756762860649*x^3+32825749084108570009393021*x^2+1984799888640434257894945231826*x-30929648823185396741795692684080726360 # g(x) = 94637504817809596577371*x-4731635427901989535771954621627
3. C173,aliquot 序列 9708 中的项
16822729250245162197210786340073520345302701126309345909868690809883178067955616113069491365481002999485261589865849989569081865831418044294861652263678072140784922937770471 = 3676483960011861552959023833205172827558807236795952573316927262433 (p67) × 4575765713442929453137801139482723088869543413891048184845232501463745899574413667558326370545261994463687 (p106)
FactorDB
阶段开始(UTC)结束(UTC)实际耗时(秒)GPU-天输出
多项式筛选2026-08-1422:01:022026-08-1422:10:395770.051,435,616 个候选;508,830 个经尺寸优化;200 个经根优化;保留 112 个;选定的 MurphyE 为 1.966e-08
筛法2026-08-1422:11:262026-08-1500:33:478,541—raw 163,518,774;unique 121,605,989;free 453,452
过滤2026-08-1500:33:472026-08-1500:51:431,0760.10purge 59,123,902x59,123,742,excess 160;merge 14,262,604 rows,2,427,731,780 nonzeros(density 170.2)
krylov2026-08-1500:54:13†2026-08-1503:05:32†7,8790.73446,464 iterations
lingen2026-08-1503:05:32†2026-08-1503:25:03†1,1710.11生成器长度 222,852
mksol2026-08-1503:25:03†2026-08-1506:56:17†12,6741.2218 个部分解文件
gather2026-08-1506:56:17†2026-08-1506:57:30730.0164 个 kernel 向量
characters2026-08-1506:57:302026-08-1508:18:554,8850.4526 个非零依赖
sqrt2026-08-1508:18:552026-08-1509:18:483,5930.33每个依赖约 29.56M 对;因子来自第 3 个依赖:p67 x p106
总计2026-08-1422:01:022026-08-1509:18:4840,666约 3.0
参数
polyselect:degree 5;P 500000;incr 60;admin 未设置;admax 5000000;adrange 12600(已搜索 ad 12600 至 5000000);nq 3125;nrkeep 200;sopteffort 和 ropteffort 未设置;threads 22;GPU stage 1(polyselect-gps1)
sieve:I 14;sqside 未设置;lpb 30/31;lim 48100000/67600000;mfb 60/90;lambda 未设置;ncurves 15/8;qmin 39200000;qrange 50000;special q 39200000 至 230900000;rels_wanted 未设置;las.threads 22;wutimeout 未设置
filter+merge:target_density 170.0;purge.keep 160;required_excess 未设置;dup1、dup2 和 merge 设置未设置
线性代数:krylov:m=64,n=64;一个序列 0-64;thr=2x4,无 MPI,一个 B200 节点;mm_impl=cuda;nullspace=left;每 1,024 次迭代设置检查点。lingen:thr=2x4;mksol:218 个范围,每个 1,024 次迭代;gather:thr=2x4,一个 B200 节点
sqrt:nchar 50;sqrt.threads 1;CPU sqrt,依赖项按顺序
多项式
n: 16822729250245162197210786340073520345302701126309345909868690809883178067955616113069491365481002999485261589865849989569081865831418044294861652263678072140784922937770471 skew: 7539323.115 c0: 5507904840044862958567101790419123351248 c1: 11075662115103401666716027762474064 c2: 2069703995428638025176582672 c3: -460426871814604581272 c4: -10802939281763 c5: 1414980 Y0: -1640700354148067422687336044906519 Y1: 101559148972858506719 # MurphyE (Bf=2.147e+09,Bg=1.074e+09,area=5.261e+15) = 1.966e-08 # f(x) = 1414980*x^5-10802939281763*x^4-460426871814604581272*x^3+2069703995428638025176582672*x^2+11075662115103401666716027762474064*x+5507904840044862958567101790419123351248 # g(x) = 101559148972858506719*x-1640700354148067422687336044906519
4. C175,Kamada 近全同数字表
5470451651282352577428602590986639243300312582317119394917414850088270252125425873202922100945580574919292893135207214884038940172525025590402945033754680230815866783742314989 = 26545519698456167532008255537577644047411055430442133 (p53) × 206078152299293756900604204800302055899369808326285212990616910104280090482314900582700376408434332258183140974789810506233 (p123)
FactorDB
阶段开始(UTC)结束(UTC)实际耗时(秒)GPU-天输出
polyselect2026-08-1600:32:512026-08-1600:36:472360.32312,940 个候选;114,948 个经尺寸优化;200 个经根优化;保留 67 个;选中 MurphyE 1.573e-08
筛选2026-08-1600:37:332026-08-1601:45:064,0536.5原始 171,492,612;去重后 123,419,402;空闲 453,705
过滤2026-08-1601:45:062026-08-1602:03:401,1140.10清除 64,040,726x64,040,566,超出 160;合并 15,667,159 行,2,669,749,178 个非零元素(密度 170.4)
krylov2026-08-1602:06:26†2026-08-1604:50:17†9,8310.91490,496 次迭代
lingen2026-08-1604:50:17†2026-08-1605:11:34†1,2770.12生成器长度 244,798
mksol2026-08-1605:11:34†2026-08-1606:48:24†5,8100.54240 个部分解文件
gather2026-08-1606:48:24†2026-08-1606:49:43790.0164 个内核向量
字符2026-08-1606:49:432026-08-1608:17:535,2900.4925 个非零依赖
sqrt2026-08-1608:17:532026-08-1608:56:502,3370.22每个依赖约 32.02M 对;因子来自第 2 个依赖:p53 x p123
总计2026-08-1600:32:512026-08-1608:56:5030,2399.2
参数
polyselect:degree 5;P 1200000;incr 60;admin 未设置;admax 1250000;adrange 12600(已搜索 ad 12600 至 1250000);nq 3125;nrkeep 200;threads 22;GPU stage 1(polyselect-gps1)
sieve:I 14;sqside 未设置;lpb 30/31;lim 48100000/67600000;mfb 60/90;ncurves 15/8;qmin 39200000;qrange 50000;special q 39200000 至 281800000;rels_wanted 169766062;las.threads 22;wutimeout 900
filter+merge:target_density 170.0;purge.keep 160;required_excess 未设置;dup1、dup2 及 merge 设置未设置
linear algebra:krylov:m=64,n=64;一个序列 0-64;thr=2x4,无 MPI,一个 B200 节点;mm_impl=cuda;nullspace=left;每 1,024 次迭代设置检查点。lingen:thr=2x4;mksol:240 个范围,每个范围 1,024 次迭代;gather:thr=2x4,一个 B200 节点
sqrt:nchar 50;sqrt.threads 8;CPU sqrt,依赖项按顺序
多项式
n: 5470451651282352577428602590986639243300312582317119394917414850088270252125425873202922100945580574919292893135207214884038940172525025590402945033754680230815866783742314989 skew: 6069782.59 c0: -67733679288880239798108684386132972016894 c1: 866375916432470715190517437912097 c2: 28292826923946390520259902850 c3: 257301599183566358927 c4: -398514986671596 c5: 5775840 Y0: -5635239997340677903984973751823056 Y1: 527256926047937086559 # MurphyE (Bf=2.147e+09,Bg=1.074e+09,area=5.261e+15) = 1.573e-08 # f(x) = 5775840*x^5-398514986671596*x^4+257301599183566358927*x^3+28292826923946390520259902850*x^2+866375916432470715190517437912097*x-67733679288880239798108684386132972016894 # g(x) = 527256926047937086559*x-5635239997340677903984973751823056
5. C190,10^294 * 106 - 1 的余因子
2803449180324637751696097116917035415510283366000770209964656143125021698552328456230457085999381765506227676072887672270352769749338084027093323803706408761157245199388770494277027275902323 = 3031232029603751020573994806456966726044658734818549537566836351886379240410044896085021901 (p91) × 924854697016087706590402161140219834859056267403120024108011627126585093503955645619014094737058623 (p99)
FactorDB
阶段开始(UTC)完成(UTC)实际耗时(秒)GPU-daysoutput
polyselect2026-08-1702:17:162026-08-1702:22:122960.37317,273 个候选;108,110 个完成尺寸优化;200 个完成根优化;保留 35 个;选定的 MurphyE 为 6.238e-09
sieve2026-08-1702:25:102026-08-1703:23:053,47515原始 637,490,768;去重后 558,502,707;空闲 1,693,435
filtering2026-08-1703:23:052026-08-1705:30:387,6530.71清除 95,381,750x95,381,590,超出 160;合并 23,489,464 行,4,020,264,141 个非零元素(密度 171.2)
krylov2026-08-1705:31:52†2026-08-1706:22:34†3,0422.5550,912 次迭代
lingen2026-08-1706:22:34†2026-08-1706:33:29†6550.55生成器长度 367,013
mksol2026-08-1706:33:29†2026-08-1707:12:38†2,3492.0359 个部分解文件
gather2026-08-1707:12:38†2026-08-1707:14:441260.1164 个 kernel 向量
字符2026-08-1707:15:082026-08-1707:16:31830.0127 个非零依赖
sqrt2026-08-1707:16:312026-08-1707:34:561,1050.10每个依赖约 47.69M 对;因子来自第 2 个依赖:p91 x p99
总计2026-08-1702:17:162026-08-17 07:34:5619,06022
参数
polyselect:degree 5;P 1200000;incr 60;admin 0;admax 1250000;adrange 12600;nq 3125;nrkeep 200;threads 22;GPU stage 1(polyselect-gps1)
sieve:I 16;sqside 未设置;lpb 32/33;lim 340600000/162343750;mfb 85/96;ncurves 13/14;qmin 101875000;qrange 35000;special q 101875000 至 256235000;rels_wanted 637470715;las.threads 22;wutimeout 5400
filter+merge:target_density 170.0;purge.keep 160;required_excess 未设置;dup1、dup2 及 merge 设置未设置
线性代数:krylov:bwc.pl :complete;m=128,n=64;一个序列 0-64;mpi=4x2,thr=1x1,8 个 B200 节点;mm_impl=cuda;comm_impl=nccl;nullspace=left;interleaving=0;每 1,024 次迭代设置检查点;krylov_jobs=1。lingen:mpi=1x1,thr=8x8;mksol:359 个区间,每个 1,024 次迭代,mpi=4x2;gather:mpi=4x2,thr=1x1,8 个 B200 节点
sqrt:nchar 50;sqrt.threads 8;CPU sqrt,依赖项按顺序
多项式
n: 2803449180324637751696097116917035415510283366000770209964656143125021698552328456230457085999381765506227676072887672270352769749338084027093323803706408761157245199388770494277027275902323 skew: 21435826.965 c0: -228821101739770306666174403224295131380205560 c1: 100892241193110033273901788248298093162 c2: -5021540351247338802317304532661 c3: -473581781581809751070461 c4: -6741589944834600 c5: 184579200 Y0: -5121528411741386878578269803021899968 Y1: 5880053293624743921847 # MurphyE (Bf=8.590e+09,Bg=4.295e+09,area=2.188e+17) = 6.238e-09 # f(x) = 184579200*x^5-6741589944834600*x^4-473581781581809751070461*x^3-5021540351247338802317304532661*x^2+100892241193110033273901788248298093162*x-228821101739770306666174403224295131380205560 # g(x) = 5880053293624743921847*x-5121528411741386878578269803021899968
6. C190,随机半素数
1915702666254754589302138082953064030136985233543617546393016850305362357282661012267312792578128353496405760484753165337002709486896975439203074537923793503963218174251187680660285478774247 = 41698471563777460657883793234606994934029658617745521302475971276954056473612781956799433416449 (p95) × 45941795811980866357439455815073930815170459048464456198275523982412122564353572361237287120103 (p95)
FactorDB
阶段开始(UTC)结束(UTC)实际耗时(秒)GPU-天输出
多项式筛选2026-08-1822:12:282026-08-1822:17:293010.47317,811 个候选;108,296 个完成尺寸优化;200 个完成根优化;保留 43 个;选中的 MurphyE 为 2.236e-09
筛法2026-08-1822:19:012026-08-1822:56:562,2757.0原始 328,861,343;唯一 274,590,255;空闲 876,098
过滤2026-08-1822:56:562026-08-1823:42:322,7360.25purge 90,508,701x90,508,541,超出 160;合并 24,119,567 行,3,642,554,551 个非零元素(密度 151.0)
krylov2026-08-1823:43:43†2026-08-1900:24:56†2,4732.1573,440 次迭代
lingen2026-08-1900:24:56†2026-08-1900:36:01†6650.55生成器长度 376,867
mksol2026-08-1900:36:01†2026-08-1901:04:14†1,6931.447 个部分解文件
gather2026-08-1901:04:14†2026-08-1901:05:08540.0564 个内核向量
characters2026-08-1901:05:322026-08-1901:06:49770.0127 个非零依赖项
sqrt2026-08-1901:06:492026-08-1901:23:119820.09每个依赖约 45.25M 对;来自第二个依赖的因子:p95 x p95
总计2026-08-1822:12:282026-08-1901:23:1111,44312
参数
polyselect:degree 5;P 1200000;incr 60;admin 0;admax 1250000;adrange 12600;nq 3125;nrkeep 200;threads 22;GPU stage 1(polyselect-gps1)
sieve:I 16;sqside 未设置;lpb 31/32;lim 340600000/162343750;mfb 62/93;ncurves 13/14;qmin 101875000;qrange 45000;special q 101875000 至 255870000;rels_wanted 328805148;las.threads 22;wutimeout 4800
filter+merge:target_density 150.0;purge.keep 160;required_excess 未设置;dup1 nshards 16,outfmt .zst;dup2 concurrent;purge 和 merge gzip 关闭
线性代数:krylov:bwc.pl :complete;m=128,n=64;一个序列 0-64;mpi=4x2,thr=1x1,8 个 B200 节点;mm_impl=cuda;comm_impl=nccl;simd=64;nullspace=left;每 8,192 次迭代设置检查点;krylov_jobs=1。lingen:mpi=1x1,thr=8x8;mksol:47 个区间,每个 8,192 次迭代,mpi=4x2;gather:mpi=4x2,thr=1x1,8 个 B200 节点
sqrt:nchar 50;sqrt.threads 8;CPU sqrt,依赖项按顺序
多项式
n: 1915702666254754589302138082953064030136985233543617546393016850305362357282661012267312792578128353496405760484753165337002709486896975439203074537923793503963218174251187680660285478774247 skew: 69471962.165 c0: -8851052641249209046858885105626001014879976840 c1: 137284591523111942762317014521594293102 c2: 15711746557944118993342136575101 c3: -71479708151186561135983 c4: -2037361818341234 c5: 1484040 Y0: -4812639678831248968259250032120433579 Y1: 34259808457928473708459 # MurphyE (Bf=4.295e+09,Bg=2.147e+09,area=2.188e+17) = 2.236e-09 # f(x) = 1484040*x^5-2037361818341234*x^4-71479708151186561135983*x^3+15711746557944118993342136575101*x^2+137284591523111942762317014521594293102*x-8851052641249209046858885105626001014879976840 # g(x) = 34259808457928473708459*x-4812639678831248968259250032120433579
7. C201,奇完全数难题
930979809278937791072509028975014732977616551736470955539887227350102699241200870603629468473257201294317067671301934475214965923913736810157920028794236692842602151220424895418579020332545717523397343 = 192025012390228559221585986932909773176779292159023659696284779527 (p66) × 4848221581608458738148347619143924968930459331699831038700672259359631705871477758619201973885803963022228656479922682484475622839880809 (p136)
FactorDB
阶段开始(UTC)结束(UTC)墙钟时间(秒)GPU-天输出
多项式选择2026-08-1709:42:442026-08-1709:54:477230.07317,323 个候选;106,047 个完成尺寸优化;200 个完成根优化;保留 51 个;选定的 MurphyE 为 2.581e-09
筛选2026-08-1716:43:152026-08-17 18:21:375,90243原始 637,475,661;去重后 466,787,872;空闲 1,694,062
过滤2026-08-17 18:21:372026-08-17 19:42:584,8810.45清除 180,157,710x180,157,550,超出 160;合并 45,859,426 行,7,803,257,911 个非零元素(密度 170.2)
krylov2026-08-17 19:44:49†2026-08-17 22:35:07†10,218—1,081,344 次迭代
lingen2026-08-17 22:35:07†2026-08-17 22:56:36†1,289—生成器长度 716,552
mksol2026-08-1722:56:36†2026-08-1800:48:23†6,707—88 个部分解文件
gather2026-08-1800:48:23†2026-08-1800:53:22†299—64 个内核向量
字符2026-08-1800:53:302026-08-1800:56:151650.0225 个非零依赖
sqrt2026-08-1800:56:152026-08-1801:33:592,2640.21每个依赖约 90.07M 对;因子来自第 2 个依赖:p66 x p136
总计2026-08-1709:42:442026-08-1801:33:5957,075约 43
参数
polyselect:degree 5;P 1200000;incr 60;admin 0;admax 1250000;adrange 12600;nq 3125;nrkeep 200;threads 22;GPU stage 1(polyselect-gps1)
sieve:I 16;sqside 未设置;lpb 32/33;lim 130000000/100000000;mfb 85/96;ncurves 13/13;qmin 309440000;qrange 40000;special q 309440000 至 812920000;已导入 q 50000000 至 309440000 的关系;rels_wanted 637470715;las.threads 22;wutimeout 5400
filter+merge:target_density 170.0;purge.keep 160;required_excess 未设置;dup1 nshards 16,outfmt .zst;dup2 并发;purge 和 merge gzip 关闭
线性代数:krylov:bwc.pl :complete;m=128,n=64;一个序列 0-64;mpi=4x3,thr=1x1,12 个 B200 节点;mm_impl=cuda;comm_impl=nccl;nullspace=left;每 8,192 次迭代设置检查点;krylov_jobs=1。lingen:mpi=1x1,thr=8x8;mksol:8,192 次迭代的范围;gather:mpi=4x4,16 个 GB200 节点
sqrt:nchar 50;sqrt.threads 8;CPU sqrt,依赖项按顺序
多项式
n: 930979809278937791072509028975014732977616551736470955539887227350102699241200870603629468473257201294317067671301934475214965923913736810157920028794236692842602151220424895418579020332545717523397343 skew: 141639179.53 c0: 4920071598665344600849898275027200375673687141584 c1: -17473086803075379177941148842054370989064 c2: -1895700168885924627964679424329691 c3: -5093363513389771937188279 c4: 65012146697554240 c5: 4586160 Y0: -959202297370196215605054183736005106510 Y1: 22769097491370535613 # MurphyE (Bf=8.590e+09,Bg=4.295e+09,area=1.074e+17) = 2.581e-09 # f(x) = 4586160*x^5+65012146697554240*x^4-5093363513389771937188279*x^3-1895700168885924627964679424329691*x^2-17473086803075379177941148842054370989064*x+4920071598665344600849898275027200375673687141584 # g(x) = 22769097491370535613*x-959202297370196215605054183736005106510
8. RSA-260
22112825529529666435281085255026230927612089502470015394413748319128822941402001986512729726569746599085900330031400051170742204560859276357953757185954298838958709229238491006703034124620545784566413664540684214361293017694020846391065875914794251435144458199 = 4397328654844826923795068102505872571721883526553349659561256924505973939597593482272505698004801207988043088656411102133523080581 (p130) × 5028695206842569864686141618253083416610081090075366674776775706538324961364412200138116378509733307971876652984898985905923678379 (p130)
FactorDB
阶段开始(UTC)完成(UTC)实际耗时(秒)GPU-天输出
多项式选择2026-08-1812:14:192026-08-2106:08:18237,239643见正文;选中 MurphyE 6.633e-10
筛法2026-08-2210:01:122026-08-3007:26:15681,9033,813原始输入过滤 13,849,985,589;唯一 8,298,749,059;空闲 3,991,449
过滤2026-08-3007:26:152026-08-3013:23:0521,4100清除 2,238,133,184x2,238,133,024,超出 160;合并 656,182,601x656,182,189,98,431,741,898 个非零元素(密度 150.0)
预处理2026-08-3015:45:102026-08-3020:09:0715,8377.9调度、准备与加固
krylov2026-08-30 20:11:372026-09-02 02:38:14195,997405每个序列 2,564,096 次迭代
lingen2026-09-02 02:40:302026-09-02 09:39:1025,1201.1生成器长度 1,281,607
mksol2026-09-02 09:48:552026-09-02 12:25:169,3815340 个部分解文件
gather2026-09-02 12:30:122026-09-02 12:39:165440.1164 个内核向量
字符2026-09-02 13:43:022026-09-02 14:34:413,099—26 个非零依赖
sqrt2026-09-02 14:34:412026-09-03 01:48:5740,456—每个依赖 1,119,082,750 对;来自依赖 12 的第一个因子:p130 x p130
总计2026-08-1812:14:192026-09-0301:48:571,344,878~4,923
参数
polyselect:GPU 第一阶段(polyselect-gps1)在 B200、GB200 和 GB300 上运行,外加 CADO polyselect;degree 6;P 2e7 和 3e7;incr 110880 和 465585120;ad 0 到 1.04e16 以上
sieve:A 33;sqside 1;lpb 36/37;lim 2147483648/2147483648;mfb 72/111;ncurves 50/35;fill_bands 2;host_mr 1;qmin 1000000000;qrange 60000;special q 1000000000 到 39091320000;rels_wanted 初始为 13460000000,之后为 13850000000;las.threads 22;siqs.threads 2;wutimeout 7200
filter+merge:target_density 150.0;purge.keep 160;required_excess 未设置;dup1 nshards 16,nslices_log 4,outfmt .zst;dup2 并发;purge 和 merge 关闭 gzip
linear algebra:krylov:m=512,n=512;两条宽度为 256 的序列;simd=256;nullspace=left;mm_impl=cuda;comm_impl=nccl;每 8,192 次迭代设置检查点;为 mksol 每 32,768 次迭代保留检查点;GB300 和 GB200 节点的网格为 4x2、4x4、8x4 和 16x4。lingen:一个 GB200 节点;mksol:40 个区间,每个 32,768 次迭代,mpi=2x2,GB300 和 GB200 节点;gather:mpi=2x2,4 个 GB200 节点
sqrt:在单个 B200 节点上 nchar 50;-ab 在 CPU 上通过;GPU sqrt,每个节点一个依赖,依赖数为 8 到 14
多项式
n: 22112825529529666435281085255026230927612089502470015394413748319128822941402001986512729726569746599085900330031400051170742204560859276357953757185954298838958709229238491006703034124620545784566413664540684214361293017694020846391065875914794251435144458199 skew: 3226459.164 c0: 4438326758963496161172848385157253702543453653246272 c1: -2760724998540198898516614911500562788411825980 c2: -3288611114230578563553198296458642435160 c3: 950383683194810225243935581823335 c4: 541831494549130032021283293 c5: -32669802676467106300 c6: -1863645537600 Y0: -221673351566952308029695237213052836736183 Y1: 5766034074997040571677 # MurphyE (Bf=2.749e+11,Bg=1.374e+11,area=8.590e+18) = 6.633e-10 # f(x) = -1863645537600*x^6-32669802676467106300*x^5+541831494549130032021283293*x^4+950383683194810225243935581823335*x^3-3288611114230578563553198296458642435160*x^2-2760724998540198898516614911500562788411825980*x+4438326758963496161172848385157253702543453653246272 # g(x) = 5766034074997040571677*x-221673351566952308029695237213052836736183
9. C311 = (179^139 - 1)/178
78732003642300039104997556853283781324722722514871172820596350395008499128466382307395809435579611623474564094986667529892960864716597384448096503729214198851662899485730276355438419349226871332426916221394784977161223247509417343613224455688485860012856805177174377754441936853855717590652007641081003553555981 = 113099312568209673935042334303729415651026293476381594877312955562280961045355175671136840242009011468329 (p105) × 696131584308411518623832257550002804001621961634551342461843289253649103892820497050633605105814786732064892829393341608140504002525639124360548840359891492626081616809277191319539440045658855879311157144389 (p207)
FactorDB
阶段开始(UTC)结束(UTC)实际耗时(秒)GPU 天数输出
筛法2026-08-1806:52:442026-08-1810:39:4213,61863原始 1,237,126,812;唯一 1,047,171,593;空闲 32,797,398
过滤2026-08-1810:39:422026-08-1813:41:0310,8811.0purge 241,446,032x241,445,872,超出 160;merge 65,393,394x65,393,182,11,172,358,980 个非零元素(密度 170.8)
krylov2026-08-1813:42:47†2026-08-1817:00:47†11,880191,540,096 次迭代
lingen2026-08-1817:00:47†2026-08-1817:32:57†1,9303.0生成器长度 1,021,770
mksol2026-08-1817:32:57†2026-08-1820:24:26†10,28916125 个部分解文件
gather2026-08-1820:24:26†2026-08-1820:26:311250.2064 个内核向量
字符2026-08-1820:26:352026-08-1820:30:322370.0230 个非零依赖
sqrt2026-08-1820:30:322026-08-1821:11:462,4740.23每个依赖约 1.2072 亿对;来自第二个依赖的因子:p105 x p207
总计2026-08-1806:52:442026-08-1821:11:4651,542102
参数
多项式:f = 179 x^6 - 1,g = x - m,m = 179^23,偏度 0.4213,MurphyE 8.836e-16(179^139 - 1 = 178 N,139 = 6*23 + 1)
备选方案:无记录
筛法:A 32;sqside 0;lpb 33/34;lim 500000000/800000000;mfb 66/99;ncurves 21/26;qmin 250000000;qrange 100000;special q 250000000 至 1184000000;rels_wanted 1237056574;las.threads 22;wutimeout 6000
过滤+合并:target_density 170.0;purge.keep 160;required_excess 未设置;dup1 nshards 16,outfmt .zst;dup2 concurrent;purge 和 merge gzip 关闭
线性代数:krylov:bwc.pl :complete;m=128,n=64;一个序列 0-64;mpi=4x4,thr=1x1,16 个 B200 节点;mm_impl=cuda;comm_impl=nccl;simd=64;nullspace=left;每 8,192 次迭代设置检查点;krylov_jobs=1。lingen:mpi=1x1,thr=8x8;mksol:125 个区间,每个 8,192 次迭代,mpi=4x4;gather:mpi=4x4,thr=1x1,16 个 B200 节点
sqrt:nchar 50;sqrt.threads 8;CPU sqrt,依赖项按顺序
10. C344 = (11^331 - 1)/10
50231805376049596631820685866210796229177935753938552911186809956414816600066561080962695239770426026723364698292328197470387911075676202539623423774798834486148386204131623950780297626046160114576438460656977450890504071673236180892236065865431442427746499804001930166673809250928496230908288781474418503703449380725550307006218226204967040981 = 4430846974881282458576305306275299267803558513190420498353196875372229299069071572187853350349351721816194984586423957772963949687017317 (p136) × 11336840486890314794032557608959863028316193728266529081837586701486166437930282744836829943727770582091213875616984397275548049092194046001698425309465943848550352458828194439770494240269696008098233721116593 (p209)
FactorDB
阶段开始(UTC)结束(UTC)挂钟时间(秒)GPU-天输出
筛法2026-08-3110:44:542026-09-0100:54:4850,994148原始 1,632,935,487;唯一 1,215,709,840;空闲 63,572,584
过滤2026-09-0100:54:482026-09-0101:32:552,2870.21清除 691,598,231x691,598,071,超出 160;合并 183,979,604x183,979,412,31,557,886,647 个非零元素(密度 171.5)
预处理2026-09-0102:54:222026-09-0104:04:054,1830.80调度、预处理与安全保护
krylov2026-09-0104:12:092026-09-0120:32:5358,84416每个序列 718,848 次迭代
lingen2026-09-0120:45:092026-09-0121:39:393,2700.15生成器长度 359,296
mksol2026-09-0121:46:452026-09-0122:08:161,2911.78 个部分解文件
gather2026-09-0122:12:432026-09-0122:15:091460.0464 个内核向量
字符2026-09-0122:17:352026-09-0122:28:05630029 个非零依赖项
sqrt2026-09-0122:28:052026-09-0123:40:444,3590每个依赖约 345.8M 对;首个因子来自依赖 20:p136 x p209
总计2026-08-3110:44:542026-09-0123:40:44132,950167
参数
多项式:f = 11 x^6 - 1,g = x - m,m = 11^55,偏度 0.6706,MurphyE 7.317e-17(331 = 6*55 + 1)
备选方案:七次多项式 f = x^7 - 11^5,m = 11^48,以及六次多项式 f = x^6 - 11^5,m = 11^56,因范数估计被否决,而非通过试筛
筛法:A 32;sqside 0;lpb 34/34;lim 1073741824/1073741824;mfb 68/102;ncurves 25/35;qmin 300000000;qrange 100000;special q 300000000 至 3532000000;rels_wanted 1632914677;las.threads 22;wutimeout 6000
filter+merge:target_density 170.0;purge.keep 160;required_excess 未设置;dup1 nshards 16,nslices_log 4,outfmt .zst;dup2 concurrent;purge 和 merge gzip 关闭
线性代数:krylov:m=512,n=512;simd=256;两条宽度为 256 的序列;mpi=2x2,每条序列 4 个 GB200 节点;mm_impl=cuda;comm_impl=nccl;nullspace=left;每 1,024 次迭代设置检查点;每 8,192 次迭代保留检查点用于 mksol。lingen:一个 GB200 节点;mksol:8 个作业,mpi=2x2,范围按 8,192 次迭代的倍数切分;gather:一个 GB200 节点
sqrt:nchar 50,176 个线程,以及 -ab 在 CPU 头上通过;sqrt.threads 8;CPU sqrt,每个节点一个依赖
11. C337,2^1207 - 1 的余因子
7121450524338129034228935888406290342440924878292924475154549706165967683018106989365212535726088820424187252154592086367126609115652316059905387197810171357101484623269226530219357641629634637632902818929376633641165995708421341209033069328278856607776384578328080846029713646218471064646270016968312691054210973840071649700163924918271 = 2135456634416723262926946022637259241391053741075352614983924508336321947951381676798676767 (p91) × 3334860755101812561067390658542870185942902307642912877405776237023857839224225092829417050945007343491020348357930255766175507591130368636694557769027206776756787240691456180112351039576773125118453259495249395384279121506465565518011175872090913 (p247)
FactorDB
阶段开始(UTC)结束(UTC)挂钟时间(秒)GPU-天输出
筛法2026-09-0103:25:022026-09-0217:36:23137,481602原始 4,000,022,905;唯一 2,809,594,239;空闲 123,347,484
过滤2026-09-02 17:36:232026-09-02 20:33:2310,6200清除 875,233,659x875,233,499,超出 160;合并 262,840,014x262,839,822,39,761,486,522 个非零元素(密度 151.3)
预处理2026-09-02 21:16:542026-09-02 21:34:131,0390.73调度、预处理与安全
krylov2026-09-02 21:36:372026-09-03 15:33:0064,58350每个序列 1,027,072 次迭代
lingen2026-09-03 15:36:322026-09-03 16:56:574,8250.23生成器长度 513,361
mksol2026-09-03 19:20:052026-09-03 23:01:4213,2975.232 个部分解文件
gather2026-09-03 23:05:382026-09-03 23:09:272290.0564 个内核向量
字符2026-09-0323:23:222026-09-0323:36:26784029 个非零依赖
sqrt2026-09-0323:36:262026-09-0400:16:082,3820.70每个依赖约 437.6M 对;第一个因子来自依赖 1:p91 x p247
总计2026-09-0103:25:022026-09-0400:16:08247,866658
参数
多项式:f = 2 x^6 - 1,g = x - m,m = 2^201,偏度 0.891,MurphyE 1.173e-17(1207 = 6*201 + 1)
经试验筛选被拒绝,相对于 lpb 37/37 的六次多项式,每 5,000-q 窗口的关系数,q = 2e9 / 8e9 / 32e9 / 128e9:八次多项式 x^8 - 2,m = 2^151:-55% / -57% / -66% / -71%;七次多项式 8 x^7 - 1,m = 2^172:-4% / -17% / -22% / -32%;五次多项式 4 x^5 - 1,m = 2^241:-62% / -54% / -48% / -39%
筛选:A 33;sqside 0;lpb 35/35;lim 2147483648/2147483648;mfb 105/70;ncurves 35/50;cofac_gpu 1;ecm_curves 24;qmin 1000000000;qrange 60000;special q 1000000000 至 7206840000;rels_wanted 4000000000;las.threads 22;wutimeout 7200
筛选+合并:target_density 150.0;purge.keep 160;required_excess 未设置;dup1 nshards 16,nslices_log 4,outfmt .zst;dup2 并发;purge 和 merge 关闭 gzip
线性代数:krylov:m=512,n=512;simd=128;四条宽度为 128 的序列;mpi=4x2,每条序列 8 个 GB200 节点;mm_impl=cuda;comm_impl=nccl;nullspace=left;每 1,024 次迭代设置检查点;每 8,192 次迭代保留检查点供 mksol 使用。lingen:一个 GB200 节点;mksol:32 个区间,每个 16,384 次迭代,mpi=2x2;gather:mpi=2x2,thr=1x1,4 个 GB200 节点
sqrt:nchar 50 以及 -ab 在 CPU 头部通过;GPU sqrt(-side0 -side1 -gcd),每个节点一个依赖,8 个作业
12. C385,2^1277 - 1 —— SNFS 的新纪录
2601983048666099770481310081841021384653815561816676201329778087600902014918340074503059860433081046210605403488570251947845891562080866227034976651419330190731032377347305086443295837415395887618239855136922452802923419286887119716740625346109565072933087221327790207134604146257063901166556207972729700461767055550785130256674608872183239507219512717434046725178680177638925792182271 = 1724716499241899864602425389894492014760761058306262762892810886087012338823944627660237293943404138481321 (p106) × 174090709548829862673444876509956283267433847880436775401923086006338309086502338849028139248274886760517707263111447 (p117) × 8665849643335295674769105294571409283548491149467547745358388419546365219034102218289049713968532434665290528265538637566847289906584634645620272395224026405923633 (p163)
FactorDB
阶段开始(UTC)完成(UTC)挂钟时间(秒)GPU-天输出
筛选2026-09-03 04:42:112026-09-06 12:55:01288,7702,063原始 5,900,009,161;唯一 3,661,079,985;空闲 123,347,484
过滤2026-09-06 12:55:012026-09-06 14:38:046,1830清除 1,988,203,513x1,988,203,353,超出 160;合并 579,167,442x579,167,250(+32 个稠密列),87,097,397,544 个非零元素(密度 150.4)
准备2026-09-06 16:11:052026-09-0616:32:181,2730.73分发、准备与加固
krylov2026-09-0616:35:062026-09-0802:36:22122,476324每个序列 2,263,040 次迭代
lingen2026-09-0802:51:122026-09-0806:09:5911,9270.56生成器长度 1,131,188
mksol2026-09-0806:12:122026-09-0809:02:0810,19633139 个部分解文件
gather2026-09-0809:06:222026-09-0809:20:378550.3464 个内核向量
字符2026-09-0809:23:152026-09-0809:51:151,680030 个非零依赖
sqrt2026-09-0809:51:152026-09-0811:08:574,6621.4总计 29,822,827,954 对(每个依赖项 994,055,572 至 994,127,264 对);来自依赖项 5 的首个因子:p106 x p117 x p163
总计2026-09-0304:42:112026-09-0811:08:57455,2062,423
参数
多项式:f = x^6 - 2,g = x - m,m = 2^213,skew 1.1225,MurphyE 1.6164e-18(1277 = 6*213 - 1)
经试验筛法否决,相对于 lpb 37/37 的六次多项式,每 5,000-q 窗口的关系数,q = 2e9 / 8e9 / 32e9 / 128e9:八次多项式 x^8 - 8,m = 2^160:-44% / -47% / -55% / -66%;七次多项式 8 x^7 - 1,m = 2^182:+3% / -8% / -14% / -24%;五次多项式 4 x^5 - 1,m = 2^255:-73% / -70% / -63% / -54%
筛法:A 33;sqside 0;lpb 36/35;lim 2147483648/2147483648;mfb 108/70;ncurves 35/50;cofac_gpu 1;ecm_curves 24;qmin 1000000000;qrange 60000;special q 1000000000 至 23627100000;rels_wanted 5900000000;las.threads 22;wutimeout 7200
过滤+合并:target_density 150.0;purge.keep 160;required_excess 0.0;dup1 nshards 16,nslices_log 4,outfmt .zst;dup2 concurrent;merge skip 32;purge 和 merge 关闭 gzip;176 线程
线性代数:krylov:m=512,n=512;simd=128;四条宽度为 128 的序列;GB200 和 GB300 节点的网格从 7x1 到 16x4;mm_impl=cuda;comm_impl=nccl;nullspace=left;每 1,024 次迭代设置检查点;mksol 每 8,192 次迭代保留检查点。lingen:mpi=1x1,一个 GB300 节点;dispatch:mpi=4x2,8 个 GB300 节点;mksol:solutions=0-64,mpi=4x2,每个作业 8 个 GB300 节点;gather:mpi=4x2,8 个 GB300 节点
sqrt:nchar 50,176 个线程,CPU 头部上 -ab 通过(-t 8);GPU sqrt(-side0 -side1 -gcd),每个节点一个依赖,依赖 0 到 7 共 8 个作业
原文
Original Title
RSA 260 的因式分解
Source
Hacker News 热门(buzzing.cc 中文翻译)
Site
cognition.com
Author
samyok
Published
2026-09-10 18:50