观点
为什么算法受阻而模拟计算机是未来
理群

2017-07-21 | 观点

德国埃森经济管理学院(FOM)商业信息学教授Bernd Ulmann 7月6日在德国德古意特出版社(De Gruyter)网站上发表了一篇题为《WHY ALGORITHMS SUCK AND ANALOG COMPUTERS ARE THE FUTURE》的博客文章,指出:在被存储程序的数字计算机取代以前,模拟计算是20世纪70年代高性能计算的主要形式,这一事实已经大部分人遗忘,现在改变这种状况的时机已经成熟。文章的主要内容如下:

我知道这篇文章的标题可能听起来有点挑衅,但算法计算不能很好应对涉及需要大量处理能力的问题却是真实的。

看看最新的Top500高性能计算机列表。目前,最强大的超级计算机是中国无锡国家超级计算中心的“神威太湖一号”。这个巨兽提供了惊人的93 petaflops(一个petaflop等于每秒钟进行1千万亿次的浮点运算),这是非常不可思议的。

(一)超级计算机和能源消耗

然而,这样巨大的处理能力是成本昂贵的。在这种情况下,它需要10649600个处理单元,即所谓的核心,消耗15.371兆瓦的电力——个能够为平均能源消耗相当于旧金山的大约16.000个居民提供小城市的电力。

如果我们将注意力从最强大的超级计算机转移到专注于最节能的计算机上,那么我们将在Green500列表中找到东京理工学院的TSUBAME3.0系统,它提供14.11gigaflop/瓦特,其36288内核所需的总功耗仅为142千瓦。在能源效率方面,这比太湖一号好了约2倍。但是,142千瓦仍然是很大的电力。

但是,真的没有不需要这么多的能量来运行的超级计算机吗?实际上是有的:人脑就是一个很好的例子:它的处理能力约为38 petaflops,大约是太湖一号的五分之二。但它运行只需要约20瓦的能量。瓦,不是兆瓦!然而,它执行的任务至少在现在还没有机器能够执行。

是什么原因造成这种差异?首先,大脑是一台专门的电脑,可以这么说,而像太湖一号和TSUBAME3.0这样的系统是更通用的机器,能够解决各种各样的问题。

像这样的机器通过一种算法(即所谓的程序)进行编程,这基本上一个指令序列,每个处理器通过从存储器子系统读取它们,解码指令,获取操作数,执行所请求的操作,存储结果。

(二)经济的超级计算机:人脑

所有这些存储器请求都需要大量的能量、并且会减缓计算速度。拥有成千上万的单独核心的还需要复杂的互连结构来在核心之间根据需要交换数据,这也增加了执行计算所需的时间和功率。

另一方面,大脑的工作方式完全不一样。其运算过程并不涉及程序,只是简单地通过其活跃组件(主要是神经元)之间的互连“编程”。

大脑不需要从任何存储器中获取指令或数据,解码指令等。神经元从其他神经元获取输入数据,对该数据进行操作,并生成馈送到接收神经元的输出数据。好的 - 这有点过于简单,但是足以让我们提出以下问题:

1.没有与此计算架构相当的电子等价物吗?

2.我们真的需要通用超级计算机吗?

3.一个专门的系统可以更好地解决一些问题吗?

第一个问题的答案是:有的,有与此架构相当的电子等价物。它被称为模拟计算机。

(三)模拟计算机

“模拟”源自希腊语“analogon”,意思是“模型”。一个模拟计算机的确切定义是:一个特定问题的模型,可以通过模拟来解决这类问题。

最简单的模拟方法是直接类比法,即依据与被调查问题相同的基本原理进行模拟。用于产生最小表面的肥皂气泡就是一个典型的例子。

更一般可用的模拟方法是间接类比,需要在问题和计算域之间建立映射。虽然这种模拟是基于模拟电路的,如累加器、积分器和乘法器等,但是它们也可以使用数字组件实现,在这种情况下,它们被称为数字差分分析仪。

两种方法共享一个特征:没有存储的程序来控制这种计算机的操作。相反,您可以通过更改其许多计算元素之间的互连来进行编程,这一点与大脑类似。

(四)从模拟到混合计算机

考虑我自己的模拟计算机原型,这是一个典型的模拟电子计算机的例子。 交错的连接导线可以描述为机器的程序。 在这种情况下,它被设置为模拟所谓的Joukowsky翼型周围的气流 - 不是一件简单的任务。

所有这些机器的计算元件完全并行,没有中央或分布式内存访问和等待。您可以通过插拔连线来对计算机进行编程。这对于单个研究人员和教学目的来说可能是非常有用的,但是对于真正的通用模拟计算机来说,必须摆脱这种手动修补程序。

幸运的是,使用今天的电子技术,可以构建不仅包含基本计算元件的集成电路,而且可以从附加的数字计算机编程交叉开关,从而完全消除“老鼠窝”式的连续。

对于某些类问题,这种模拟计算机可以达到极高的计算能力。比如,它们无可比拟地解决基于微分方程和系统的问题。

例如,在2005年的论文中,Glenn E.R. Cowan描述了一种超大规模集成模拟计算机(VLSI),即芯片上的模拟计算机。该芯片为特定类别的微分方程提供了高达21gigaflops/瓦的计算能力,能源效率比现在Green500列表中最好的计算机还要好。

(五)模拟未来的计算

20世纪70年代以来,模拟计算是高性能计算的主要形式,自从今天的存储程序数字计算机接管以来,已经大量被遗忘。但是改变这个时机已经成熟了。

明天的应用需求在更低的能耗水平下的更强大的计算能力。但数字电脑根本无法马上简单地提供这这种能力,因此,现在是开始开发现代模拟协处理器的时候,这些模拟协处理器能够分担解决复杂微分方程的任务。结果就是所谓的混合电脑。

这些机器可以在同等功耗下提供比目前超级计算机更高的计算能力,或者用于只有微量能量可用的领域,如医药和其他嵌入式系统中的植入式控制器。

(六)未来的挑战

很明显,模拟计算在未来有很大发展潜力。一个需要要解决的主要问题是,模拟计算机的编程与当今大学中教授的完全不同。

在模拟计算机中,没有算法,没有循环,他们知道的都不存在。 相反,存在的是几个基本而又强大的计算单元,这些元素必须巧妙地相互关联以便模拟一些数学描述的问题。

与教育挑战相比,强大的互连或高度集成但精确的计算元素之类的技术挑战似乎很小。最后,改变人们对编程思考的方式将是模拟计算未来的最大障碍。

收藏
阅读数:
`

相关推荐

没有相关内容

作者关注

观点 2017-04-11

美元计价加密货币(Cryptocurrency)的失败与成功

理群 摘自:美国卡托研究所

观点 2017-04-07

人工智能时代的工作和社会政策

理群 摘自:美国布鲁金斯学会

观点 2016-10-12

2030年后的制空作战

理群 摘自:英国航空学会

同源信息

`