首页 时政热点 科技头条 智能AI 安全攻防 数码硬件 开发者生态 汽车 游戏 社会热点 开源推荐 医疗健康 归档 标签 关于

AMD的随机数生成器不能生成0?

2026-09-22 1 阅读 约2分钟阅读 BruceEel
分享:
字号:
除了作为一名汇编语言程序员之外,我还是一名电子工程师/技术员(可能具有“类似的经验水平”,甚至更多),因此,凭借这两个领域的知识,我可以想到数百种不同的方法来构建能够生成随机数的高质量的东西(例如,基于白噪声发生器,这是半导体的热噪声,尝试用超级计算机来预测这一点)。因此,我不认为这对于 x86-64 处理器上的工程精英(例如 Intel 和 AMD 团队中的工程精英)来说是迄今为止最困难的部分。此外,我必须说,我还没有收到 AMD 关于此案的任何进一步反馈。但他们已经在内部升级了我的案件,所以我仍然在这里等待他们的准确更新,在这里分享。而且,从发帖前 9 天开始,直到现在,我能访问的 2 个 AMD 中没有出现一个 0!通过我对应用程序进行的新更新来测试这一点,现在还可以对随机数生成器进行基准测试,并且现在还可以在没有“rdseed”指令的处理器上运行测试。至于基准测试,不同处理器之间的结果差异令人惊讶(例如:2012 年的 Core i5 每秒生成 1260 万个数字,而 2017 年的 Core i7 7700 每秒“仅”生成 750 k 个数字,而我的 AMD Ryzen 7 每秒大约 260 万个数字,AMD 生成器对时钟变化完全惰性,而 2012 年的 Core i5 100% 依赖于时钟,正如我在所做的测试中所看到的那样)。这让我意识到随机数生成器电路一定有很大的差异,甚至可能是完全不同的版本/修订版,即使对于同一制造商的型号也是如此。到目前为止,我还没有找到关于他们的 RNG 单位如何运作的合适信息。
这篇文章对您有帮助吗?

订阅66必读

每日精选科技资讯,直达你的邮箱