-1

Just because of curiosity...

Is there a platform independent algorithm that produces a comparable value; so that I can

implement the algorith on different machines that were introduced to the market bi-yearly

and see how does it fit with Moore's Law by checking the returned values of the algorithm

in those machines?

4

2 回答 2

3

英特尔和 AMD 放置在 CPU 上的大多数晶体管都是为了以一种或另一种方式加速它的,因此可能代表“那里有多少晶体管?” 是,“它有多快?”。通常,当人们谈论与 CPU 相关的摩尔定律时,他们谈论的是性能,尽管摩尔不是这么说的。

但是,众所周知,对 CPU 进行基准测试是任意的。您对各种速度测试的权重是多少?假设明年,英特尔发明了 20 条新的 SIMD 指令,并在他们的芯片中添加了相应的硅来实现它们。除非您的代码使用这些指令,否则它不会注意到它们的存在,因此它们不会影响您的结果,您也不会报告性能/晶体管指数的增加。由于它们是在您编写代码后发明的,因此您无法显式执行它们,因此使用它们的唯一方法是使用最新的编译器,并带有针对新版本 CPU 的选项,在您的基准测试中找到一些它认为将从新指令中受益的代码。不是很可靠,如果可以的话,您根本无法检测到新的晶体管'

在过去的几年里,在简单的基准测试中,CPU 单核的性能无论如何都遇到了一些障碍。CPU 制造商正在添加内核,并添加特殊用途的指令和芯片,因此如果程序知道如何使用它们,他们就有更多的资源可以利用,但枯燥的旧算术并没有变得更快。很难知道 CPU 制造商在 5 年或 10 年后会出于什么特殊目的添加晶体管,但如果你能做到这一点,那么你现在可以编写基准测试,告诉你他们什么时候完成的。

我对 GPU 了解不多,但如果你能以某种方式检测机器上 GPU 内核的数量(计算并行着色器等),那实际上可能是晶体管原始数量的最佳代表。我猜每个内核中的晶体管数量也会随着时间的推移而增加,但是现代显卡上的内核数量正在飞速增长,所以实际上这可能是与处理相关的新晶体管的大部分。5 年或 10 年后是否还会如此,谁知道呢。

另一个重要的晶体管数量是 RAM - 大概对于给定类型的 RAM,晶体管的数量几乎与容量成正比,并且至少可以使用特定于操作系统的功能轻松测量。

如果您将 SSD 插入机器,我敢打赌您也会增加晶体管数量。不过,这是你感兴趣的事情吗?真正的摩尔定律是关于单个 IC,而不是给定价格点的米色(好吧,现在是白色或银色)盒子的全部内容。

于 2011-08-31T10:15:10.460 回答
-1

那么算法可以非常简单,比如计算触发器(每秒浮点运算)。只需获得系统时间,让 1kk 浮点运算再次获得时间并获得差异(或使用用于评估超级计算机的 LINPACK 基准测试)。然而,以独立于平台的方式实现这一点会很棘手。

于 2011-08-31T10:00:47.773 回答